Saltar al contenido
uencoder

Template Injection

La inyección de plantillas del lado servidor (SSTI) consiste en que atacantes inyectan sintaxis de plantilla en el contexto de renderizado, ejecutando código arbitrario en el motor de plantillas del servidor.

Propósito

Comprender la SSTI causada por entradas de usuario que alcanzan el renderizado de plantillas y sus defensas; una vulnerabilidad común en Jinja2/Freemarker y similares.

Mecanismo

El programa renderiza la entrada del usuario como plantilla vía template.render(user_input); el atacante introduce {{7*7}} o {{config}} para ejecutar expresiones o filtrar objetos. Defensas: separar plantillas de datos, sandboxing y renderizado seguro.

Casos de uso

  • SSTI en Jinja2
  • Seguridad de Freemarker
  • Auditoría de motores de plantillas

Herramientas relacionadas

References