Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Plantillas del servidor: cómo se reconocen en la evidencia

5 tareas · 40 min · Principiante

Un motor de plantillas del servidor existe para mezclar una plantilla con unos datos y producir una página, un correo o un documento. El problema aparece cuando el texto de una persona deja de ser uno de esos datos y pasa a formar parte de la plantilla. Esta sala lee el inventario de vistas de Editorial Cachipay y el registro de renderizado de tres días, aprende a distinguir una plantilla que vive en un archivo de una que se arma en memoria, y reconoce en el registro el síntoma que separa este hallazgo de uno del lado del navegador. No se envía ninguna entrada a la plataforma.

0 de 5 · 0%

Objetivo de la sala

Un motor de plantillas del servidor existe para mezclar una plantilla con unos datos y producir una página, un correo o un documento. El problema aparece cuando el texto de una persona deja de ser uno de esos datos y pasa a formar parte de la plantilla. Esta sala lee el inventario de vistas de Editorial Cachipay y el registro de renderizado de tres días, aprende a distinguir una plantilla que vive en un archivo de una que se arma en memoria, y reconoce en el registro el síntoma que separa este hallazgo de uno del lado del navegador. No se envía ninguna entrada a la plataforma.

El uso correcto de un motor de plantillas tiene dos piezas separadas: la plantilla, que escribió el equipo y vive en un archivo del repositorio, y el contexto, que es el conjunto de valores que se le pasan al renderizar. El texto de la persona pertenece al contexto. Si ese texto se concatena al cuerpo de la plantilla antes de renderizar, el motor lo lee como plantilla y evalúa lo que encuentre dentro.

La diferencia con un fallo del lado del navegador es dónde ocurre: aquí la evaluación pasa en el servidor, con los permisos del proceso de la aplicación, y por eso la severidad no se parece. MITRE lo cataloga aparte, en CWE-1336, dentro de la familia de inyección.

Responde para continuar

¿Qué hace que un motor de plantillas se convierta en un hallazgo del lado servidor?

Ver pista de ayuda

Una de las tres opciones describe un fallo que se ejecuta en el navegador, no en el servidor.

En un repositorio sano todas las plantillas son archivos. Cuando una vista arma la plantilla como una cadena en tiempo de ejecución es siempre por una razón de negocio —un texto configurable, un mensaje personalizado— y es ahí donde entra el texto de la persona.

Abre el laboratorio y compara, vista por vista, de dónde sale la plantilla y qué papel tiene el texto de quien escribe.

Responde para continuar

Escribe el identificador de la vista cuya plantilla se arma en memoria al ejecutar.

Ver pista de ayuda

Ejecuta `SELECT * FROM plantillas` y mira la columna del medio de cada fila.

El registro de la aplicación es la mejor evidencia de esta familia, y casi nadie la pide. Un error del motor que nombra un archivo cuenta un problema normal de desarrollo. Un error del motor que no puede nombrar ningún archivo está diciendo que la plantilla que falló no existía en disco: se construyó al vuelo.

Cuenta esas entradas en el registro del periodo. Son la prueba de que el camino que viste en el código se recorre de verdad.

Responde para continuar

¿Cuántas entradas del registro corresponden a errores de una plantilla sin archivo?

Ver pista de ayuda

Ejecuta `SELECT * FROM registro` y cuenta solo los mensajes de error que no nombran ningún archivo.

En el registro hay una entrada distinta de las demás: no es un error, es la descripción de lo que recibió el destinatario de una carta. Ese tipo de observación —el documento devuelve el resultado de algo que la persona escribió como texto— es lo que confirma que el motor evaluó la entrada en lugar de mostrarla.

Es también la evidencia que se cita en el informe, porque se entiende sin saber nada del motor: quien lo lee ve que el servidor hizo una cuenta que nadie le pidió.

Responde para continuar

La carta enviada mostraba un número donde la persona había escrito una operación aritmética. ¿Qué prueba eso?

Ver pista de ayuda

La operación se resolvió antes de que el documento existiera; pregúntate quién la resolvió.

La corrección tiene una sola forma: la plantilla vuelve a ser un archivo del repositorio y el texto de la persona pasa como valor del contexto. Si el negocio exige que alguien pueda editar el texto, ese texto se trata como contenido —se inserta ya renderizado, nunca como plantilla— y quien lo edita es una función de administración con su propio control de acceso.

Reducir los permisos del motor o quitarle funciones ayuda como segunda capa, pero no es la corrección: la causa sigue siendo que la entrada se interpreta.

Responde para continuar

¿Qué escribes como corrección del hallazgo de las cartas a autores?

Ver pista de ayuda

Dos de las tres reducen el daño; solo una quita la causa.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad