Server Side Request Forgery (SSRF) consiste en una vulnerabilidad web que permite a un atacante inducir al servidor a realizar peticiones HTTP a un dominio arbitrario de la elección del atacante.
Veamos como funciona.
Tenemos una pagina, perteneciente a John Woo (que en este caso no es el brillante director hongkones, autor de obras maestras como: Contra/Cara, Codigo Flecha Rota, El Killer, etc).
Encontramos que tiene para descargar un curriculum. Lo que nos puede llevar a pensar: ¿Dónde está alojado ese archivo?
Si copiamos el enlace de descarga, vemos que hay una peticion a un servidor con sitio en "secure-file-storage.com:8087". Esto es, por lo tanto, un servidor remoto.
La pregunta es ¿Podemos interactuar con ese servidor o colocarnos en el medio?
Por lo pronto configuramos NetCat para que escuche todo lo que sucede en el puerto 4444.
Colocamos nuestra IP y el puerto elegido para escuchar, lo hacemos reemplazando la dirección del servidor que hemos encontrado en el enlace.
NetCat escucha lo que pasa por el puerto 4444 y, finalmente, encuentra la bandera.
En este simple ejercicio podemos ver los peligros del SSRF.
El SSRF puede servir para objetivos mucho más graves que esta inofensiva interceptación. Recordemos que podriamos acceder al servidor remoto y recabar información e, incluso, intentar controlar alguna maquina remotamente.
NOTA: Todas estas pruebas fueron realizado en la página TryHackMe, un sitio que ofrece entornos controlados para practicar pentesting..
Estos procedimientos no deben realizarse a equipos ajenos sin una previa autorización.