Entries Tagged as 'Typo3'

Post von Kasper Skårhøj

Nachdem Korrupt und ich, Kasper eine Mail zu der Möglichkeit von XSS (Cross Site Scripting)-Attacken über tipafriend in Typo3 geschrieben haben ist gestern dann tatsächlich eine Antwort ins Haus geflattert.Was mich ein wenig verwundert, ist, das er schreibt das er Typo3 nicht berührt sieht von diesem Problem, da Typo3 ein sehr hohes Sicherheitsniveau hat.

Generally, TYPO3 has a high security level and I don’t see that affected by this issue.

Mittlerweile gibt es einen Bugfix zu diesem Problem auf typo3.org und eine kurze News dazu gibt es auch. Allerdings ist es völlig falsch, wie in der News geschrieben wird, dass es nicht möglich sei/gewesen sei Javascript-Code auszuführen, denn ich konnte auf etlichen Seiten Cookies auslesen über eingefädelte Javascripts und hätte diese Daten ohne weiteres bei mir in der DB loggen können. Wenn ich dazu komme, werde ich mal ein kleines Beispiel dazu posten. Wobei die eigentliche Problematik von XSS ja auch mehr in der Veränderung von Seiten zum Erwerb vertraulicher Daten von unbedarften Internet-Nutzern liegt.

Da bin ich anderer Meinung. Man muss nur kurz überlegen, in wie weit es in der Hand eines Entwicklers einer Extension liegt, ob und wie er Sicherheitsmechanismen von Typo3 nutzt oder nicht oder ob er einfach GET-Parameter z.B. direkt abgreift und wieder ausgibt, ohne sie auf die Validität und Sicherheit der Daten zu überprüfen.
Ins Repository stellen kann er seine Extension aber trotzdem und so lange das mit dem Review nicht so richtig anläuft auf typo3.org wird es auch immer einen Nutzer geben, der diese Extension downloaden und installieren wird.
Von Programmierung hat er gerade so viel Ahnung, dass er seine Extensions ans laufen bekommt. Den Quellcode einer Extension schaut er sich nicht an – wozu auch, er versteht ihn doch nicht. Er vertraut also auf die gewissenhafte Arbeit des Entwicklers – gewissenhaft sollte sie auch sein, aber ob sie es immer ist???

Klar. Ich bin sicher, das Typo3 einen hohen Standard an Sicherheit bietet, allerdings finde ich diese Antwort etwas blauäugig und etwas arrogant, wenn ich ehrlich bin.

Trotzdem bin ich aber dankbar, dass er zurückgeschrieben hat. Ich werde jetzt eine Mail ans Security-Team schicken und hoffe, dass ich dort eine etwas genauere Auskunft bekomme, die etwas mehr ins technische Detail geht – Vielleicht mit einem cc an Kasper…;)

Ach und noch was: wenn Kasper nicht mehr zuständig ist, sollte man ihn vielleicht als Author entfernen, bzw. als Zusatz den, der die Extension betreut mit aufführen.

Nachtrag: Der Link für das Bugfix funktioniert zur Zeit nicht nicht. Etwas schade…

Links zum Thema:
Aktuelles zu: Typo3/Extensions und XSS
XSS – Cross Site Scripting – Problematik bei typo3/tipafriend
gulli.com: Cross-Site-Scripting in Extensions schafft Angriffsmöglichkeiten
wikipedia zu XSS

TYPO3 3.8 (mit realurl) liefert keinen echten 404er

Weil ich es kürzlich nochmal gelesen habe in einer Mailingliste:
Typo3 in der Version 3.8 liefert keinen 404er als header, wenn man eine Fehlerseite definiert hat. z.B. im Setup eine HTML-Seite für die 404-Ausgabe eingestellt hat.

Typo3 leitet dann zwar brav auf die entsprechende Seite um, wenn es keine passende definierte Seite finden kann, aber als header wird ein “HTTP/1.1 200 OK” ausgeliefert und kein “HTTP/1.1 404 Not Found“, was natürlich nicht nur unschön ist, sondern eher fatal ist.

Ein einfacher, wenn auch nicht 100%tig schöner Weg ist es, das ganze in dem für die Frontend-Funktionen zuständigem File “class.tslib.php” zu beheben. Einfach zu Beginn der Funktion “pageNotFoundHandler()” folgende Zeile einfügen:

header("HTTP/1.1 404 Not Found");

Damit ist dies Sache dann erledigt und es wird auf jeden Fall ein 404er ausgeliefert, wenn eine Seite nicht existiert. In wie weit das noch ein Problem unter Typo3 4.0.1 ist, kann ich noch nicht sagen, werde ich aber über das Wochenende herausfinden, da ich dann an meiner Website weiterarbeiten werde.

Aktuelles zu: Typo3/Extensions und XSS

Vor knapp einer Woche hat Korrupt von gulli.com und habe ich eine Email an Kasper Skårhøj geschrieben, um von ihm ein Statement zu XSS und Typo3 bzw. zu einer XSS-Lücke in der Extension “tipafriend” zu bekommen.

Außerdem hätten wir ihn gerne zu Lösungsansätzen zu diesem Thema befragt. Leider hat er bisher nicht geantwortet und deswegen hat Korrupt heute eine News zum Thema rausgehauen, obwohl er lieber erst auf einen Patch und ein Statement von Kaspers Seite bzw. von Typo3s Seite gewartet hätte.

Eigentlich sehr schade. Aber vielleicht kommt ja doch noch was aus dieser Richtung. (Hintergründe, siehe auch hier)

XSS – Cross site scripting – Problematik bei typo3/tipafriend

In wie weit das Problem bei den Extensions von Typo3 verbreitet ist kann ich zur Zeit noch nicht sagen. Allerdings besteht es auf jeden Fall bei der Extension tipafriend. Ein Besucher von gulli.com hat uns darauf hingewiesen, dass man HTML-Skripte/Tags über den GET-Parameter “tipUrl” in das Skript schleusen und auf der Formularseite ausgeben lassen kann, da der GET-Parameter direkt wieder ins Template geparsed wird, ohne dass auf falschen Inhalt überprüft wird (XSS – Cross site scripting).

Ich habe das Problem behoben und zusätzlich ein weiteres kleineres entfernt. Es war bis jetzt möglich Jede beliebige Website-Url über unsere Tipafriend-Funktion an andere per Mail zu verschicken, was bei manchen Websiten bzw. deren Inhalt sehr unschön ist. Deswegen habe ich eine Überprüfung auf die richtige Domain eingebaut, um auszuschließen, dass das weiterhin möglich ist. Bei falscher Domain, wird die “tipUrl” nun einfach auf “http://www.gulli.com” geändert. [Read more →]