ThWboard Support-Forum (Archiv)

Ort: / Boardübersicht / Announcements / Thwboard Security Fix [Update]


Seite 1 von 1

dp schrieb am 20.04.2002 um 18:58 Uhr

Der folgende Fix behebt Sicherheitslücken, die durch Cross Site Scripting entstehen können:

inc/functions.inc.php

~line 494

$string = eregi_replace('\[img\]http://([^\[]*)\[/img\]', '<img src="http://\1" border="0">', $string);

ersetzen durch

$string = eregi_replace('\[img\]http://([a-zA-Z0-9_%\,\./=\?-]*)\[/img\]', '<img src="http://\1" border="0">', $string);


sowie
~line 489

$string = eregi_replace('\[url="([^"]*)"\]([^\[]*)\[\/url\]', '<a href="\1" target="_blank">\2</a>', $string);

ersetzen durch

$string = eregi_replace('\[url="http://([a-zA-Z0-9_%\,\./=\?-]*)"\]([^\[]*)\[\/url\]', '<a href="http://\1" target="_blank">\2</a>', $string);


Nach dem Einbaue des Fixes könnten manche Links nicht mehr funktionieren, da jetzt relativ strenge Regeln für URLs gelten. Nicht funktionierende URL's können hier gepostet werden..

Schnassel63 schrieb am 20.04.2002 um 22:16 Uhr

DP

wie wärs, wenn Du es hier im Board auch schnell fixen würdest!
es gibt nämlich einige threads wo bilder benötigt werden, damit der post auch noch verstanden wird :(

schau mal Hier nach, dmit du auch sehen kannst was ich meine

danke
.

Luki schrieb am 26.04.2002 um 14:58 Uhr

Achtung
Sicherheits Problem besteht weiterhin:

http://www.thwboard.de/support/showtopic.php3?threadid=1891

dp schrieb am 28.04.2002 um 14:52 Uhr

ich hab den post jetzt geupdatet, aber die lösung ist immer noch als temporär anzusehen, bis eine bessere lösung gefunden ist.

Luki schrieb am 28.04.2002 um 16:21 Uhr

1.) http://techupdate.zdnet.de/story/0,,t422-s2104553,00.html sowie ftp://***** etc.-> funktioniert nicht!!!

2.) ist der Fix in diesem Board schon eingebaut?

Jonas schrieb am 28.04.2002 um 16:22 Uhr

AHRG!
lukas: wenn du z.b schreibst http://www.xyz.de, das ist ne saugeile seite!
dann wird das komma mit als link gewertet! gut dass es net so ist!!! *grmpf* ;)

Luki schrieb am 28.04.2002 um 16:30 Uhr

... okay, damit hast du ja recht und das ist auch richtig so!! aber wenn ich das in [url ] [/url ] angebe...!!!?? geht das dann weiterhin??? (mit fix?)

Andy schrieb am 28.04.2002 um 16:34 Uhr

hmm? bei mir funktioniert alles...

Jonas schrieb am 28.04.2002 um 16:48 Uhr

musst du austesten l.

Piti schrieb am 28.04.2002 um 17:03 Uhr

Also bei mir geht geht url="mailto:test@test.de"]mail[/url] nicht mehr wenn der fix drine ist

SyntaxError schrieb am 28.04.2002 um 20:40 Uhr

Ich kann Pitt nur zustimmen. Bei mir geht das MailTo auch nicht mehr.

Jonas schrieb am 28.04.2002 um 20:51 Uhr

liegt wohl an nem ausgeschlossenen doppelpunkt...
@dp: füg am besten nen mailcode ein, dann is auch das prob gegessen...

Schnassel63 schrieb am 29.04.2002 um 09:17 Uhr

ich habe bei mir den erweiterten thwb-code-hack drin und damit geht auch mailto ;) nach dem fix

Piti schrieb am 29.04.2002 um 16:46 Uhr

Also habe mit grosser Hilfe von Schnassel63 den thwb code hack eingebaut und jetzt geht auch bei mir alles.

@Schnassel63 special thx für Deine mühe

Gruss Piti !

Jonas schrieb am 29.04.2002 um 16:48 Uhr

hm, habt ihr da auch mal die javascript sachen ausprobiert?

Piti schrieb am 29.04.2002 um 16:50 Uhr

Jo mit dem window.open und alert befehl dann steht da nur noch der text von dem was man gepostet hat ;)

Gruss Piti !

Schnassel63 schrieb am 30.04.2002 um 10:53 Uhr

@dp

es scheinen je einige URL-Tags ihre aufgabe nicht mehr so zu erfüllen wie es vor dem fixes war, siehe meinen eintrag mit der nummer 001 ganz oben.
nun habe ich ein bissel getüfftelt und habe nun folgende code (mit diesen gehen alle URLs wieder ob mit oder ohne URL-Tags)

Nun meine frage, kann ich das so lassen, oder gibt es da wieder ein sicherheitsproblem?!?

        // [ url ] & [ /url ]
                $string = eregi_replace('\[url]http://([^\[]*)\[\/url\]', '<a href="http://\1" target="_blank">\1</a>', $string);
                $string = eregi_replace('\[url]([^\[]*)\[\/url\]', '<a href="http://\1" target="_blank">\1</a>', $string);

        // [ url="" ] & [ /url ]
  $string = eregi_replace('\[url="www.([a-zA&-Z0-9_%\,\./=\?-]*)"\]([^\[]*)\[\/url\]', '<a href="http://www.\1" target="_blank">\2</a>', $string);
  $string = eregi_replace('\[url="http://([a-zA&-Z0-9_%\,\./=\?-]*)"\]([^\[]*)\[\/url\]', '<a href="http://\1" target="_blank">\2</a>', $string);



[EURdit]

konnte bei mir keine Probleme wegen der Sicherheit feststellen, habe ja in meinem Test-Forum so einen netten eintrag bezüglich des CSS erhalten und das prob scheint bei mir weiterhin behoben (Sicherheitsproblem)

dp schrieb am 30.04.2002 um 14:06 Uhr

also ich habs mir jetzt nicht weiter angesehen, aber ich habe hier die finale änderung praktisch fertig. damit werden dann wieder alle links wie gewohnt gehen, es wird lediglich javascript: mit javascript%3A ersetzt. damit ist javakram abgedeckt, weitere lücken sind mir da jetzt nicht bekannt.

also geduldet euch bitte noch ein wenig :)

Piti schrieb am 02.05.2002 um 18:44 Uhr

Wir gedulden uns :)

Luki schrieb am 02.05.2002 um 18:48 Uhr

...ein wenig *g* :D

sorry - bin halt ein fan!

Piti schrieb am 05.05.2002 um 18:12 Uhr

Wollte nur mal fragen ob wir vergessen wurden, wir die treuen 2.73er ;)

Gruss Piti !

Seite 1 von 1