Für Menschen · Seien Sie begeistert und Sie werden begeistern !

Wie man WordPress in 11 Punkten sicherer macht, dass habe ich im Artikel „WordPress sicherer machen“ auf dem Blog zu meinen Buch „WordPress - Weblogs einrichten und administrieren“ in kurzer und knapper Form erläutert.
Dabei erläutere ich in Punkt 4 des Artikels, dass man dem Außenstehenden nicht unbedingt die Version seiner Installation verraten sollte. Dies ist vor allem relevant, wenn man das Blog nicht immer auf dem neusten Stand hält/ halten kann.
Dafür kann es eine ganze Reihe von Gründen geben. Nehmen wir beispielsweise ein Kundenprojekt, aufgesetzt mit WordPress. Nach besten Wissen und Gewissen eingerichtet und administriert. Allerdings möchte der Kunde keinen weiteren Pflegevertrag und so liegt das Blog in der Regel mit der einmalig installieren Version auf dem Webspace.
Allerdings ist es nicht für jeden Anwender einfach, die Versionsnummer zu entfernen bzw. zu ändern, deshalb habe ich mir eine Lösung via Plugin überlegt.
Im WWW werden in der Regel Sicherheitslücken mitgeteilt und auch potenziell böswillige Interessenten nutzen diese Information und suchen nach den entsprechenden Versionen mit ihren Schwachstellen.
Eine Webapplikation wirklich sicher zu bekommen, so dass auch die Arbeit damit nicht zur Last fällt, ist sicher immer schwierig, aber die Verschleierung der Version ist sicher ein weiterer Schritt zu mehr Sicherheit.
Nun aber wieder zur Ausgabe der WP-Verison, die in der Regel im Feed und im Theme zu finden ist. Das Entfernen im Theme stellt keine großen Probleme dar, dazu genügt das entfernen der folgenden Zeile.
<meta name="generator" content="WordPress <?php bloginfo('version'); ?>" />
Aber auch das kann für den einen oder anderen schon zum Problem werden.
Um nun aber die Version der WP-Installation auch noch aus dem Feed zu bekommen, muss man in die Core-Dateien von WordPress eingreifen. Dies erschwert Updates und ist aus den unterschiedlichsten Gründen nicht zu empfehlen, zumindest für den Laien.
Ab Version 2.5 von WordPress wird der Generator-Tag mit Hilfe einer neuen Funktion (the_generator()) in die jeweiligen Funktionen, wie RSS, ATOM oder RDF, eingebracht, was es ein wenig einfacher macht, die Ausgabe der Installations-Versions-Nummer zu unterbinden.
Derzeit wird es in der Datei zum Erstellen des RSS und Atom-Feeds via bloginfo_rss() eingefügt und ansonsten wird direkt die Variable ausgelesen.
Ich habe nun ein Plugin erstellt, dass alle drei Möglichkeiten beachtet und die Versionsnummer im Backend auch weiterhin ausgibt, denn sie ist für das eine oder andere Plugin relevant.
Im weiteren Verlauf ist ein Plugin entstanden, welches weitere Sicherheitsprobleme schließt - Secure WordPress. Dieses Plugin hat diese Lösung im Kern und kann es damit ersetzen.
Das Plugin ersetzt die WordPress-Versionsnummer mit einer Zufallszahl zwischen 0 und 9999 bei einer WordPress-Installation kleiner Version 2.4.
Ab WordPress Version 2.4 wird der Tag komplett entfernt.
Das Plugin wurde unter WP 2.0.2, WP 2.3.* und WP 2.4beta getestet.
Achtung: Ich habe das Plugin nach bestem Wissen erstellt und getestet incl. Validierung der Feeds. Trotzdem kann es zu Problemen kommen, denn es ist kein Filter, den man in WordPress deaktivieren kann. Sollte es also zu Problemen mit dem einen oder anderen Plugin kommen - ich würde mich über Feedback freuen. Aber ich kann und will keine Garantie für die problemlose Funktion übernehmen!
Ist die Arbeit nicht 1 Euro wert?
Jede Spende wird dankbar angenommen und ermöglicht das weitere Arbeiten an freier Software.
Möchtest du mehr oder anders spenden, so besuche meine Wunschliste.
Download als zip-Datei: downloads.wordpress.org/plugin/replace-wp-version.zip - 1 kByte
händischer Spam:
Beachte die Kommentarregeln, jede Form von versuchtem Spam wird gelöscht. Warum und wieso steht in einem meiner Beiträge.
Bezug auf Textstellen:
Du kannst direkt bezug auf Textstellen im Beitrag nehmen. Dazu muss lediglich der Bereich im Artikel markiert werden; daraufhin erscheint ein Button, der den markierten Text in das Kommentarfeld übernimmt und als Zitat auszeichnet. Die Funktion ist nur bei aktivem JavaScript nutzbar.
xHTML:
Du kannst folgende Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <blockquote cite=""> <code> <pre> <em> <strong> <strike> <ul> <ul> <li>
Achte darauf, wenn du Code im Kommentar hinterlegen willst, dann muss der Code maskiert sein. Dann wird er nicht interpretiert. Der Code muss mit Hilfe von HTML-Entities dargestellt werden, d.h. dass man z.B. < als < und > als > einfügt.
E-Mail-Benachrichtigung bei neuen Kommentaren ?
Wenn der Haken in der Checkbox gesetzt ist, dann wirst du über neue Kommentare vie E-Mail informiert. Der Versand erfolgt nur, wenn du die URL in der Bestätigungs-E-Mail genutzt hast oder schon Abonnent hier im Blog bist.
Kommentar erscheint nicht:
Alle Kommentare werden manuell geprüft, freigegeben und nach Möglichkeit beantwortet. Bitte um etwas Geduld und Nachsicht.
Identifikationsbilder (Avatare):
Auf Gravatar.com kann man sich mit seiner E-Mail-Adresse registrieren und ein Bild hochladen, dann erscheint dieses Gravatar hier und in vielen weiteren Blogs.
Spamschutz:
Das Kommentarformular ist mit einem Spamschutz ausgerüstet. Solltest du diesen Artikel ohne JavaScript besuchen und kommentieren wollen, so muss du die Frage beantworten und das jeweilige Wort in das Textfeld eingeben.
bueltge.de [by:ltge.de] wird von Frank Bültge geführt, administriert und gestaltet. Alle Inhalte sind persönlich von mir ausgewählt und erstellt, nach bestem Gewissen und Können, was die Möglichkeit von Fehlern nicht ausschließt.
Das Weblog wird angetrieben von WordPress und aktuell gibt es 971 Beiträge, 19439 Kommentare in 14 Kategorien und 459 Tags.
Das Blog wird liebevoll mit xHTML & CSS in Handarbeit gestaltet. Erstellt mit ♥ zum Befüllen und Erhalten.
Design und Code ist unter Copyright
© 2001 - 2012 bueltge.de [by:ltge.de]
23. Januar 2008 um 13:15
23. Januar 2008 um 15:39
23. Januar 2008 um 16:12
Manueller Trackback da mein Pingback anscheinend nicht angekommen ist.
[...] Frank Bueltge hat heute ein Plugin veröffentlicht, welches die Ausgabe der WordPress Version verfälscht. [...]
25. Januar 2008 um 15:42
Ich habe noch keine Fehler entdeckt, vielen Dank!
4. Februar 2008 um 20:11
11. Februar 2008 um 09:13
24. März 2008 um 22:22
25. März 2008 um 15:13
7. April 2008 um 09:47
15. April 2008 um 20:35
Hallo Frank, ich bin etwas irritiert. Du schreibst, dass ab Version 2.4 der Tag gar nicht mehr erscheinen würde. Wenn ich aber in den Header meines Blogs gucke, dann erscheint eine Zahl anstatt gar nichts. Ich verwende WP2.5.
15. April 2008 um 20:55
@André Wegner: Das Theme wird via Hook wp-head() angesprochen, daher kann man die Version auch nicht mehr so einfach entfernen, wie bisher. Das Plugin löscht den Eintrag raus.
16. April 2008 um 21:12
Hi, I use your plugin, but I have a problem:
If I try to open /wp-admin/upgrade.php it says that an upgrade is required. And if I try to do that upgrade, the database screws up, and needs a backup-restore.
The reason is that $wp_db_version is rewritten by a random number, and hence it doesn't equal to get_option('db_version') anymore.
A temporary fix is to comment out row 27:
// $wp_db_version = $v;
Thank you for your work!
17. April 2008 um 13:44
@frasten: thx for your comment, i have fixed the bug and upload the new version.
20. April 2008 um 16:11
25. April 2008 um 03:23
25. April 2008 um 09:56
25. April 2008 um 14:13
25. April 2008 um 22:07
2. Mai 2008 um 12:23
12. Mai 2008 um 15:59
19. Mai 2008 um 16:20
21. Mai 2008 um 15:53
27. Juni 2008 um 07:18
2. Juli 2008 um 11:57
11. Juli 2008 um 03:36
14. Juli 2008 um 13:52
30. Juli 2008 um 01:56
eben kam ein Kommentar rein, wurde von mir aus versehen gelöscht, bitte wiederholen, wenn möglich. Ging um die Funktion ablegen im Theme. Dies geht natürlich auch, was aber das Zulassen eine globalen Variable nötig macht..
30. Juli 2008 um 11:31
Ja, gerne nochmal. Also, meine Überlegung betrifft nur das Verschleiern der Version, was ja mittlerweile nicht mehr der einzige Zweck des Plugins ist...
Mir gefiel der Gedanke nicht, wegen dieser zwar wichtigen, aber doch Kleinigkeit ein extra Plugin zu installieren. Die functions.php des Themes funktioniert auch wie ein Plugin. Ein kurzes
if ( !is_admin() ) {global $wp_version;
$wp_version = "sinnlose Versionsnummer oder sonstwas";
}
und schon ist in Feed und Head-Bereich die Version verschleiert. Zwar nicht weg, aber so etwas wie "Wordpress Power" sieht doch auch noch cool aus, finde ich.
Was spricht denn gegen die globale Variable? In Deinem Plugin kommt die doch auch vor?
3. August 2008 um 16:10
Hallo Frank,
ich bin durchs WordPress Plugin Archiv auf deine Seite gestoßen. Tolles Plugin
PS: Kann sein ich das mich irre, aber es gab meines Wissens keine WP Version 2.4?! Oder?
3. August 2008 um 19:37
@Jared: stimmt, denn sie wurde übersprungen, da die Neuerungen alle dann in 2.5 eingeflossen sind.
4. August 2008 um 13:25
Hallo Frank,
warum ist die globale Variable in meinem obigen Vorschlag problematisch?
4. August 2008 um 13:32
@Danilo: ist nicht problematisch, globale Variablen sollte man vermeiden. Wenn es einen Bug im Theme gibt, dann ist diese nutzbar. Aber für die Lösung ist sie notwendig.
12. August 2008 um 04:18
13. August 2008 um 09:32
16. August 2008 um 01:26
1. September 2008 um 14:55
3. September 2008 um 08:58
6. September 2008 um 20:46
How can i change it from wordpress 6524 to something more personal like TexMex 6524? How do you replace the wordpress word.
6. September 2008 um 22:43
@davdo: only with changes in the code: replace
$v = intval( rand(0, 9999) );in$v = 'TexMex' . intval( rand(0, 9999) );10. September 2008 um 17:18
Is there any way to replace the word WordPress completely with another word of my choice
11. September 2008 um 05:13
12. September 2008 um 08:12
25. September 2008 um 05:50
29. Oktober 2008 um 17:13
2. November 2008 um 04:13
Hallo
Wollte nur mal mein Dank aussprechen für das Plugin.
Gruß
2. November 2008 um 17:02
1. Dezember 2008 um 17:36
thank you
ibonette
29. Januar 2009 um 13:18
Auch hier die Frage nochmal. Funktionsfähig mit 2.7.???
22. Juli 2009 um 15:58
Hab 2.7 aber bekomme ne Fehlermeldung :
Fatal error: Cannot redeclare fb_replace_wp_version() (previously declared in /wp-content/plugins/fb-re_wpversion.php:14) /wp-content/plugins/replace-wp-version/fb-re_wpversion.php on line 12
Dennoch danke für deine mühe und all den Info´s über WordPress usw. so viel zu Lesen *gg.Schönen Tag noch ciaoo ...
22. Juli 2009 um 16:20
@NoFun: liegt die Datei zwei mal vor, einmal in plugins und einmal im Ordner plugins/replace-wp-version ? Es empfiehlt sich im übrigen das Plugin Secure WordPress zu nutzen, da ich nur dort weiterhin pflege, die alte Version pflege ich nicht mehr.
16. November 2010 um 21:08
Hi, Frank. I'm from Russia.
Your plugin - really good plugin. I'll write about your plugin in my book.
As they say in Russia: all the best!
And good luck.
17. November 2010 um 12:46
@Alexander: many thanks and also good luck for you!