OWASP Top 10 para LLMs: Guía Definitiva de Seguridad en IA

Curso de OWASP Top 10: Riesgos en Aplicaciones

Toma las primeras clases gratis

COMPARTE ESTE ARTÍCULO Y MUESTRA LO QUE APRENDISTE

Los LLMs como ChatGPT, Claude o Gemini revolucionaron nuestra interacción con la tecnología, pero también introducen nuevos riesgos de seguridad. El OWASP Top 10 para aplicaciones LLM identifica los riesgos más críticos que debes conocer para proteger tus sistemas y aplicaciones que construyas en base a IA.


¿Qué es OWASP Top 10 para aplicaciones de IA generativa?

OWASP (Open Worldwide Application Security Project) es una comunidad global que trabaja para mejorar la seguridad del software. El OWASP Top 10 para aplicaciones LLM es un documento de referencia que identifica los diez riesgos más críticos de seguridad en aplicaciones basadas en modelos de lenguaje.

Este documento, en su versión más actual de 2025, representa el esfuerzo colaborativo de expertos en seguridad y desarrolladores de IA de todo el mundo. Su objetivo es ayudar a las organizaciones a construir, desplegar y mantener aplicaciones de IA más seguras identificando los patrones de ataque más comunes y sus mitigaciones.

¿Por qué es crucial para usuarios, desarrolladores y empresas?

Si estás desarrollando o implementando soluciones basadas en IA generativa, entender estos riesgos no es opcional, es fundamental. Los LLMs están siendo integrados en sistemas críticos de negocios, y cada vulnerabilidad representa no solo un riesgo técnico sino también potenciales daños reputacionales, legales y financieros.


Tabla Resumen: OWASP Top 10 para LLMs

Riesgo Descripción Breve Razón de la Posición
LLM01: Inyección de Prompts Manipulación de las instrucciones del modelo para alterar su comportamiento. Es el riesgo más crítico por su alto impacto y facilidad de explotación.
LLM02: Divulgación de Información Sensible Exposición de datos confidenciales a través de las respuestas del modelo. Su potencial impacto en sectores regulados y la gravedad de la exposición lo hacen prioritario.
LLM03: Vulnerabilidades en la Cadena de Suministro Compromiso de bibliotecas, modelos pre-entrenados o datos de entrenamiento. Afecta la integridad del sistema y es cada vez más relevante debido al uso de componentes externos.
LLM04: Envenenamiento de Datos y Modelos Manipulación maliciosa de datos para introducir sesgos, puertas traseras o desinformación. Alta facilidad de explotación unida a un impacto devastador lo posicionan en un lugar prioritario.
LLM05: Manejo Inadecuado de Salidas Uso de resultados del modelo sin validación, permitiendo ejecución de código o filtración. Es común y fácil de explotar, con consecuencias significativas en sistemas dependientes.
LLM06: Agencia Excesiva Otorgar al modelo demasiada autonomía y permisos, permitiendo acciones no deseadas. Aunque menos frecuente, su impacto potencial es muy alto en sistemas críticos.
LLM07: Filtración de Prompts del Sistema Exposición accidental de instrucciones internas sensibles o credenciales. Su impacto es relevante, pero requiere acceso específico para que sea explotado.
LLM08: Debilidades en Vectores y Embeddings Fallos en la generación, almacenamiento o uso de vectores que afectan la seguridad del modelo. Afecta la calidad y seguridad del modelo, especialmente en sistemas basados en RAG.
LLM09: Desinformación Generación de información falsa o engañosa que parece legítima. Su combinación de alto impacto reputacional y facilidad de manipulación lo vuelve crítico.
LLM10: Consumo Sin Límites Uso excesivo de recursos, provocando denegación del servicio o altos costos operativos. Es frecuente y fácil de explotar, aunque su impacto es menor comparado con otros riesgos.

LLM01: Inyección de Prompts (Prompt Injection)

Los prompts son las instrucciones que le damos a un modelo. Crear buenos prompts es vital para obtener resultados deseados; pero, a la vez, pueden ser manipulados para alterar el comportamiento del modelo de forma no intencionada. Es quizás el riesgo más conocido y peligroso de los LLMs actuales.

Ejemplos de inyección de prompts:

El riesgo se manifiesta tanto de manera directa como indirecta:

Cómo protegerse frente a la inyección de prompts:

  • Proporciona instrucciones específicas en el prompt del sistema sobre su rol y limitaciones.
  • Define y valida formatos de salida esperados.
  • Implementa filtrado de entrada y salida.
  • Controla estrictamente los privilegios de acceso.
  • Requiere aprobación humana para acciones de alto riesgo.
  • Realiza pruebas de penetración (pentesting) y simula ataques para medir la efectividad de los controles aplicados.

LLM02: Divulgación de Información Sensible

Este riesgo se refiere a cuando los LLMs revelan información confidencial en sus respuestas. Esto puede incluir datos personales, información empresarial confidencial o incluso credenciales de seguridad.

Ejemplos de divulgación de información sensible

4 estrategias para protegerse de la divulgación de información

  1. Implementa una robusta sanitización de datos.
  2. Establece controles estrictos de acceso.
  3. Educa a los usuarios respecto al uso seguro y responsable de los LLMs.
  4. Considera el uso del cifrado homomórfico para proteger el análisis de datos sensibles.

LLM03: Vulnerabilidades en la Cadena de Suministro

Las cadenas de suministro de LLMs son susceptibles a diversas vulnerabilidades que pueden afectar la integridad de los datos de entrenamiento, modelos y plataformas de implementación.

En adición a los riesgos de cadena de suministro que enfrentan las aplicaciones tradicionales con dependencias; en aplicaciones de AI existen nuevos riesgos con los datos usados u otros modelos base pre-entrenados que se puedan usar en el entrenamiento.

Ejemplos de vulnerabilidades en la cadena de suministro

5 medidas de mitigación para la cadena de suministro

  1. Verifica cuidadosamente las fuentes de datos y proveedores.
  2. Implementa escaneo de vulnerabilidades y gestión de parches.
  3. Mantén un inventario actualizado de componentes con SBOM (Software Bill of Materials).
  4. Usa modelos solo de fuentes verificables con verificaciones de integridad.
  5. Implementa monitorización estricta para entornos de desarrollo colaborativo.

LLM04: Envenenamiento de Datos y Modelos

El envenenamiento se produce cuando los datos de pre-entrenamiento, fine-tuning o embeddings son alterados maliciosamente para introducir vulnerabilidades, puertas traseras o sesgos.

Ejemplos de envenenamiento de datos y modelos

  • Un atacante manipula los datos de entrenamiento para sesgar las salidas del modelo.
  • Técnicas como Split-View o Frontrunning ilustran estos métodos.

5 estrategias para prevenir el envenenamiento de datos

  1. Rastrear y documentar el origen de los datos mediante herramientas como OWASP CycloneDX
  2. Verifica la legitimidad de los datos durante todas las etapas de desarrollo (SSDLC)
  3. Aplicar técnicas de sandboxing y detección temprana de anomalías.
  4. Utilizar control de versiones de datos (DVC) para identificar manipulaciones.
  5. Emplear RAG (Retrieval-Augmented Generation) para minimizar alucinaciones y errores.

LLM05: Manejo Inadecuado de Salidas

El manejo deficiente de las salidas de un LLM puede propiciar la ejecución de código malicioso o infiltración de datos no sanitizados en otros sistemas.

Ejemplos de manejo inadecuado de salidas

5 protecciones recomendadas para el manejo de salidas

  1. Trata al modelo como cualquier otro usuario, adoptando un enfoque de confianza cero.
  2. Sigue las directrices OWASP ASVS para validación de entradas.
  3. Codifica la salida del modelo según el contexto donde se usará.
  4. Utiliza consultas parametrizadas para operaciones de base de datos.
  5. Implementa Políticas de Seguridad de Contenido (CSP) estrictas.

LLM06: Agencia Excesiva

La agencia excesiva ocurre cuando se otorga demasiada autonomía o permisos a un modelo LLM, lo que permite acciones inesperadas y potencialmente dañinas.

Ejemplo de agencia excesiva

Una aplicación de asistente personal equipada con LLM como Copilot tiene acceso al buzón de correo para resumir emails, pero también puede enviar mensajes sin control, generando riesgos de filtración y abuso.

5 formas de mitigación para la agencia excesiva

  1. Ejecuta extensiones en el contexto del usuario con privilegios mínimos tal como se tratarían clientes web o móviles externos.
  2. Minimiza la cantidad y alcance de funcionalidades expuestas al modelo.
  3. Evita implementar extensiones que permitan ejecutar comandos directamente en el sistema.
  4. Restringe los permisos de las extensiones a aquellos estrictamente necesarios.
  5. Exige la aprobación explícita del usuario para acciones de alto impacto.

LLM07: Filtración de Prompts del Sistema

Este riesgo se refiere a la posibilidad de que los prompts o instrucciones del sistema utilizados para dirigir el comportamiento del modelo contengan información sensible no destinada a ser descubierta.

Ejemplos de filtración de prompts del sistema

3 estrategias para protegerse de la filtración de prompts

  1. Separa datos sensibles de los prompts del sistema.
  2. Evita depender de prompts del sistema para control estricto del comportamiento.
  3. Implementa controles externos (guardrails) que supervisen la actividad sin depender exclusivamente del LLM.

LLM08: Debilidades en Vectores y Embeddings

Este riesgo afecta especialmente a sistemas que utilizan RAG con LLMs. Las debilidades en cómo se generan, almacenan o recuperan los vectores pueden ser explotadas.

Ejemplo de debilidades en vectores y embeddings

Un atacante puede inyectar instrucciones ocultas en conjuntos de datos de entrenamiento de sistemas RAG, provocando respuestas inesperadas, como se ha evidenciado en incidentes recientes con modelos como Llama3.

5 medidas preventivas para vectores y embeddings

  1. Implementa controles de acceso granulares en almacenes de vectores.
  2. Valida rigurosamente los datos y autentica sus fuentes.
  3. Revisa detalladamente los conjuntos de datos combinados.
  4. Mantén registros inmutables y detallados de las actividades de recuperación.
  5. Monitorea de forma continua el comportamiento del modelo en entornos RAG.

LLM09: Desinformación

La desinformación surge cuando un LLM genera información falsa, engañosa y aparentemente creíble, lo que puede derivar en problemas de seguridad, daños reputacionales y acciones legales. Esto también se le conoce como alucinaciones de los modelos.

Ejemplo de desinformación con LLMs

Un chatbot de Air Canada proporcionando información errónea a viajeros fue el detonante de demandas y problemas de reputación para la aerolínea.

4 estrategias de mitigación frente a la desinformación con LLMs

  • Utiliza RAG (Retrieval-Augmented Generation) para reforzar la fiabilidad del modelo.
  • Realiza fine-tunning y mejora los embeddings del modelo.
  • Implementa verificación cruzada y constante supervisión humana.
  • Comunica de forma clara los riesgos a los usuarios para incentivar el uso responsable.

LLM10: Consumo Sin Límites

Este riesgo se manifiesta cuando un servicio LLM permite a los usuarios realizar inferencias excesivas y sin control, lo que puede provocar denegación de servicio, pérdidas económicas, robo de modelos y degradación del servicio.

Ejemplo de consumo sin límites

Se han reportado incidentes en los que atacantes sobrecargan APIs de LLMs como DeepSeek, impidiendo el acceso a usuarios legítimos.

5 protecciones recomendadas contra el consumo sin límites

  1. Implementa validación estricta de entradas y limitación de tamaño.
  2. Emplea límites de tasa (rate limiting) y asigna cuotas por usuario.
  3. Gestiona dinámicamente la asignación de recursos para evitar sobrecargas.
  4. Establece tiempos de espera que minimicen el impacto de solicitudes excesivas.
  5. Utiliza técnicas de sandboxing y detección de anomalías en el tráfico.

Aplicando OWASP Top 10 en tus proyectos LLM

La seguridad en aplicaciones LLM es un proceso continuo. Comienza identificando qué riesgos son más relevantes para tu caso de uso específico y prioriza tus esfuerzos de mitigación.

Recuerda que estos riesgos están interconectados – una vulnerabilidad en un área puede exacerbar problemas en otra. Por eso, un enfoque de seguridad holístico es crucial. Puedes empezar aprendiendo sobre riesgos de aplicaciones con nuestro Curso de OWASP Top 10: Riesgos en Aplicaciones.

También, te invito a visitar nuestra ruta de aprendizaje de Desarrollo de Apps con LLMs con la cual aprenderás todo lo necesario para crear nuevas aplicaciones basadas en AI y en las cuales podrás aplicar lo que has aprendido en este blog.

Por último, te invito a visitar la página de GenAI Security Project de OWASP donde podrás consultar las últimas noticias y recursos de este proyecto abierto. Puedes unirte a sus discusiones internas en el Slack de OWASP a través del canal #project-top10-for-llm; colaborar en su wiki; consultar los recursos educativos recomendados; entre otros.

Curso de OWASP Top 10: Riesgos en Aplicaciones

Toma las primeras clases gratis

COMPARTE ESTE ARTÍCULO Y MUESTRA LO QUE APRENDISTE

0 Comentarios

para escribir tu comentario

Artículos relacionados