Okt 26 2005
Neuer Fehler in phpBB
Eben erreichte mich die Nachricht, dass ein neuer Fehler in phpBB Version 2.0.17 (derzeit zum Download noch empfohlen) aufgetaucht ist. Es handelt sich dabei um einen Cookie-Disclosure-Exploit. Wie bereits in der Version 2.0.16 soll es damit möglich sein, Cookie Informationen an andere Server zu senden und somit Benutzerdaten auszulesen. Diesesmal sind jedoch nur User mit dem Internet Explorer betroffen, wie auf securiteam zu lesen ist.
Danach führt der Internet-Explorer Code in fehlerhaften Bildern aus und kann somit Daten auslesen. Dies geschieht dadurch, dass der Internet-Explorer den Bild-Inhalt nicht nur als Bild, sondern auch als HTML-Code interpretieren kann (bekanntermaßen ist der IE recht fehlertollerant und akzeptiert falsche Header-Anweisungen - hier ein Schuss in den Ofen). Dieser Code wird dann gerendert.
Administratoren sind dazu aufgerufen, hochgeladene Daten entweder nicht zu akzeptieren oder den Inhalt genau zu prüfen (was ja eigentlich sowieso gemacht werden sollte, es in phpBB aber derzeit noch nicht gemacht wird). Die Entwickler von phpBB wurden bereits informiert, der Fehler soll in der Version 2.0.18 behoben werden.
[Update]
Interessant ist für Forenbetreiber und Entwickler evtl. diese Wiki-Seite. Danach gibt es ein Apache-Modul, welches den Inhalt einer Datei prüft und somit fehlerhafte Bilder nicht als Bilder ausliefert. Ebenfalls ist hier ein Code zu finden, mit dem man in PHP prüfen kann, ob ein Bild einen korrekten Header hat. Damit könnte man fehlerhafte Bilder bereits beim Upload ablehnen (es sei denn, man bindet externe Bilder ein, auf die man keinen Zugriff hat).
^




Wie unter http://www.scip.ch/cgi-bin/smss/showadvf.pl?id=1746 zu lesen ist, sind derzeit nur GIF-Bilder von der Problematik betroffen und zwar nur dann, wenn die Bilder mittels Stream von einem Webserver geladen werden (also keine lokalen Bilder). Diese Bilder könnten z.B. mit PHP geprüft werden, indem man die Bilder in ein String ladet (file_get_contents) und auf Script-Elemente prüft.