Categorías
Programacion de Hacking

Local File Inclusion

La vulnerabilidad Local FIle Inclusion consiste en el hecho de que en ocasiones en la URL de una página web pueden estar indexados ficheros a los que un atacante no debería tener acceso, esto se produce cuando al modificar una serie de parámetros que veremos a continuación, se puede llegar a leer archivos como el /etc/passwd/ de los sistemas Linux, haciendo así vulnerable al servidor.

Por tanto, crearemos un programa que nos automatice el saber si una web tiene este fallo de seguridad. 

Como siempre procederemos a introducir las librerías que emplearemos, en este caso serán sys y request.

Ahora insertaremos nuestro KeyboardInterrupt para posibilitar la salida del programa y prevenir fallas. 

El siguiente paso consistirá en introducir dentro del programa la variable que contendrá la URL a auditar. 

Definiremos nuestro método main y cimentaremos la lógica de nuestro programa, para ello buscaremos por internet un diccionario como este para este tipo de prácticas, en el que en cada línea se escribe una serie de parámetros para inyectar junto a la web.

Abriremos y leeremos cada línea del fichero, esto lo haremos con la función Split, también especificaremos el User-Agent, nosotros emplearemos Chrome, pero se podría utilizar Mozilla o cualquier otro. 

Insertamos un print que especifique en que URL se inicia el proceso, para diferenciarlo una vez comience el programa en su parte superior e inferior insertaremos dos líneas con asteriscos. 

Ahora comenzaremos una función for en la que recorreremos el archivo file línea a línea, cada consulta contendrá la url una cadena de texto y el headers. 

Para crear un listado con los resultados buscaremos dentro de cada contenido la palabra “root” en caso de que la identificación sea positiva le daremos salida por pantalla con un print, y lo pondremos marcado entre guiones para separarlo. En caso contrario daremos un pass para que continue.

El resultado final del programa debería ser algo similar a esto.

Una vez iniciado el programa veremos que el rastreo se inicia de varias formas, si lo realizamos en una pagina bien protegida contra esto ataques veremos esto, simplemente seguira buscando hasta acabar el diccionario.

En caso contrario nos devolverá aquellas rutas en las que haya encontrado la palabra root.