Está en la página 1de 4

Practica 1: Inyección de Comandos.

Como hemos visto en el temario, la inyección de comandos es una de las vulnerabilidades más
criticas que nos podemos encontrar debido a su alcance. Un atacante seguirá los siguientes
pasos para encontrar la vulnerabilidad.

1. Analizar la Web en busca de vectores de ataque.


2. Investigar que funciones tienen los archivos php.
3. Tratar de inyectar el código.

Antes de empezar observa este enlace, te puede ayudar: HackTricks_Command_Injection

IMPORTANTE: En esta práctica estaremos utilizando una máquina atacante (la que vosotros
usareis.) y una máquina víctima que contendrá las diferentes vulnerabilidades. Si estás
realizando la practica en tu casa puedes poner las máquinas en modo puente, si estás en clase
te recomiendo crear una NAT para una mayor facilidad. Para realizar la práctica debes sacar
capturas de pantalla.

1. Comprensión de la máquina victima – OWASP MULTIDAE II

OWASP MULTIDAE II es un proyecto que recoge diferentes laboratorios que permiten practicar
el hacking web. Cuando iniciemos la máquina virtual nos saldrá un mensaje con la dirección IP
asociada a la máquina.

→ Accederemos vía web a los laboratorios. Una vez accedamos veremos lo siguiente.

pág. 1
→ Estos son los diferentes laboratorios para realizar las prácticas, en este caso utilizaremos
DVWA (Damm Vulnerable Web Application)

El usuario y contraseña por defecto es admin/password. Una vez accedamos podemos ver los
módulos que podemos practicar a la izquierda.

→ Entraremos en Command Execution.

pág. 2
2. Explicación de explotación

En este caso la web ofrece un servicio para hacer ping.

Aquí como atacantes tenemos que pensar como se está haciendo ese ping por detrás (a nivel
de código)

Estos son los datos recogidos con BurpSuite. Como estamos enfrentándonos a una máquina
Linux podemos probar diferentes cosas. Qué pasa si este ping se está ejecutando a nivel de Shell.

En Linux hay diferentes formas de concatenar comandos.

• Usando &
• Usando &&
• Usando ;
• Usando |
• Usando ||

pág. 3
→ Veamos un ejemplo:

¿Qué pasaría si hacemos esto en la página?

3. Te toca ahora a ti.

1. Ejecuta un ping normal en la web. ¿Cuál es el resultado?


2. Captura la petición con BurpSuite ¿Qué tipo de petición se está efectuando (GET,POST…)?
3. Trata de inyectar un comando. ¿Qué has usado para concatenarlo?
4. ¿Qué usuario está ejecutando el servidor web?
5. Intenta inyectar un comando con || ¿Funciona, explica por qué?
6. Si no funciona el ejercicio anterior, trata de que funcione.
7. Trata de establecerte una reverse Shell (subida de nota)

pág. 4

También podría gustarte