«

»

Mrz
02
2006

Severe security vulnerabilities in WordPress detected

As Heise Online conveys today, a group named Neo Security TEAM has published an advisory stating several severe security vulnerabilities in WordPress. The most important issue is an insufficient filtering of comments, which allows so-called cross site scripting attacks. On WP installations with unmoderated comments this may result in the effect that an attacker gains full administrative access to the blog.

Several files don’t check whether they are called directly, resulting in error messages being displayed that contain the full server path to the file. This information, again, can then be misused for further attacks against either the blog or even the complete webserver. Additionally, the wp-includes/ directory is open to a directory listing, if the directory privileges are set insufficiently (e.g. 755 on a unix machine, resulting in world read rights for the directory index).

All errors can be reproduced in all wordpress versions up to and including the latest version 2.0.1, and a fix is currently not yet available. So you are on your own if you want to take countermeasures against these issues:

  • On a unix machine, apply CHMOD 711 to the wp-includes/ directory, or place and empty index.php into that folder (the latter is the only one applicable on a windows server).
  • Moderate all your comments to prevent the XSS attacks, until an official patch is available
  • Edit your wp-comments-post.php and replace the four trim() operations in that file with appropriate htmlentities(trim()) calls.
  • Check which files don’t test direct calls and apply solutions like
    if (eregi('Name-of-the-Script.php', $_SERVER['PHP_SELF'])) die('You are not allowed to call this page directly');

    to them. This measure should be taken only if you know what you are doing, as it may result in a broken blog installation.

I have put up a small wp-fix.zip for a quick download, it contains a fixed WP 2.0.1 wp-comments.post.php file and an empty index.php file to circumvent the two most important issues. Just download and extract the ZIP file to your wordpress installation.

Permanentlink zu diesem Beitrag: http://www.4null4.de/118/severe-security-vulnerabilities-in-wordpress-detected/

9 Kommentare

4 Pings

  1. Alex sagt:

    Danke für dein Fix.
    Allerdings werden jetzt in den Kommentaren die Sonderzeichen ö, ä, ü nicht mehr richtig dargestellt. Kennst du eventuell eine Lösung dafür?

  2. CountZero sagt:

    Ich verwende wegen der Sonderzeichen eh das CleanUmlauts-Plugin in der von mir verwursteten fehlerbereinigten Fassung, und damit tritt eine Störung der Umlaute eh nicht mehr auf, da diese serverseitig vorm Rendern der Seite in HTML-Entities umgewandelt werden. zur 404-CleanUmlauts-Version

  3. Alex sagt:

    Dein Plugin verwende ich bereits, trotzdem kommen diese Fehler zustande. ist nicht bei den einzelnen Überschriften oder Artikeln, sondern nur wenn wer über das Kommentarfeld schreibt.

  4. Phogex sagt:

    Also wenn der Fix darin besteht, Name, Mail etc mit htmletities() zu bearbeiten ist dieser Umstand logisch. Dann werden weder Umlaute noch jegliche (erlaubten) anderen HTML-Sachen korrekt dargestellt.

    Da muss man auf eine vernünftige Lösung warten seitens WordPress, die schädliche HTML-Tags vernünftig löscht.

  5. CountZero sagt:

    richtig. das ist vorerst nur ein schneller workaround und kann keine endgültige lösung sein.

  6. Alex sagt:

    Mal ne andere Frage. Kann den überhaupt wer schädlichen HTML oder Javascriptcode in WordPress- Kommentaren ausführen. Wenn ich mich nicht täusche ist dies ohnehin nicht wirklich möglich, ausser derjeneige hat Adminrechte. Oder liege ich da falsch?

  7. CountZero sagt:

    gerade da liegt soweit ich das problem verstehe der hase im pfeffer – der blog-admin ruft mit seinen adminrechten nen post ab, dessen kommentare ein solches manipulatives script enthalten, und schwups sind die adminrechte mal eben zu nem angreifer rübergereicht. genau so funktionieren XSS-attacken ja.
    die anderen probleme, etwa anzeige der verzeichnisinhalte auf schlecht konfigurierten webservern, sind eher nebensächlich, können aber nem angreifer mehr informationen verraten als einem lieb ist und daher einen hack erleichtern.

  8. Phogex sagt:

    Ein interessanteres Problem ergibt sich in meinen Augen in der Verwendung von automatischen Redirects per XSS.

    Mit etwas Glück lässt sich da sowohl die PHP-Session auslesen als auch ein komplettes Blog “übernehmen”. Denn selbst wenn ein mit XSS manipulierter Benutzername von WordPress in den Kommentaren gefixt wird, kann er trotzdem noch im Original z.B. von einem Plugin in den Cookie geschrieben werden.

    Und bei einer “Recent Comments” Anzeige dürfte das Problem deutlich werden o_O

  9. Heiko sagt:

    Gute Info. Danke!

  1. Webmasterfind Blog Sicherheitslücke in Wordpress sagt:

    [...] Wie Heise vermeldet gibt es bei der Blogsoftware eine massive Sicherheitslücke, welche Angreifern diverse PHP-Skripte in WordPress direkt aufrufen oder sich Javascript Code einbetten lääst, und somit dem Hacker unter Umständen administrativen Zugang zum Blog verschafft. Einen offiziellen Patch gibt es derzeit noch nicht, 4null4.de stellt aber eine kleines File zur Behebung der Sicherheitslücke zur Verfügung. Stichwort: Blogs, bug, wordpress [...]

  2. Mastblau Sicherheitslücke in Wordpress sagt:

    [...] Das online Magazin Heise berichtet über eine Sicherheitslücke in WordPress, welche es Angreifern ermöglicht, Hackern eventuell administrativen Zugang zum Blog zu verschaffen. Eine offizielle Lösung gibt es derzeit noch nicht, Carsten Albrecht vom 4null4-Blog bietet aber ein korrigiertes File zur Behebung der Sicherheitslücke an. Stichwort: Blog, bug, wordpressPopularität unranked   [...]

  3. Serious Vulnerabilities in Wordpress 2.0.1 Found » eJoneClicks.com sagt:

    [...] Being new to WordPress, I scour the web as much as possible to learn more about it.  According to CountZero on his blog, multiple security vulnerabilities were found in WordPress 2.0.1 by a Spain-based security research TEAM called Neo Security TEAM (NST).  You can find the full published advisories on their website. [...]

  4. Dimension 2k : Blog Archive : Wordpress Bugfix und Umlaute sagt:

    [...] Für die Lücke gibt es zwar keinen offiziellen Patch, aber bei heise.de gibt´s ne Anleitung für nen manuellen Workaround und auf 4null4.de gibt es sogar ein “inoffizielles Patch” zur Behebung der Sicherheitslücke. [...]

Kommentare sind deaktiviert.