kritischer Fehler in phpBB-Modul Mail2Forum

Wie heise heute berichtet, ist ein kritischer Fehler im Modul Mail2Forum vorhanden, so dass durch dieses Modul beliebiger PHP-Code auf dem eigenen Rechner auszuführen ist.

Das Problem liegt wie immer daran, dass man die Variablen nicht genug prüft. Wie so oft kann man das Problem dadurch lösen, dass man register_globals deaktiviert. Ein Patch ist derzeit noch nicht verfügbar.

Das Problem ist in der Weise verständlich, wenn man folgenden Code (fiktiv) anschaut:


< ?php if($user=="admin" && $password=="blubb") { $login = TRUE; } if($login) { /* … */ } ?>

Hier sieht man sofort, dass bei aktiviertem register_globals eine Anmeldung extrem einfach ist. Man muss nur eine Adresse nach dem Motto http://domain.de/index.php?login=true setzen. Man braucht die Zugangsdaten gar nicht kennen. Das Problem würde also gelöst werden, indem man vorher auf $login prüft oder einen else-Zweig integriert (hier ein Muss!). Dass dies viele Programmierer vergessen, ist meiner Meinung nach nachvollziehbar (nicht jeder Fall ist so einfach wie dieser hier gestrickt). Auch wenn register_globals für den Anfänger einfach ist, so birgt diese Funktion doch große Gefahren und sollte dringend deaktiviert werden (zumal ab PHP 6 diese Funktion nicht mehr Bestand haben wird).

Ein Gedanke zu „kritischer Fehler in phpBB-Modul Mail2Forum

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.