Thesis und das neue Antivirus-Plugin für WordPress

27. Februar 2009

Alles im grünen Bereich – das Antivirus-Plugin passt auf

Alles im grünen Bereich – das Antivirus-Plugin passt auf

Gestern hat Sergej Müller das erste Antivirus-Plugin für WordPress herausgebracht, das ich natürlich sofort getestet habe. Besonders gespannt war ich, ob das Plugin auch mit dem Thesis-Theme funktioniert, denn da ist die Templatestruktur etwas anders als bei ›normalen‹ Themes. Wie sieht also das Zusammenspiel des Plugins mit dem Theme aus?

Das Funktionsprinzip des Antivirus-Plugins

Aber zunächst mal zum AV-Plugin: Was macht es wirklich? Das Plugin durchsucht die Dateien des aktiven Templates auf verdächtige Codezeilen. Verdächtig sind dabei Codeblöcke, die für die Kodierung, Auswertung und Ausführung von Zeichenketten als PHP-Code zuständig sind, Dateioperationen ausführen oder eine Internetverbindung eröffnen können, also eval, base64_encode, base64_decode, create_function, exec, shell_exec, system, passthru, ob_get_contents, file, curl_init, readfile, fopen, fsockopen, pfsockopen, fclose, fread, file_put_contents und get_option.

Zu den klassischen Templatedateien gehören index.php, header.php, footer.php, single.php, comments.php und archives.php. Kommt in einer dieser Template-Dateien oder der functions.php des Themes einer der o.g. PHP-Befehle vor, schlägt das Antivirus-Plugin Alarm.

Und wenn das Theme Thesis heißt?

Wenn das Theme Thesis ist, sieht die Sache genau so aus wie im Bild zu sehen. Das Plugin analysiert die Template-Dateien und zeigt mit grüner Farbe an, dass sie in Ordnung sind, d.h. keiner der PHP-Befehle darin vorkommt.

Das ist aber auch kein Wunder, denn die meisten Template-Dateien von Thesis sind für sich genommen leer und funktionslos. Man könnte sagen, sie dienen nur als Symlinks. Ihren eigentlichen Inhalt beziehen sie per PHP-Include aus den Funktionen und Klassen, die im Verzeichnis lib des Thesis-Ordners untergebracht sind. Das Bibliotheksverzeichnis lib ist sozusagen der Maschinenraum von Thesis. Alle Basisfunktionen werden hier zur Verfügung gestellt.

Und was folgt nun daraus? Wenn ein Boehzer Bube Malicious Code in die Templatedateien einschleust, findet ihn das Plugin früher oder später. Wenn es aber jemandem gelingt, bis in dem Maschinenraum vorzudringen, hat auch das Plugin keine Chance. Nur. Schreibt jemand extra einen WordPress-Wurm für Thesis? Wohl eher nicht. Der Aufwand wäre zu hoch und der mögliche Gewinn zu gering. Das lohnt sich einfach nicht.

Thesis rockt! Get it now! · Live Demo