Wordpress 2.8.4: Bitte updaten!
Seitens Wordpress wurde nun auf die gestern auch hier veröffentlichte Sicherheitslücke reagiert, und ein Security Relase mit der Versionsnummer 2.8.4 zum Download freigegeben. Der Ankündigungspost auf wordpress.org enthält keinen Hinweis auf ein Changelog, weshalb davon auszugehen ist, dass in dieser Version ausschließlich die gestern aufgetauchte Lücke gestopft wurde.
Zwar stellt die Lücke kein erhebliches Sicherheitsrisiko dar, trotzdem wird allen Wordpress-Benutzern empfohlen, schnellstmöglich ein Upgrade auf 2.8.4 durchzuführen.
August 12, 2009 2 Comments
Wordpress: Sicherheitslücke in 2.8.3
Durch einen Bug in der aktuellen Wordpress-Version ist es möglich, das Passwort eines Benutzers bzw. des Admins zu ändern. Wie auch caschy schreibt, hält sich der mögliche Schaden in Grenzen, solange der Angreifer keinen Zugriff auf das Mailkonto des Admins hat, denn der Angreifer kann dass Passwort nicht auf einen beliebigen Wert setzen. Es wird lediglich die Passwort-Reset-Funktion von Wordpress durchgeführt, ohne dass der betroffene User davon erfährt. Nach einem erneuten Passwort-Reset durch den User kann dieser sein Konto ganz normal benutzen.
Um diese Sicherheitslücke zu schließen, reicht es, in der wp-login.php einige Zeichen einzufügen. So muss die Zeile 190 von
if ( empty( $key ) )
in
if ( empty( $key ) || is_array( $key ) )
geändert werden.
Der Hintergrund dieser Lücke ist, dass der reset_password-Funktion ein Parameter $key übergeben wird, der den Hashwert zum bestätigen der Passwortänderung darstellt. Ist dieser Wert leer, gibt Wordpress in Zeile 190/191 einen Fehler aus
if ( empty( $key ) ) return new WP_Error('invalid_key', __('Invalid key'));
Bevor aber geprüft wird, ob $key leer ist, wird ein preg_replace auf den key ausgeführt (Zeile 188)
$key = preg_replace('/[^a-z0-9]/i', '', $key);
Tatsächlich ist mir der Sinn dieser Zeile nicht ganz eindeutig klar; auf jeden Fall gibt preg_replace in diesem Falle einen leeren String zurück, wenn $key nur aus Kombinationen kleiner Buchstaben und Zahlen besteht. Falls jedoch $key ein Array ist, gibt auch preg_replace ein Array zurück. So schließt sich der Kreis zu Zeile 190: Wenn man es schafft, die $key-Variable als Array zu übergeben, wird das Passwort des Users geändert, ohne dass dieser eine Mailbenachrichtigung bekommt, da die Funktion empty($variable) so mit Arrays nicht funktioniert (und für ein nicht-leeres Array false zurückgibt).
Der Angreifer muss es also nur schaffen, den Key als Array zu übergeben. Wie das funktioniert, werde ich hier nicht verraten – wer sich aber für weitere Details der Lücke interessiert, sollte mal hier vorbeischauen.
Es ist sehr leicht, diese Lücke auszunutzen und im Allgemeinen sollte daraus kein großer Schaden entstehen. Ich bitte trotzdem all diejenigen, die im Stande sind, den Exploit anzuwenden, dies nicht zu tun.
Update:
Eine bessere Lösung, statt is_array in Zeile 190:
if ( empty( $key ) || !is_string( $key ) )
August 11, 2009 16 Comments
Dingshow: Neuer Maintainer/Developer
Nachdem ich der ersten, öffentliche Version von Dingshow nur ein Mal ein Update spendiert habe und ich jetzt auch noch von identi.ca zu Twitter übergelaufen bin, habe ich die Verantwortung nun abgegeben. @candrews bat mich darum, ihm Maintainerpriviligien einzuräumen. So ist er nun der Hauptverantwortliche für dieses kleine aber feine Stück Software, welches ich veröffentlichen konnte, bevor es vergleichbare Wordpress-Plugins gab. Möge er viel Spaß mit der Entwicklung haben
.
An dieser Stelle möchte ich mich bei Cem Basman, Robert Basic und Chris von F!XMBR bedanken, die dazu beigetragen haben, dass Dingshow mehr als 1000 Mal von meinem Server, und weitere ~300 Mal aus dem Wordpress Plugin-Verzeichnis heruntergeladen wurde.
August 8, 2009 No Comments
Wordpress 2.8 “Baker” ist da
Und das zwar schon seit gestern, doch da fehlte mir die Zeit darüber zu schreiben
. Neu sind unter anderem ein komfortabler Theme-Browser, mehr Anpassungsmöglichkeiten im Backend, Support für Winter-/Sommerzeitumstellung, Syntax-Highlighting im integrierten Code- und Theme-Editor, und, vielleicht für mich interessant: Statt MagpieRSS wird nun SimplePieRSS für die RSS-Funktionalitäten verwendet – unter Umständen muss Dingshow dann etwas angepasst werden.
June 11, 2009 8 Comments
Verpennt: Thank a Plugin Developer Day
Eigentlich ist das eher ein Thema für kaputtkaputt.de, aber hier bekommt es mehr Aufmerksamkeit
Wordpress-Entwickler Matt Mullenweg hat den gestrigen 28. Januar zum offiziellen Thank a Plugin Developer Day erklärt: Anlässlich des 4000. Wordpress-Plugin im offiziellen Plugin-Verzeichnis (dort, wo auch Dingshow zu finden ist) ruft er dazu auf, einem Plugin-Entwickler Dank, oder eine kleine Spende via PayPal zukommen zu lassen:
I declare January 28th our official “Thank a Plugin Developer” day. To celebrate take a look at the plugins you use and love, visit the author’s site, find their contact form, and drop them a note thanking them. (Or Paypal!) Look for the links in the plugin directory to “author homepage” and also to donate directly if they’ve specified a Paypal address.
Also, tut euch keinen Zwang an
January 29, 2009 5 Comments
Dingshow im Pluginverzeichnis von Wordpress
Bisher bin ich nicht dazu gekommen, darüber zu schreiben, aber vor einigen Tagen hat Dingshow nun endlich den Weg in das offizielle Pluginverzeichnis von Wordpress gefunden. Ich möchte alle zufriedenen Dingshow-User dazu aufrufen, dem Plugin eine gute Bewertung zukommen zu lassen, um so mein Ego aufzubauen. Die im Verzeichnis zu findende Version ist ausschlielßlich englisch; die deutsche Sprachdatei wird auf jeden Fall noch nachgereicht.
December 30, 2008 No Comments
Wordpress 2.7 “Coltrane” veröffentlicht
Heute morgen zu nachtschlafender Zeit (ich bekam trotzdem kein Auge zu) wurde im offiziellen Wordpress-Blog das Release der finalen Version 2.7 mit dem Namen Coltrane bekanntgegeben. Ausführliche Infos gibt es bei Wordpress Deutschland, wo man auch die deutsche Version finden kann.
December 11, 2008 No Comments
Wordpress 2.7 RC 2
Vergangene Nacht, zu einer Zeit, zu der brave Studenten schon längst in der Heia liegen, wurde ein zweiter Release Candidate der kommenen Wordpress Version 2.7 veröffentlicht. Genauere Angaben, was sich im Vergleich zu seinem Vorgänger, filzo.de berichtete, änderte, gibt es nicht; es handelt sich wohl nur um letzte Fehlerkorrekturen. Wordpress-Maintainer Matt Mullenweg gibt zum Upgraden folgenden Tipp:
Of course if you were already testing 2.7, you can just use the built-in core updater (Tools > Upgrade) to download and install RC2 for you [...]
[...]
Unpacking the core update
Could not copy files
Die Installation ging schief
Also habe ich den zweiten Release Candidate auch wieder händisch installiert, was, wie immer, problemlos geklappt hat.
Hat jemand meiner Leser Lust, auf den Tag des Erscheinens der finalen Version von Wordpress 2.7 Wetten abzuschließen?
December 10, 2008 No Comments
Lang lebe Dingshow
Nach dem ersten Release habe ich mein Baby, das Dingshow-Plugin, sträflich vernachlässigt. In nicht all zu ferner Zukunft wird es noch ein Release geben, welches mit aufgeräumtem, gut kommentiertem Code sowie ein paar kosmetischer Korrekturen im Backend aufwarten können wird.
Aus diesem Grund frage ich mich, welche Features dem Plugin gut zu Gesicht stehen würden, und bitte deshalb um die Mithilfe all derer, die Dingshow einsetzen: Was für Features wünscht ihr euch? Welche Dinge gefallen euch aktuell nicht so gut? Wärt ihr mir böse, wenn ich die Rechte an Dingshow an Steve Jobs verkaufen würde?
December 9, 2008 2 Comments
Schick!
Ich konnte es nicht erwarten, und bin schon mal auf den Release Candidate 1 von Wordpress 2.7 umgestiegen. Das Dashboard und das gesamte Admininterface gefallen mir sehr gut – sie sind irgendwie erwachsener (und auch hübscher) geworden. Bis jetzt läuft hier auch alles ohne Probleme, auch die Plugins tun, was sie tun sollen. Ich bin begeistert!
December 3, 2008 3 Comments