viernes 19 de junio de 2009

Pen-Test: Full Path Disclosure

Hace tan solo unas horitas un amigo encontro esta vulnerabilidad en una web gubernamental si no me equivoco y pues dije por que no poner un poco de lo clásico ;) asi que aquí estamos vamos a hablar de una de las técnicas no solo mas arcaicas sino menos utilizadas pero en algunos casos útiles; primero quisiera contarles de que se trata esta vulnerabilidad pues es muy simple se trata de encontrar las rutas reales del servidor, digamos si la web es www.webvulnerableatodo.com/script/indexfpd.php pues lo natural o que alguien creería pues sería que el path sería algo como:


/home/hacker/script/indexfpd.php --> esta ruta podrian ser real pero para que engañarnos en realidad no sabemos si ese sea el path entonces con esta técnica podriamos encontrar los verdaderos path, pues a que me refiero a los típicos errores de:



Warning: main(/include/invitation/peru.php): failed to open stream: No such file or directory in /home/hacker/include/global.php on line 18

entonces nuestra idea sería explotar un Bug de LFI algo como:

$path = "/include/hacker/index.html".$_GET['page']; include($path);

bueno ahora si llegamos a la parte práctica, como hacemos para provocar estos errores?

pues una manera es añadiendo un magic quote despues de una variable mal usada como vemos aquí:


O en donde hay registros pues con el Null Session Cookie
usando el siguente code:

javascript:void(document.cookie="PHPSESSID=");

o bueno tambien pueden usar la creación de un falso array...

Pagina normal:
http://vul.com/index.php?page=about
Con el Array:
http://vul.com/index.php?page[]=about
bueno es muy facil encontrar webs vulnerables a esto inclusive podriamos buscarlas en 
google y las encontrariamos...

Saludos
Dr.White