Libera tu mente y alcanza tus metas
OWASP TOP 10 para Large Language Model Applications (LLM)
OWASP TOP 10 para Large Language Model Applications (LLM)

OWASP TOP 10 para Large Language Model Applications (LLM)

El proyecto OWASP Top 10 for Large Language Model Applications (LLM), como ChatGPT, tiene como objetivo educar a los desarrolladores, diseñadores, arquitectos, gerentes y organizaciones sobre los posibles riesgos de seguridad al implementar y administrar Large Language Models (LLM).

El proyecto proporciona una lista de las 10 vulnerabilidades más críticas que se ven a menudo en las aplicaciones LLM, destacando su impacto potencial, facilidad de explotación y prevalencia en las aplicaciones del mundo real. Los ejemplos de vulnerabilidades incluyen inyecciones rápidas, fuga de datos, sandboxing inadecuado y ejecución de código no autorizado, entre otros.

El objetivo es crear conciencia sobre estas vulnerabilidades, sugerir estrategias de remediación y, en última instancia, mejorar la postura de seguridad de las aplicaciones LLM.

LLM01:2023 - Inyecciones de Prompt

Este fallo se produce cuando se manipula el Modelo de Lenguaje Grande (LLM) utilizando prompts cuidadosamente diseñados que hacen que el modelo ignore instrucciones previas o realice acciones no deseadas. Las vulnerabilidades comunes incluyen la manipulación del LLM para revelar información sensible, eludir filtros o restricciones utilizando patrones de lenguaje específicos, explotar debilidades en la tokenización o mecanismos de codificación del LLM y engañar al LLM para que realice acciones no deseadas proporcionando un contexto engañoso.

LLM02:2023 - Fuga de Datos

Este fallo ocurre cuando un LLM revela accidentalmente información sensible, algoritmos propietarios u otros detalles confidenciales a través de sus respuestas. Las vulnerabilidades comunes incluyen el filtrado incompleto o incorrecto de información sensible en las respuestas del LLM, el sobreajuste o la memorización de datos sensibles en el proceso de entrenamiento del LLM y la divulgación no intencionada de información confidencial debido a errores o malinterpretaciones del LLM.

LLM03:2023 - Sandboxing Inadecuado

Este fallo ocurre cuando un LLM no está adecuadamente aislado cuando tiene acceso a recursos externos o sistemas sensibles. Las vulnerabilidades comunes incluyen la separación insuficiente del entorno del LLM de otros sistemas críticos o almacenes de datos, permitir que el LLM acceda a recursos sensibles sin restricciones adecuadas y no limitar las capacidades del LLM, como permitirle realizar acciones a nivel de sistema o interactuar con otros procesos.

LLM04:2023 - Ejecución de Código No Autorizado

Este fallo ocurre cuando un atacante explota un LLM para ejecutar código malicioso, comandos o acciones en el sistema subyacente a través de prompts de lenguaje natural. Las vulnerabilidades comunes incluyen no desinfectar o restringir la entrada del usuario, permitiendo a los atacantes elaborar prompts que desencadenen la ejecución de código no autorizado, sandboxing inadecuado o restricciones insuficientes en las capacidades del LLM, permitiéndole interactuar con el sistema subyacente de formas no deseadas, y exponer involuntariamente la funcionalidad o interfaces a nivel de sistema al LLM.

LLM05:2023 - Vulnerabilidades SSRF

Este fallo ocurre cuando un atacante explota un LLM para realizar solicitudes no deseadas o acceder a recursos restringidos, como servicios internos, APIs o almacenes de datos. Las vulnerabilidades comunes incluyen la validación de entrada insuficiente, permitiendo a los atacantes manipular los prompts del LLM para iniciar solicitudes no autorizadas, el sandboxing inadecuado o las restricciones de recursos, permitiendo al LLM acceder a recursos restringidos o interactuar con servicios internos, y las configuraciones erróneas en la seguridad de la red o de la aplicación, exponiendo recursos internos al LLM.

LLM06:2023 - Dependencia Excesiva del Contenido Generado por LLM

Este fallo se refiere a la dependencia excesiva del contenido generado por LLM sin supervisión humana, lo que puede resultar en la propagación de información engañosa o incorrecta, disminución de la entrada humana en la toma de decisiones y reducción del pensamiento crítico. Los problemas comunes relacionados con la dependencia excesiva del contenido generado por LLM incluyen aceptar el contenido generado por LLM como un hecho sin verificación, asumir que el contenido generado por LLM está libre de sesgos o desinformación, y depender del contenido generado por LLM para decisiones críticas sin la entrada o supervisión humana.

LLM07:2023 - Alineación de IA Inadecuada

Este fallo ocurre cuando los objetivos y comportamientos del LLM no se alinean con el caso de uso previsto, lo que lleva a consecuencias no deseadas o vulnerabilidades. Los problemas comunes de alineación de IA incluyen objetivos mal definidos, lo que hace que el LLM priorice comportamientos no deseados o dañinos, funciones de recompensa o datos de entrenamiento mal alineados, lo que resulta en un comportamiento de modelo no deseado, y pruebas y validación insuficientes del comportamiento del LLM en varios contextos y escenarios.

LLM08:2023 - Controles de Acceso Insuficientes

Este fallo ocurre cuando los controles de acceso o los mecanismos de autenticación no se implementan correctamente, permitiendo que usuarios no autorizados interactúen con el LLM y potencialmente exploten vulnerabilidades. Los problemas comunes de control de acceso incluyen no aplicar requisitos de autenticación estrictos para acceder al LLM, implementación inadecuada de control de acceso basado en roles (RBAC), permitiendo a los usuarios realizar acciones más allá de sus permisos previstos, y no proporcionar controles de acceso adecuados para el contenido y las acciones generadas por el LLM.

LLM09:2023 - Manejo Incorrecto de Errores

Este fallo ocurre cuando se exponen mensajes de error o información de depuración que podrían revelar información sensible, detalles del sistema o posibles vectores de ataque. Los problemas comunes de manejo incorrecto de errores incluyen la exposición de información sensible o detalles del sistema a través de mensajes de error, la filtración de información de depuración que podría ayudar a un atacante a identificar posibles vulnerabilidades o vectores de ataque, y no manejar los errores de manera adecuada, lo que podría causar comportamientos inesperados o fallos del sistema.

LLM10:2023 - Envenenamiento de Datos de Entrenamiento

Este fallo ocurre cuando un atacante manipula los datos de entrenamiento o los procedimientos de ajuste fino de un LLM para introducir vulnerabilidades, puertas traseras o sesgos que podrían comprometer la seguridad, efectividad o comportamiento ético del modelo. Los problemas comunes de envenenamiento de datos de entrenamiento incluyen la introducción de puertas traseras o vulnerabilidades en el LLM a través de datos de entrenamiento manipulados maliciosamente, la inyección de sesgos en elLLM, causando que produzca respuestas sesgadas o inapropiadas, y la explotación del proceso de ajuste fino para comprometer la seguridad o efectividad del LLM.

Revise el borrador de la lista Top 10 versión 0.1 para comprender el trabajo que se ha realizado hasta la fecha.

Fuente: DragonJAR | OWASP