Seite 1 von 4

Diskussion zu Mögliche XSS-Schwäche

Verfasst: 10.09.2003 06:35
von itst
Hier könnt ihr eure Meinung zu Mögliche XSS-Schwäche abgeben.
In diesem Beitrag auf Bugtraq wird beschrieben, wie ein phpBB 2.0.x über den BBCode [url] fremden Code per Javascript ausführen kann.

Die phpBB Group ist informiert.

Verfasst: 10.09.2003 07:33
von Dennis63
Hi

Ich habe gerade nen 2.0.3er Board getestet. Dort geht es nicht. Sobald ein " oder ein [Leer] Zeichen da ist, wird der BB-Code nicht erkannt.

Der Test: [url=http://www.google.de" onclick="alert('Hello World')]Hier ist JAVA-Script mit drinne (Nichts gefährliches, nur ein "hello world"!!![/url]

Grüße
Dennis

Verfasst: 10.09.2003 07:53
von Pyramide
Ich dachte, den Bug gabs früher mal aber er wurde inzwischen behoben :roll:

Verfasst: 10.09.2003 11:58
von Gast200921
Hallo,

wir haben einen vorübergehenden Fix gefunden. Unsere Änderung im Code verhindert wirkungsvoll, daß das Javascript eingebunden werden kann, hat aber auch zur Folge, daß der beschreibende Text zu einer URL nicht immer angezeigt wird, sondern stattdessen die URL selbst. Funktionieren tut der Link so oder so und wir können vorübergehend mit dieser Lösung leben, bis die phpBB-Group etwas Offizielles vorstellt.

Usere Variante:

Code: Alles auswählen

---[ÖFFNE ./includes/bbcode.php]---

---[SUCHE]---
// [url=xxxx://www.phpbb.com]phpBB[/url] code..
$patterns[] = "#\[url=([\w]+?://.*?[^ \"\n\r\t<]*?)\](.*?)\[/url\]#ies";
$replacements[] = "stripslashes(".$bbcode_tpl['url3'].")";

---[ERSETZE DURCH]---
// [url=xxxx://www.phpbb.com]phpBB[/url] code..
// $patterns[] = "#\[url=([\w]+?://.*?[^ \"\n\r\t<]*?)\](.*?)\[/url\]#ies";
$patterns[] = "#\[url=([\w]+?://(([\w\-]+\.)*?[\w\-]+\.[a-z]{2,4}(:?[0-9]*?/[^ \"\n\r\t<]*)?))\](.*?)\[/url\]#ies";
$replacements[] = "stripslashes(".$bbcode_tpl['url3'].")";
Änderung wie immer auf eigene Gefahr, wenn Dein Server danach seine Festplatte formatiert, anstatt die Links in der von mir beschriebenen Art und Weise anzuzeigen, dann tut mir das herzlich leid. :wink:


Grüße,
cyberWolf

Verfasst: 10.09.2003 13:20
von codemonkey
Mit 2.0.6 wird tatsächlich Java Script ausgeführt. Das ist gar nicht gut.
Hoffentlich reagiert die phpBB Group schnell genug.

Verfasst: 10.09.2003 15:38
von blackm
Die bei denen die Loesung von cyberWolf nicht funktioniert sollte folgende Zeile nehmen:

Code: Alles auswählen

$patterns[] = "#\[url=([\w]+?://(([\w\-]+\.)*?[\w\-]+\.[a-z]{2,4}(:?[0-9]*?/[^  "\n\r\t<]*)?))\](.*?)\[/url\]#is";
by, Martin

Verfasst: 10.09.2003 17:30
von blackm
blackm hat geschrieben:

Code: Alles auswählen

$patterns[] = "#\[url=([\w]+?://(([\w\-]+\.)*?[\w\-]+\.[a-z]{2,4}(:?[0-9]*?/[^  "\n\r\t<]*)?))\](.*?)\[/url\]#is";
Ich hab den regex nochmal angepasst, es gab mit einigen URL's Probleme

Code: Alles auswählen

$patterns[] = "#\[url=([\w]+?://[\w\-]+\.*?[\w\-]+\.[a-z]{2,4}:?[0-9]*?/?[^ "\n\r\t<]*?)\](.*?)\[/url\]#is";
by, Martin

Verfasst: 10.09.2003 17:34
von codemonkey
Ich würde sagen, ihr wartet die paar Tage auf die phpBB Group und dann gibt es einen vernünftigen Fix.

Verfasst: 10.09.2003 17:47
von Gast200921
Ohne Zweifel ist es sinnvoll bei Erscheinen des offiziellen Patches diesen so bald wie möglich in sein Forum zu integrieren. Aber aus meiner Sicht spricht nichts dagegen, vorher schon auf eigene Faust [und eigenes Risiko] zu versuchen, sich dieses Javascriptes zu entledigen.
:wink:
Sicherlich werde ich hinterher prüfen, ob ich meinen Code nicht doch besser durch den offiziellen Code ersetzen sollte.


Grüße,
cyberWolf

Verfasst: 10.09.2003 19:17
von Henne