En el mundo de la seguridad, el Proyecto de Abierto de Seguridad de Aplicaciones Web (OWASP, por sus siglas en inglés) es una referencia imprescindible. OWASP es una organización sin fines de lucro que trabaja para mejorar la seguridad del software, proporcionando recursos, herramientas y documentación gratuitos. Su famoso Top 10 enumera las principales amenazas a la seguridad que los desarrolladores deben tener en cuenta.

Con la creciente popularidad de los Modelos de Lenguaje a Gran Escala (LLM, por sus siglas en inglés), como GPT-4, Gemini o Llama, entre otros, OWASP ha publicado una lista específica de vulnerabilidades para estas aplicaciones. Este listado surge en respuesta a la rápida adopción de LLMs en diversas industrias, con el objetivo de resaltar las principales preocupaciones de seguridad asociadas con esta tecnología emergente. Las organizaciones están implementando LLMs a gran velocidad y es crucial que comprendan los riesgos y cómo mitigarlos para proteger tanto sus sistemas como los datos de los usuarios.

1. Inyección de prompts

Descripción: Esta vulnerabilidad manipula un modelo LLM mediante entradas diseñadas con astucia, causando acciones no deseadas por el mismo. Las inyecciones directas sobrescriben los prompts del sistema, mientras que las inyecciones indirectas manipulan entradas de fuentes externas.

Mitigación: Validar y sanitizar todas las entradas antes de procesarlas con el LLM. Implementar listas blancas de comandos y limitar los tipos de datos que pueden ser procesados.

2. Manejo inseguro de salidas

Descripción: Esta vulnerabilidad ocurre cuando una salida de un LLM se acepta sin la debida revisión, exponiendo sistemas backend. El mal uso puede llevar a consecuencias graves como XSS, CSRF, SSRF, escalada de privilegios o ejecución remota de código.

Mitigación: Implementar controles de seguridad en las salidas generadas por el LLM y utilizar técnicas de validación y sanitización de datos.

3. Envenenamiento de datos de entrenamiento

Descripción: Esta vulnerabilidad ocurre cuando los datos de entrenamiento de un LLM son manipulados, introduciendo vulnerabilidades o sesgos que comprometen la seguridad, efectividad o comportamiento ético.

Mitigación: Implementar estrictos controles de calidad y verificación de datos en el proceso de entrenamiento del LLM.

4. Denegación de servicio del modelo

Descripción: Los atacantes provocan operaciones que consumen muchos recursos en los LLM, lo que lleva a la degradación del servicio o altos costes. La vulnerabilidad se magnifica debido a la naturaleza intensiva en recursos de los LLM y la imprevisibilidad de las entradas de los usuarios.

Mitigación: Implementar controles de uso y monitorización para detectar y prevenir abusos de recursos.

5. Vulnerabilidades de la cadena de suministro

Descripción: El ciclo de vida de una aplicación LLM puede verse comprometido por componentes o servicios vulnerables, lo que lleva a ataques de seguridad. Usar conjuntos de datos de terceros, modelos preentrenados y plugins puede añadir vulnerabilidades.

Mitigación: Fortalecer la seguridad en la cadena de suministro, mantener el software actualizado y usar contraseñas fuertes y únicas.

6. Divulgación de información sensible

Descripción: Los LLM pueden revelar inadvertidamente datos confidenciales en sus respuestas, lo que lleva a accesos no autorizados a datos, violaciones de privacidad y brechas de seguridad. Es crucial implementar sanitización de datos y políticas estrictas de usuario para mitigar esto.

Mitigación: Establecer políticas claras sobre el uso de datos de entrenamiento y proporcionar a los usuarios información sobre cómo se manejarán sus datos.

7. Diseño inseguro de plugins

Descripción: Los plugins de LLM pueden tener entradas inseguras y controles de acceso insuficientes. Esta falta de control de aplicaciones puede hacerlos más fáciles de explotar y puede resultar en consecuencias como la ejecución remota de código.

Mitigación: Implementar controles de seguridad robustos en el diseño y uso de plugins.

8. Agencia excesiva

Descripción: Los sistemas basados en LLM pueden realizar acciones que conducen a consecuencias no deseadas. El problema surge de la funcionalidad excesiva, permisos o autonomía otorgados a los sistemas basados en LLM.

Mitigación: Limitar las capacidades y permisos de las herramientas LLM para evitar comportamientos peligrosos.

9. Dependencia excesiva

Descripción: Los sistemas o personas que dependen en exceso de los LLM sin supervisión pueden enfrentar desinformación, mala comunicación, problemas legales y vulnerabilidades de seguridad debido a contenido generado incorrectamente o inapropiado.

Mitigación: Implementar revisiones y verificaciones humanas sobre las salidas del LLM.

10. Robo de modelos

Descripción: Esto implica el acceso no autorizado, copia o filtración de modelos de LLM propietarios. El impacto incluye pérdidas económicas, pérdida de ventaja competitiva y posible acceso a información sensible.

Mitigación: Implementar medidas de seguridad robustas para proteger los modelos y sus datos.

 

La seguridad en aplicaciones LLM es un desafío continuo que requiere atención constante y actualización. Aplicar los principios del OWASP Top 10 puede ayudar a mitigar los riesgos y asegurar que nuestras aplicaciones permanezcan protegidas contra las amenazas más comunes. En The Black Box Lab, nos comprometemos a seguir estas mejores prácticas para garantizar la seguridad y confiabilidad de nuestras soluciones.

 

Fuente: https://genai.owasp.org/llm-top-10/