Home // Tipps // WordPress Metainformationen entfernen

WordPress Metainformationen entfernen

image_pdfimage_print

WordPress produziert eine Menge an Quellcode (Firefox/Opera: CTRL-U, IEX: Ansicht / Quelle) um einen Blog wie diesen darstellen zu können. Das meiste davon wird natürlich benötigt, damit die Webseite schön Fancy im Web 2.0 daherkommen kann. Es gibt aber auch Informationen im Quelltext die man vielleicht gar nicht braucht oder die sogar Crackern in die Hände spielen.

Auf drei solcher Einträge gehe ich jetzt näher ein.

Really Simple Discovery Informationen

<link rel="EditURI" type="application/rsd+xml" title="RSD"
href="http://blog.matse.ch/xmlrpc.php?rsd" />

Hinter der RSD (Really Simple Discovery) Funktion versteckt sich ein XML Format und eine Veröffentlichungskonvention um z.B. Blogs via Client Programmen befüllen zu können. So gibt es z.B. Programme wie BlogDesk, welche es ermöglichen einen Beitrag für z.B. WordPress Offline, in einem Programm auf dem Computer zu erstellen und später zu veröffentlichen. Das Protokoll stammt aus dem Jahr 2002 als die Bandbreiten noch klein, Flatrates kaum und Web 2.0 noch unbekannt waren. Zu dieser Zeit mussten Blogeinträge noch mit HTML Code versehen werden und waren somit – für Laien – relativ unübersichtlich zu erstellen.

Heutzutage ist es jedoch mittels CSS und JavaScript möglich einen Webbasierten WYSIWYG (What you see is what you get) Editor zu verwenden, welcher ganz normalen Menschen das Erstellen von ansprechenden Artikeln ermöglicht. Und da die Geschwindigkeit und ständige Internetverbundenheit in den technisierten Regionen der Erde kaum mehr ein Problem darstellen, haben Programme mit RSD Unterstützung an  Bedeutung verloren.

Wer also bisher nicht einmal von RSD wusste und auch in Zukunft keines dieser Programme verwenden will, kann diese Informationen in WordPress unterdrücken. Wie das geht erläutere ich weiter unten.

Windows Live Writer

< link rel="wlwmanifest" type="application/wlwmanifest+xml"
href="http://blog.matse.ch/wp-includes/wlwmanifest.xml" />

Windows Live Writer ist das selbe Konzept wie RSD, jedoch von Microsoft. Mittels der Software kann man ebenfalls seinen Blog Offline mit Inhalten befüllen.

Wer den Dienst bisher nie in Anspruch genommen hat und dies auch in naher Zukunft nicht vor hat, der kann diese Information ebenfalls unterdrücken.

WordPress Version

<meta name="generator" content="WordPress 1.2.3" />

Mittels dieser Metainformation kann man als Blogleser in Erfahrung bringen, mit welcher WordPress Version gearbeitet wird. Das ist im Normalfalls jedoch absolut irrelevant, da den Besucher nicht die Technologie hinter dem Blog sondern der Inhalt interessiert. Und die Besucher welche sich für die Version interessieren sind zu 95% unerwünschte Besucher. Denn als „pöser Bube“ will ich wissen ob die WordPress Version veraltet ist und es hierzu offene Sicherheitslücken gibt. Und dank Google und Meta Tags, kann man hierzu einfach die Webseiten auflisten, welche mit der spezifischen Version laufen. Unterdrückt man diese Information muss ein potenzieller „pöser Bube“ anderweitig Vorgehen um herauszufinden ob der Blog Verwundbar ist. Da heutzutage aber meistens eh nur – schlecht – automatisierte Engines nach genau solchen Informationen suchen kann es sogar passieren, dass man trotz veralteter Version und offenem Sicherheitsloch nicht angegriffen wird, weil die Engine schlicht keinen Anhaltspunkt dazu gefunden hat. Auch eine Art Cracker abzuwehren.

Unterdrücken der Informationen

Um nun einen oder allen der oben genannten Metainformationen zu unterdrücken, muss man die Datei functions.php in seinem WordPress Theme suchen und editieren. In einer normalen WordPress Installation befindet sich diese Datei normalerweise im WordPress Verzeichnis unter folgendem Pfad:

<Wordpress Verzeichnis>/wp-content/themes/<Themenname>/functions.php

Idealerweise fügt man direkt am Beginn der Datei (unterhalb von <?php) die ensprechenden Unterdrückungen ein.

/** Fuer Really Simple Discovery Unterdrueckung */
remove_action('wp_head', 'rsd_link');

/** Fuer Windows Live Writer Unterdrueckung  */
remove_action('wp_head', 'wlwmanifest_link');

/** Fuer WordPress Versionsunterdrueckung */
remove_action('wp_head', 'wp_generator');

Lädt man seinen Blog danach neu, sind diese Informationen verschwunden. Leider muss man sich hierbei bewusst sein, dass bei einem Update des Themes die Einträge jeweils neu erstellt werden müssen, da die functions Datei dann erneut überschrieben wird. Da Themes jedoch selten Updates erfahren ist dieser Aufwand – meiner Meinung nach – vernachlässigbar.

Posted in Tipps, Wordpress and tagged as ,

3 Comments

  • Bei der Version bin ich nicht ganz einverstanden. Ich habe mit dieser Angabe schon mehrmals Blogger darauf aufmerksam machen können, dass sie ihr WordPress updaten sollten…

  • tin :

    Bei der Version bin ich nicht ganz einverstanden. Ich habe mit dieser Angabe schon mehrmals Blogger darauf aufmerksam machen können, dass sie ihr WordPress updaten sollten…

    Und in wie vielen Fällen haben sie es danach auch gemacht?

    Wer heutzutage ein aktuelles WordPress einsetzt wird sowieso über aktuelle WordPress Versionen an prominenter Stelle im Backend Bereich aufmerksam gemacht. Und wer eine derart alte Version einsetzt, die diese Upgrade Information nicht anzeigt oder wer aus welchen Gründen auch immer schon seit zwei Versionsprüngen nicht mehr nachgezogen hat, der wird das mit den selben Argumenten auch bei deinem Hinweis machen.

    Gerade diese UraltVersion oder KannGradNichtUpdaten Leute werden durch das Entfernen der WordPress Version immerhin ein wenig geschützt. Denn heutzutage erfolgen viele Angriffe nur noch automatisiert und in den seltensten Fällen gezielt. Und gerade für die automatisieren Angriffe muss man sowenig Angriffsfläche wie möglich bieten.

  • Hallo Matse!

    vielen Dank für den Tipp. Hat auch auf Anhieb geklappt. Dazu noch die Absicherung der wp-login.php mittels der htaccess und ich schlafe gleich viel ruhiger.

    Beste Grüße
    Klaus

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.