Archiv für die Kategorie » Sicherheit «

“aber ob und wann” die Lücke geschlossen wird…

Sonntag, 29. Januar 2012, 13:45 Uhr | Autor:

Vor ein paar Tagen habe ich mal wieder einen Hinweis zu einer XSS-Lücke verschickt. Mein Beispiel war die Injektion eines Bildes, mit einem JavaScript-Alert, also das übliche. Die Antwort kam sehr schnell:

Ich werde den Fehler natürlich umgehend an unser Technikteam in der *** Zentrale weiterleiten, aber ob und wann dort die Ressourcen zugeteilt werden um diesen Fehler zu beheben…

Den, den ich da angeschrieben habe, war nicht das Hotel um die Ecke oder ein Shop mit fünf Artikeln im System, es ist eine sehr bekannte Publikation die sich mit dem Thema IT-Sicherheit beschäftigt, also musste ich einfach noch einmal Antworten:

ich muss gestehen, Sie haben mich mit Ihrer Antwort verblüfft.

Bei einer Publikation die sich primär dem Thema IT-Sicherheit zuwendet, hatte ich nicht erwartet, dass es bei der Fehlerbehebung um das “ob” geht. :O)

Die Lücke ist nicht schwer zu finden, das heißt: Jedes Scriptkiddie kann sich als großer Hacker aufspielen, um an der Reputation von *** zu kratzen.

Der Cookie-Flag HttpOnly ist nicht gesetzt, weshalb der Session-Cookie per XSS ausgelesen werden kann. Die Session-ID ist nicht an die IP-Adresse des Benutzers gebunden. Das Fehlen dieser beiden Sicherungen, macht es einem Angreifer sehr leicht, per XSS in einen Benutzeraccount einzubrechen.

Das Session-Handling ist komplett fehlerhaft. Beim Übergang von http zu https wird die Session nicht gewechselt, was das Login per https (wegen der fehlenden IP-Bindung) ad absurdum führt. Es fehlt natürlich auch der Cookie-Flag Secure.

Die gleiche XSS-Lücke findet sich auch in den folgenden Seiten:
***.de
***.de
***.de
***.de
***.de

Am nächsten Tag war die XSS-Lücke dann schon gefixt, also hat jemand sehr schnell die “Ressourcen zugeteilt”. Aber die anderen Probleme bestehen weiterhin und es ist so gut wie sicher, dass es in der Seite irgendwo weitere XSS-Lücken gibt.

Das Login, wie es sein sollte per https:
itsec-login

Das Editieren im Benutzeraccount sollte aber auf gar keinen Fall unverschlüsselt erfolgen. Hier der Request bei der Änderung des Passwortes:
itsec-pw-edit

Das “Technikteam” weiß nicht so recht warum https verwendet wird. Sie haben wohl mal gehört dass man dieses komische SSL für Logins benutzen sollte, aber warum das gut sein soll? “Keine Ahnung, schadet ja nicht.” Anders ist es nicht zu erklären, warum es nur beim Login eine Verschlüsselung gibt.

Warum wird denn die Kommunikation zwischen Server und Client verschlüsselt?

Ohne Verschlüsselung sind Web-Daten für jeden, der Zugang zum entsprechenden Netz hat, als Klartext lesbar. Mit der zunehmenden Verbreitung von Funkverbindungen, die etwa an WLAN-Hotspots häufig unverschlüsselt ablaufen, nimmt die Bedeutung von HTTPS zu, da hiermit die Inhalte unabhängig vom Netz verschlüsselt werden.

Besser könnte ich es nicht in Worte fassen, deshalb als Zitat aus Wikipedia.
Quelle: http://de.wikipedia.org/wiki/Https

Die Cookie-Flags HttpOnly und Secure werden für den entscheidenden Session-Cookie nicht gesetzt:
itsec-cookie-flag

Der gesetzte HttpOnly-Flag würde dafür sorgen, dass der Inhalt der Cookies nicht per JavaScript (XSS) ausgelesen werden kann. Liebes “Technikteam”, dies macht ein Angreifer natürlich NICHT per alert(document.cookie), sondern so, dass das Opfer dies nicht bemerkt.

Der gesetzte Secure-Flag würde dafür sorgen, dass Cookies nur per https übertragen werden. Auch ein Man-in-the-middle könnte die Cookies nicht im Klartext lesen, womit diese unbrauchbar wären.

Das was das “Technikteam” da gebastelt hat, ist so unsagbar schlecht, dass in der “Zentrale” sofort einige Stellen neu besetzt werden müssten.


Wie man nur mit einer Session-ID bewaffnet in ein Benutzerkonto einbricht zeigt dies kurze Video:

Das Formular nimmt die Session-ID auf, generiert eine URL inkl. Cross-Site Scripting, welche an die anfällige Website geschickt wird. Die Injektion setzt einfach den Cookie für die Session-ID und leitet dann zur Profilseite des Opfers weiter, sehr einfach, deshalb sieht man in dem Video auch nicht viel. :O)

Die XSS-Lücke in Bebo ist nicht neu, die Verantwortlichen kümmert’s nur nicht, wohl weil es Benutzer sind, die nicht direkt Geld bezahlen.
http://xssed.com/mirror/67289/

Date submitted: 17/06/2010
Date published: 18/06/2010



Update: 01.02.2012 – 18:13 Uhr

Der Session-Cookie hat einen HttpOnly-Flag spendiert bekommen:
itsec-cookie-flag-2


Noch ein Link passend zum Thema XSS und HttpOnly:
Apache httpOnly Cookie Disclosure” (fd.the-wildcat.de)


Update: 01.02.2012 – 22:00 Uhr

Wie ich schon erwartete, habe ich eine weitere XSS-Lücke gefunden, aber Dank des HttpOnly-Flags kann nun der Session-Cookie nicht ausgelesen werden.
(Weil es kein Apache ist.)

Thema: Sicherheit, XSS | 2 Kommentare

Der verantwortungsvolle Umgang mit Sicherheitslücken

Dienstag, 1. November 2011, 12:32 Uhr | Autor:

Sicherheitslücken bei Hersteller von Smartphone-Apps” (gulli.com)

Die eigentlich aufgelösten AnonyPwnies – eine Splittergruppe des Onlinekollektivs Anonymous – wollen es noch einmal wissen und veröffentlichen einen letzten Leak. Dieser betrifft die Die Firma “appia.com”, die Shoplösungen für Smartphone-Software programmiert. Diese Shoplösungen weisen offenbar erhebliche Sicherheitslücken auf und ermöglichten den Pwnies das Kopieren großer Mengen sensibler Daten.

“LEAKS NEED THIS MUCH VOLUME – BY: ANONYPWNIES” http://pastebin.com/1HkZxwS4

2 Wochen lang blieb eine Reaktion auf eine SQL-Injection aus:

http://www.sicherheit-online.org/Aktuelle-Themen/Sicherheitslucke-bei-mobile2day.de-wird-ignoriert.html

Als wir das lasen, entschieden wir uns selbst nach der Lücke zu suchen und kamen mit 40GB SQL Backups, 2 GB PHP Scripten, 2 Rootserver Passwörtern, 2 Paypal Accounts und rund 100 GB Android/Windows Mobile/Symbian Apps zurück…


Sicherheitslücke bei mobile2day.de wird ignoriert” (sicherheit-online.org)

…nicht mit einem Erfolg zu verzeichnen.

Bitte was? “von Erfolg gekrönt” heißt es.

Wir bedauern, dass es zu diesen Übergriffen kommen musste.

Es musste nicht, aber wer Skriptkiddies Dreck in die Hand drückt, darf sich nicht wundern, wenn damit auch geworfen wird.

Der Verlauf vom ersten Hinweis bis zum heutigen Tag aber, zeugte mehr von Imkompetenz und Ingoranz, sowie von unprofessioneller Hinhaltetechnik von…

sicherheit-online.org ist inkompetent? Dies sehe ich genau so. Übrigens heißt es “Hinhaltetaktik”.

In dieser Nachricht wurde behauptet, dass keine Warnmeldung von Sicherheit-Online dort angekommen sei.

Wenn keine Bestätigung des Empfangs einer E-Mail versendet wurde, ist es nicht möglich, zweifelsfrei festzustellen, ob eine E-Mail empfangen und gar gelesen wurde.

Man wollte uns die Schuld daran geben, dass diverse “Scans” auf das Portal erfolgten und man behauptete, dass wir mit unserem Beitrag einen 0day Exploit veröffentlicht haben.

sicherheit-online.org hat die Schuld, wenn nun Kundendaten verbreitet werden und finanzielle Schäden bei den Kunden eintreten.

Zudem haben wir darauf hingewiesen, dass der Beitrag – sofern es keine Reaktion mehr geben sollte – wieder online geschalten und ein entsprechendes Update veröffentlicht wird.

Mit anderen Worte: Es wurde versucht eine Reaktion zu erzwingen, um nicht zu sagen, zu erpressen.

Die Verantwortlichen bei

sicherheit-online.org

sollten sich für den Vorgang – ernsthaft – schämen.

Dem ist nichts hinzuzfügen.

Uns trifft hier sicherlich keine Schuld, zumal ein Kontaktversuch stattgefunden hat.

Doch! sicherheit-online.org trifft die Schuld, dass die Skriptkiddys die Büchse öffneten, Daten kopierten und diese nun veröffentlichen werden. Wenn einem eine Lücke und die Schließung dieser wichtig ist, dann greift man auch mal zum Telefon, wenn per E-Mail keine Reaktion zu erhalten ist.

Wir möchten an dieser Stelle die “AnonyPwnies” bitten, Abstand davon zu halten, Kundendaten zu veröffentlichen…

Was für ein lächerlicher Appell. Und, im Straßenverkehr sollte man Abstand halten, ansonsten wird von einer Aussage oder Handlung Abstand genommen.


Wer in der IT-Sicherheit ernsthaft arbeitet, muss auch ein Gespür dafür haben, welche Lücken wie schwerwiegend sind. Eine SQL-Injection gehört eindeutig in die Kategorie von Lücken, die man nicht veröffentlicht, da damit Angriffe und irreparable Schäden provoziert werden. Die Domain und ein Screenshot, auch wenn etwas geschwärzt, reichen schon vollkommen aus, um dem Hinweis nachzugehen und in kürzester Zeit die Lücke zu finden. Das was sicherheit-online.org hier getan hat, ist einfach nur verantwortungslos.

Thema: Sicherheit, SQLi | 4 Kommentare