Laboratorio: Exploiting XXE to perform SSRF attacks
Last updated
Last updated
En este lab muy bien dice que la funcionalidad check stock implementa estructura de lenguaje de marcado en sus requests para poder acceder a los dato del backend mostrandolas en la response, pero mediante el XML, ahora bien se dice que hay un servidor EC2 de AWS corriendo, ese endpoint con esa ip en especifico es el que utilizaremos para hacer la falsificación de sitio del lado del servidor accediendo a info privada/confidencial, como si estuviesemos localmente en el server autenticados.
Entonces tomamos el endpoint:
web-security-academy.net/product?productId=1
Y hacemos el check stock:
Y vemos que nos devuelve unas unidades, bueno vamos a analizar la request POST de ese /check-stock
Si modificamos ProductId nos muestra las units de otros Id de products:
Entonces añadimos la DTD encima y luego llamamos la entidad externa del valor de datos en productId:
Nos devuelve un latest
Podemos intentar tal vez poner el endpoint latest ahí a ver que tal:
luego de eso me siguió pidiendo otros valores asi mismo, hasta llegar al payload final:
latest/meta-data/iam/security-credentials/admin
Y así tenemos las credenciales de AWS:
Ya con esto podemos perfeccionar nuestro ataque llevandolo por otros lados, la imaginación ya será el limite, pero tenemos credenciales muy importantes.