Archive for February, 2005

Ich bin doch (nicht?) blöd!

Monday, February 28th, 2005

Ein bekannter Elektromarkt wirbt seit einigen Tagen mit preisgünstigen LCD-Displays. Ersonnen wurde die Werbung wahrscheinlich während eines Firmenausflugs auf die Färöer-Inseln von noch auszubildenden Azubis oder Leuten, die durch ABM-Maßnamen eine Stelle dort bekommen haben.

Zend Studio 4 ist raus

Thursday, February 24th, 2005

Ich habe eben eine Mail bekommen, dass soben das Zend Studio 4 Professional veröffentlicht wurde (“And as a loyal Zend Studio customer we wanted to let you know personally.”). Nachdem mir die Testversion schon als ganz ordentlich erschien werde ich gleich die fertige Version runterladen und demnächst ausgiebig testen – indem ich mit ihr an LoL-o-Mat weiterarbeite.

Besonders interessant sind für mich die neue Unterstützung von phpdoc, die erweiterte FTP-Funktion sowie die Datei-übergreifende Anzeige von Funktionen und deren Syntax, äußerst praktische Funktionen die ich nicht mehr missen möchte und gespannt darauf bin, wie sie nun letzten Endes umgesetzt sind. In ca. 25 MB werde ich es wissen.

Großes Sicherheitsloch im wBB

Wednesday, February 23rd, 2005

In allen aktuellen wBB-Versionen gab es bis vorgestern ein großes Sicherheitsleck, durch das man sich Administratorrechte verschaffen konnte. Im Woltlab-Supportforum fragte jemand nach Informationen, ich habe ihm geantwortet; der Beitrag wurde innerhalb weniger Minuten geschlossen und kurze Zeit später entfernt. Bei Woltlab hält man also anscheinend nichts von Full Disclosure, schade…

Das Problem war, dass Werte aus $_COOKIE ungeprüft an die Datenbank geschickt wurden. Bei Woltlab ist man anscheinend davon ausgegangen, dass nur Werte in $_POST und $_GET validiert werden müssen, da ich auf einen ähnlichen Fehler der sich auf $_SERVER bezog bereits vor über 2 Jahren hingewiesen habe. Damals war es möglich, sich mit Hilfe von manipulierter UserAgents Administratorrechte zu verschaffen.

Dank dem nun bekannt gewordenen Loch war dies lange Zeit über Cookies möglich, die man von Hand bearbeitete. Schauen wir uns mal die Datei /acp/lib/session.php an:

Dort findet sich in Zeile 88 der Aufruf $wbbuserdata = getwbbuserdata($_COOKIE[$cookieprefix.’userid’], “userid”, 1);, das Cookie ‘userid’ wird an die Funktion getwbbuserdata (aus der Datei /acp/inc/functions.php) übergeben. Betrachtet man diese genauer, so findet man einen Fehler, der einfach vermeidbar ist und auf keinen Fall hätte auftreten dürfen – ohne den Entwicklern zu nahe treten zu wollen, aber dies war wirklich wie auch der oben genannte ein peinlicher Anfängerfehler.

Die Funktion getwbbuserdata($id, […]) sendet in den Zeilen 1406 bis 1411 folgende Datenbankabfrage: $wbbuserdata = $db->query_first(“SELECT u.* […] FROM bb”.$n.”_users u […] WHERE u.userid=’$id'”); Und hier das ungeheuerliche, die Variable $id erhält den ungeprüften Wert aus dem Cookie! Solche und ähnliche Fehler findet man des öftern im Internet, meist von weniger erfahrenen Programmierern verursacht. Er ist jedoch oft nicht ausnutzbar, da Werte aus Cookies bei vielen Hostern über die gpc_magic_quotes automatisch in nicht für SQL-Injections ausnutzbare Werte konvertiert werden. Dem ist man sich bei Woltlab jedoch bewusst gewesen, schließlich deaktiviert und umgeht man diese Funktion in den Zeilen 33 bis 38 der global.php. Man sollte daher eigentlich wissen, wie man mit solchen Werten aus $_SERVER und $_COOKIE verfahren sollte.

Doch zurück zur aktuellen Sicherheitslücke, und wie man diese ausnutzen kann. Wie oben gezeigt, wird also der Wert des ‘userid’-Cookies ungeprüft an die Datenbank abgesendet. Ändert man nun diesen Wert von beispielsweise “5” (Benutzer Nr. 5) in “X’ OR userid = ‘1″, so lautet die neue WHERE-Bedingung: WHERE u.userid=’X’ OR userid = ‘1’. Die Funktion getwbbuserdata() gibt in diesem Fall den Benutzer mit der ID 1 zurück, und dies ist standardmäßig der Administrator. Eine schlimme Sicherheitslücke!

Zusätzlich wird auch das Cookie ‘lastvisit’ nicht validiert, eine weitere Lücke.

Mit der oben beschriebenen Lücke ist es mir gelungen, auf einer unveränderten wBB-Installation Administratorrechte zu erlangen. Einen genauen Lösungsweg dafür werde ich nicht nennen, allerdings sollte dies für php- und SQL-bewandte Leute kein Problem darstellen. Die obigen Informationen sollen nicht als Anleitung zur Erschleichung von Dienstleistungen oder Datenmissbrauch betrachtet werden, sondern als Hinweis, sich mit der Sicherheit benutzter Software auseinander zu setzen. Sollte jemand weitere Fragen haben, immer her damit.

Nachtrag: Seit dem 02. März gibt es auch bei SecurityTracker näheres über den Fehler zu erfahren.

Die Warzen sind weg!

Tuesday, February 22nd, 2005

Die Warzen sind weg, dafür sind hier nun überall Stacheln. Nein, ich bin nicht krank, ich habe nur gestern Abend mein Ubuntu Linux von “Warty Warthog” auf “Hoary Hedgehog” und erfreue mich nun am neuen GNOME 2.10 mit neuer Panel-Struktur, einer schönen Lautstärkeregelung und endlich dem verbesserten Dateiwähler aus GTK+ 2.6 mit “Type Ahead Find”. Wirklich sehr schön, ebenso wie die neue Version von Totem, der nun endlich auch die eingebundenen PlugIns benutzt.

WordPress 1.5

Monday, February 21st, 2005

Seit einigen Tagen ist WordPress 1.5 raus, und auch ich habe mich dem Update nicht entziehen können. Die neue Version gefällt mir wirklich sehr gut, das neue Standarddesign gefällt ebenfalls und hat mich dazu verleitet, gleich mal einen neuen Header für meinen Blog zu erstellen. Bisher habe ich nur kurz in den Code geschaut, er scheint mir aber auf jeden Fall ordentlicher als zuvor zu sein. Fazit: Die neue Version ist wirklich rundum gelungen, ein Update lohnt sich.

Microsoft auf Werbezug

Tuesday, February 15th, 2005

Anlässlich der Eröffnung von Microsofts erster eigener Suchmaschine MSN, die übrigens Suchbegriffe wie “Adolf Hitler”, “Möpse” und “Sex” zensiert, starteten die Jungs aus Redmond eine nette Werbekampagne. “Wieso selber recherchieren, wenn wir das umsonst für Sie erledigen würden? Zur Feier der neuen Suchmaschine von MSN schenken wir Ihnen für einen Tag einen persönlichen Suchexperten, der Ihnen alles recherchiert, was Sie suchen.”. Klingt doch eigentlich ganz praktisch. Das dachten sich auch die Jungs (und Mädels?) von netzpolitik.org, die sich prompt zwei Jünger Microsofts in das Büro der Freie Software Presseagentur schicken ließ.

Microsoft-Leute auf Linux Terrain klingt lustig, das war es auch schon auf CeBit und LinuxTag, und natürlich auch in diesem Fall. Die Abgesandten Microsofts waren nicht in der Lage, die Microsoft-kritischen Fragen zu beantworten und räumten nach einem Telefonat mit ihrer Agentur das Feld.

Die ganze Story gibt es inklusive eines netten Fotos auf netzpolitik.org.