Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

La salida del modelo como dato no confiable

5 tareas · 35 min · Principiante

Lo que escribe un modelo casi nunca se queda en la pantalla del chat: viaja a una página, a una consulta, a una orden del sistema, a una hoja de cálculo. Cada uno de esos destinos interpreta el texto a su manera, y el texto lo influyen personas que la aplicación no controla. En esta sala lees el inventario de destinos de Pabilo, el asistente de siniestros de Tizón Seguros (aseguradora inventada), y la traza de un caso donde un documento de un tercero terminó interpretado en el panel interno. Todo es lectura de evidencia ficticia; no se ejecuta nada.

0 de 5 · 0%

Objetivo de la sala

Lo que escribe un modelo casi nunca se queda en la pantalla del chat: viaja a una página, a una consulta, a una orden del sistema, a una hoja de cálculo. Cada uno de esos destinos interpreta el texto a su manera, y el texto lo influyen personas que la aplicación no controla. En esta sala lees el inventario de destinos de Pabilo, el asistente de siniestros de Tizón Seguros (aseguradora inventada), y la traza de un caso donde un documento de un tercero terminó interpretado en el panel interno. Todo es lectura de evidencia ficticia; no se ejecuta nada.

En una aplicación clásica, el texto que llega de fuera se trata con desconfianza: el formulario del cliente se valida, se codifica antes de mostrarlo y nunca se pega dentro de una consulta. Con un modelo dentro aparece una tentación: pensar que lo que escribe el modelo es «nuestro», porque lo genera nuestro sistema. No lo es. El modelo escribe a partir de lo que leyó, y lo que leyó incluye el mensaje del cliente, los documentos adjuntos, los correos de terceros y lo que recuperó de una base de documentos. Cualquiera de ellos puede empujar la salida hacia una forma que nadie previó.

Además, el modelo no garantiza la forma de lo que produce: la misma petición puede devolver un texto limpio un día y uno con marcado, comillas o caracteres especiales al siguiente. Por eso la regla de diseño es sencilla de decir: la salida del modelo se trata como una entrada no confiable más, con los mismos controles que se le pondrían a un texto escrito por un desconocido. La lista de riesgos de OWASP para aplicaciones con modelos de lenguaje lo recoge en su edición de 2025 como el manejo inadecuado de la salida (LLM05:2025).

Responde para continuar

¿Por qué la salida de un modelo se trata como un dato no confiable aunque la genere la propia aplicación?

Ver pista de ayuda

Piensa en quién escribió lo que el modelo leyó antes de responder.

Cuando una salida causa un problema, la primera pregunta de la investigación no es «qué dijo el modelo», sino «de dónde salió lo que dijo». Si el texto vino del propio cliente, el riesgo es uno; si vino de un documento que subió un tercero y que nadie revisó, la superficie es mucho más ancha, porque cualquiera que logre que su documento llegue a un caso puede influir en lo que el asistente escribe. Es la versión de salida de la inyección indirecta que viste en el módulo 2.

Abre la traza del caso SIN-40218. Sigue el hilo desde lo que se adjuntó hasta lo que se vio en el panel, y localiza el documento del que salió el texto que el navegador terminó interpretando.

Responde para continuar

¿De qué adjunto salió el texto que el navegador de la ajustadora interpretó como parte de la página? Escribe su identificador.

Ver pista de ayuda

Con la terminal, `cat tizon/traza-SIN-40218.txt`. Busca qué copió literal el resumen.

No todo destino es igual de peligroso. Un texto que se muestra como texto plano, o que solo se guarda, no se ejecuta: lo peor que hace es verse raro. El riesgo aparece cuando el destino interpreta el texto: un navegador que lo trata como marcado, una base de datos que lo trata como consulta, un intérprete de órdenes que lo trata como comando, una hoja de cálculo que evalúa como fórmula lo que empieza por un signo igual. Ahí el texto deja de ser dato y pasa a ser instrucción para otro sistema.

El inventario dice, para cada destino, cómo trata el texto y qué control se le aplica antes. Cuenta los destinos que interpretan la salida (como marcado, consulta, orden, objeto o fórmula) y no tienen ningún control. Los que la tratan como texto plano no cuentan, aunque digan «ninguno».

Responde para continuar

¿Cuántos destinos interpretan la salida de Pabilo y no le aplican ningún control antes de usarla? Escribe solo el número.

Ver pista de ayuda

Con la terminal, `cat tizon/destinos.txt`. Cruza la tercera columna con la última.

Una salida casi nunca va a un solo sitio. El mismo resumen que se ve en una tarjeta puede acabar en una exportación, un correo o un registro, y cada copia se interpreta con reglas distintas. Por eso, al investigar, no basta con cerrar el destino donde alguien vio el problema: hay que seguir la salida a todos los sitios a los que viajó y preguntarse qué hace cada uno con ella.

En la traza del caso aparecen los destinos a los que se envió el resumen. Uno es el panel. Busca el otro y compruébalo en el inventario: también interpreta el texto y tampoco tiene control.

Responde para continuar

Además de la tarjeta del panel, ¿a qué destino se envió el mismo resumen? Escribe su identificador.

Ver pista de ayuda

La línea de las 10:03 de la traza nombra dos destinos; busca el segundo en `tizon/destinos.txt`.

La tentación, después de un caso así, es arreglarlo en las instrucciones del modelo: «no copies marcado», «no escribas fórmulas». Eso reduce la frecuencia, pero no la garantiza, porque el modelo no obedece siempre y el texto de un tercero puede empujarlo en otra dirección. La defensa que sí aguanta vive en el código que consume la salida: cada destino aplica el control que corresponde a cómo interpreta el texto —codificar para la página, parametrizar para la consulta, no pasar por un intérprete de órdenes, neutralizar el signo igual en la hoja—, igual que lo haría con un texto de un desconocido.

Las salas que siguen recorren esos controles destino por destino.

Responde para continuar

¿Cuál es el principio de diseño correcto para la salida de Pabilo?

Ver pista de ayuda

El control tiene que funcionar aunque el modelo se equivoque.

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