Basic server-side template injection
Laboratorio de Portswigger sobre SSTI
Certificaciones
- eWPT
- eWPTXv2
- OSWE
- BSCP
Descripción
Este laboratorio es vulnerable a un Server Side Template Injection (SSTI) del lado del servidor debido a la construcción insegura de una plantilla ERB. Para resolver el laboratorio, debemos revisar la documentación de ERB para descubrir cómo ejecutar código arbitrario y luego elimina el archivo morale.txt del directorio de inicio de Carlos
Guía de SSTI
Antes de completar este laboratorio es recomendable leerse esta guía de SSTI https://justice-reaper.github.io/posts/SSTI-Guide/
Resolución
Al acceder a la web nos sale esto
Si pinchamos en la primera imagen nos arrojará un mensaje y la url https://0ac000d204d6982782c43ea700df00bd.web-security-academy.net/?message=Unfortunately%20this%20product%20is%20out%20of%20stock también lo mostrará
Teniendo en cuenta que se usa la plantilla ERB, he probado varios payloads https://book.hacktricks.xyz/pentesting-web/ssti-server-side-template-injection#erb-ruby en el parámetro message hasta dar con <%= 7*7 %> el cual ha funcionado correctamente, haciendo que la web me muestre el resultado de la operatoria
Usamos este payload <%= system("ls") %> podemos ejecutar comandos
Usando este payload <%= system("rm morale.txt") %> borramos el archivo y resolvemos el laboratorio





