Kommen wir mal wieder für einen kurzen Moment weg von politischen Machtspielchen.
Worüber ich derzeit mal wieder kotzen könnte ist eine Unsitte bei Wordpress Themes: Die Footer kodierung!
Kaum ein neues Wordpress Theme kommt ohne diesen Mist daher. Egal ob profesionell gemacht oder diletantischer Müll.
Worum geht es hier eigentlich?
Nunja, ich habe in den letzten Wochen häufiger neue Wordpress Themes für verschiedene projekte herunter geladen.
Und bei sehr vielen ist inzwischen die Datei footer.php kodiert.
Anstelle von klarem HTML und PHP (bzw diesem grausigem Mischmasch den man bei Wordpress dauernd hat) findet man dort nur noch kryptische Zeichenfolgen und irgendwo mittendrinn die zwie PHP Befehle “eval” und “base64_decode”.
Für die nicht-Programmierer:
base64_decode ist das gegenstück zu einem Kodierungssverfahren Namens base64 mit dem Text unleserlich gemacht werden kann.
eval ist dazu da Code auszuführen. So kannn man Code z.B. in einer Variable speichern und diese dann an eval übergeben damit der Code ausgeführt werden kann. Da der Code bedingungslos ausgeführt wird, egal was drinn steht gilt: EVAL=EVIL!!!!!!!
Was soll das ganze nun?
Im einfachsten fall hat der Autor des Themes zusätzlich zu dem was vom Design her im Footer sein muss noch sein Copyright da drinn stehen oder einen Link zu seiner Homepage. Dammit das nicht Hinz und Kunz einfach rausnehmen oder sogar fälschen macht der schlaue Autor nun folgendes:
Er kodiert den gesamten Inhalt des footers mit base64. Inklusive seinem Text, den HTML Tags und eventuellem PHP Code.
Beispiel von Wikipedia:
Aus “Polyfon zwitschernd aßen Mäxchens Vögel Rüben, Joghurt und Quark” wird dann “UG9seWZvbiB6d2l0c2NoZXJuZCBhw59lbiBNw6R4Y2hlbnMgVsO2Z2VsIFLDvGJlbiwgSm9n
aHVydCB1bmQgUXVhcms=”.
Und das ganze wird von Wordpress eben erst wieder dekodiert und dann mit eval ausgeführt.
Was ist daran nun so schlimm?
Nun, das war der einfache Fall. Ich habe auch schon gesehen, dass im Footer zusätzliche Links untergebracht waren für die der Autor anscheinend bezahlt wurde. Der Footertext sieht dann singemäß so aus “Author: AUTORHOMEPAGE designed by AUTOZUBEHÖR, sponsored by GUMMMIBÄRCHEN, copyright by KREDIT-GÜNSTIG”
Sieht panne aus und wenn die Leute da nen Link von mir haben wollen sollen sie selbst fragen.
Es geht aber noch viel schlimmer. So habe ich schon den Fall erlebt, dass im kodierten Text ein Script aufgerufen wurde mit demm dynammisch von einer anderen Seite Links geladenn wurden.
Hat den Seitenaufbau auch nur um 5-10 Sekunden verlangsamt…
Und da kommen wir zu dem Problemen:
a) Das dekodieren kostet Performance
b) Da stehen eventuell Sachen im footer die ich da nicht haben will
c) Da werden Sachen ausgeführt von denen ich nichts weiss. Im schlimmsten Fall werden da Daten ausgespäht. Eval hat nirgendwo was zu suchen. Schon gar nicht wenn ich nicht weiss was da ausgeführt wird.
Was kann man tun?
Bei einfachen Themes: Seite normal aufrufen, Quelltext ansehen und den relevanten Teil herauskopieren und den Inhalt der footer.php damit ersetzen.
Wenn dort aber auch noch code ausgeführt werden muss kommt man um das händische dekoideren nicht herum. Das kann eine Sache von 2 Minuten sein oder auch von Stunden.
Im einfachsten fall kann man das “eval” durch “echo” ersetzen. Anstatt den Code auszuführen wird er nun einfach nur ausgegeben. Dann den Code kopieren und in die footer.php schreiben.
Ich hatte aber auch schon Fälle wo der dekodierte Text ebenfalls wieder kodiert war. Rekord war vor wenigen Wochen. Da wurde mit ein footer zum dekodieren geschickt. Das Drecksteil war ca. 50 mal mit base64 und rot13 kodiert.
Nach dem 10 mal. händischen dekodieren hab ich mir da lieber eine Funktion für geschaubt.*g*
Ein anders mal hatte ich eine maschinell erstellte Kodierung vor mir. Da waren dann die einzelnen Teile im Code selbst als Variablen verpackt und erneut einfach kodiert und wurden wieder neu zusammengesetzt. Das sah in etwa so aus:
$111=eval($11);
$11111=eval($1);
$1111=$111+$11111;
(while $1111){
eval($1111111)+$11111111;
}
…usw.
Ende vom ganzen Lied ist bei mir grundsätzlich folgendes: Ist der footer verschlüsselt fliegt der bei mir komplett raus. Mitsamt Autorlink und allem.
Ich sehe nicht ein mir irgendwelchen, eventuel sogar gefährlicchen Code, unterschieben zu lassen. Entweder man spielt mit offenen Karten oder lässt es sein. Ich sehe auch nicht ein hier als Werbeträger für andere Leute zu dienen(also andere als dem Autor).
Ein Verweis auf den Ersteller ist Ehrensache aber wenn man versucht die leute zu verarschen gibt’s gar nix. Wenn ich denn Footer ändern will dann tu ich das.
Wenn ihr nicht wollt, dass eure Themes editiert werden dannn veröffentlicht sie nicht.
Das ist (um wieder an das Tagesgeschen anzuknüpfen) wie mit der DNS Sperre: Wenn ich das umgehen will dannn tu ich das ganz einfach.









May 11th, 2009 at 06:00
Nachtrag: Im gerade aktuellen Fall enthielt der Footer eine Javascript Sperre für Rechtsklicks (oh man, die hab ich schon vor 10 Jahren gehasst) und eine Grafik die von der Autorenseiten nachgeladen wird, nichts darstellt aber vermutlich schön Statistiken erfasst.
May 11th, 2009 at 08:07
Werr der Urheber auf Namensnennung und Verlinkung besteht, solltest Du das schon weiterhin tun. Auch wenn “nur” mit einem normalen HTML-Link.
Auch wenn das alles äußerst hinterhältig ist – Du kannst den Author nicht einfach durch Mißachtung der Lizenz strafen. Du könntest höchstens ganz auf das Theme verzichten.
So, ich geh’ jetzt EVALs suchen, danke für den Tip!
May 11th, 2009 at 08:46
Man…
Da muss man ja direkt Angst haben, dass im Restlichen Teil des Themes auch noch irgendein Quatsch versteckt ist.
Aber eine Rechtsklick Sperre? Lol…
May 11th, 2009 at 10:36
@Stefan
Ich glaube unser lieber “fieser” Admin will hier nur ungerne die Urheber bestrafen. Wenn ich den Text von ihm richtig interpretiere macht er das aus Sicherheitsgründen – denn wer weiß ob im Footer nicht XSS oder SQL-Abfragen getätigt werden.
Möglicherweise ist im Footer ja eine Fkt. versteckt, die die Datenbank-Konfiguration ausliest und an nen Fremden Server schickt. Das könnte soweit gehen, dass Server mit gewissen WP-Installationen und gewissen Themes zu einem Bot-Netz mutieren könnten.
Sicherheit geht vor – auch wenn Urhebernennung ehrensache ist.
@Admin: Danke für den Tipp
Gruß
May 11th, 2009 at 17:09
Ich denke, dass man “Sicherheit” und “Urheberrecht” hier so nicht gegeneinander aufwiegen kann – denn beides ist wichtig.
Selbst wenn ich aus Sicherheitsgründen den Code entferne, kann ich trotzdem mit nomalem HTML die Lizenzbedingungen einhalten. (Außer die Lizenz verbietet eine Änderung des Codes, aber dann haben wir ein ganz anderes Problem
Und wenn ich dem Theme-Author aus Sicherheitsgründen nicht vertraue, dann sollte ich das Theme nicht benutzen. (Dann brauche ich ihn auch nicht verlinken
Vielleicht sind/waren wir alle (?) ein wenig blauäugig, was das Thema “Themes & Sicherheit” angeht?
May 11th, 2009 at 19:51
Schön geschrieben.
Ich hab solche Dateien bislang noch nicht gesehen.
May 11th, 2009 at 21:18
ist jetzt der zweite Fall wo ich das Themme auch einsetzen werde. Beim ersten mmal war’s letztendlich egal da ich mich recht schnell wieder umentscheiden habe. das Theme war ziemlich hässlich (ging aber auch um ne Seite zum Thema 80er, da durfte es hässlich sein). Beim aktuellen Theme schwanke ich noch. Denn handwerklich ist das wirklich gut.
Ich hab allerdings auch nichts zur Lizenz gefunden. Mal schauen, noch läuft die Seite ja noch nicht.
Es bleibt halt unverschämt da irgendwelches zeug reinzuknallen, dass ich gar nicht will.
June 8th, 2009 at 16:01
Das muß nicht unbedingt der Autor eines Themes sein, der den Footer mißhandelt. Habe selbst ein par Themes veröffentlicht und auf einigen Seiten wo man die Teile laden kann, wurde der Footer nachträglich mit base64 bearbeitet.
Beispiele zu finden hier: wordpresssupplies.com ,oder hier: blinger.org
gruß
June 24th, 2009 at 19:13
Moin Moin,
ich kenne auch einige aussergewöhnlich gut gemachte Themes (insbesonders Magazin-Themes) die ich wirklich gerne nutzen würde aber 5 Links im Footer zu dubiosen SEO-Dubai,Kredit,Casino (ist das verlinken von Glücksspielseiten in Deutschland nicht ohnehin verboten?) oder Zentralheizungsherstellern ist mir echt zu doof. Was hat das mit dem Thema meiner Seiten zu tun?
Scheue mich aber momentan noch davor so damit umzugehen wie der “fiese Admin”.
Ich habe gerade mal bei so einem Fall versucht den Autoren zu finden weil ich den dringenden Verdacht habe das hier der Autor nicht mal genannt wird.
Die angaben im CSS führen sonstwohin aber nicht zu einer Seite auf der es annähernd um WP-Themes gehen würde
Wir geht Ihr vor wenn Ihr den Autor sucht aber auf den ersten Suchergebnisseiten nur Theme-Plattformen findet?
Was meiner Meinung nach auch ein Unding ist wenn Betreiber von Theme-Veröffentlichungsplattformen nur deshalb noch nen Link zu dem des Autoren einbauen weil sie das Theme zum Download anbieten.
Find ich frech.
Die kriegen doch schon den Content geliefert (Themes) ohne die sie nichts weiter besitzen würden als eine leeres Script.
Meiner Meinung nach dieselbe blöde abzocke wie bei Webkatalogbetreibern.
Man liefet ihnen den Content und dann wollen sie auch noch nen Backlink.
Und am besten von deinen Startseite. Aber mit mindestens PR 3
June 24th, 2009 at 19:31
Nachtrag:
Hab mal grade einen Code entschlüsselt und den Autorencode auf Follow aber die “Fiesen”Links auf NoFollow gesetzt. Ist doch auch ne Massnahme,oder?
June 25th, 2009 at 11:47
Den ganzen Mist würd ich komplett rausnehmen. Autoren Link bleibt, rest fliegt raus. Hat weder mit dem Theme was zu tun noch mit sauberem SEO.
May 12th, 2010 at 11:53
[...] via Footer im Wordpress Theme kodiert | Der fiese Admin. Related Posts:WordPress TippsFlexibility Theme für WordPress 2.7Wcute – freies Wordpress ThemeIsoTherm News Magazine Wordpress ThemeSchöne Icons für Webdesigner und ein Wordpress Theme for free! . [...]