Slide 1

Slide 1 text

December 1, 2024 | José Manuel Ortega Seguridad y auditorías en Modelos grandes del lenguaje (LLM) [email protected]

Slide 2

Slide 2 text

• Ingeniería en informática • Master ciberseguridad y ciencia de datos • Consultoría y docencia universitaria • https://josemanuelortegablog.com/ • https://www.linkedin.com/in/jmortega1

Slide 3

Slide 3 text

• Introducción a LLM • Introducción al OWASP LLM Top 10 • Seguridad en aplicaciones que manejan modelos LLM • Herramientas de auditoría en aplicaciones que manejan modelos LLM • Caso de uso con la herramienta textattack para realizar ataques adversarios

Slide 4

Slide 4 text

Introducción a LLM • Transformers • Attention is All You Need" by Vaswani et al. in 2017 • Mecanismo auto-atención • Arquitectura Encoder-Decoder

Slide 5

Slide 5 text

Introducción a LLM

Slide 6

Slide 6 text

Introducción a LLM Pre-training + fine-tuning

Slide 7

Slide 7 text

Introducción a LLM ● Modelos lingüísticos: Modelos como BERT, GPT, T5 y RoBERTa se basan en la arquitectura de transformers. Se utilizan para una amplia gama de tareas de procesamiento del lenguaje natural, como la clasificación de textos, la respuesta a preguntas y la traducción de idiomas. ● Visión transformers de (ViT): el modelo de transformers se ha adaptado a tareas de visión por ordenador, donde se han aplicado a la clasificación de imágenes y la detección de objetos. ● Procesamiento del habla: Además del texto y la visión, los transformers también se han aplicado a tareas como el reconocimiento y la síntesis del habla.

Slide 8

Slide 8 text

Introducción al OWASP LLM Top 10 • https://genai.owasp.org

Slide 9

Slide 9 text

Introducción al OWASP LLM Top 10

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

ChiperChat https://arxiv.org/pdf/2308.06463

Slide 12

Slide 12 text

Jailbreak prompts ● https://jailbreak-llms. xinyueshen.me/

Slide 13

Slide 13 text

Jailbreak prompts ● https://jailbreak-llms. xinyueshen.me/

Slide 14

Slide 14 text

Introducción al OWASP LLM Top 10 • Data Poisoning • Los ciberatacantes podrían modificar los datos de entrenamiento, inyectando información falsa o sesgada en los conjuntos de datos que entrenan el LLM, lo que podría degradar el rendimiento del modelo. • Mitigation:Verificación de fuentes de datos, auditorías de datos y detección de anomalías para detectar patrones sospechosos en los datos de entrenamiento.

Slide 15

Slide 15 text

Introducción al OWASP LLM Top 10 • Model Inversion Attacks • Los atacantes podrían explotar el LLM para inferir datos sensibles o privados que se utilizaron durante el proceso de entrenamiento, consultando repetidamente el modelo. Esto podría exponer información personal, confidencial o privada. • Mitigation: utilizar técnicas como limitar la disponibilidad de modelos entrenados con datos privados.

Slide 16

Slide 16 text

Introducción al OWASP LLM Top 10 • Unauthorized Code Execution • En algunos contextos, los LLM pueden estar integrados en sistemas a los que tienen acceso para ejecutar código o desencadenar acciones automatizadas. Los atacantes podrían manipular los LLMs para que ejecuten código o acciones no deseadas, comprometiendo potencialmente el sistema. • Mitigation: limitar el alcance de las acciones que los LLM pueden ejecutar, emplear sandboxing y utilizar controles de permisos estrictos.

Slide 17

Slide 17 text

Introducción al OWASP LLM Top 10 • Bias and Fairness • Los LLM pueden generar resultados sesgados debido a la naturaleza sesgada de los datos con los que se entrenan, lo que conduce a resultados que podrían ser injustos o discriminatorios. Esto podría afectar a los procesos de toma de decisiones o introducir sesgos sistémicos. • Mitigation: realizar auditorías de imparcialidad de los datos, utilizar herramientas de detección de sesgos y diversificar los conjuntos de datos de entrenamiento para reducir los sesgos.

Slide 18

Slide 18 text

Introducción al OWASP LLM Top 10 • Model Hallucination • Los LLM pueden producir resultados que podrían ser admisibles pero que son incorrectos o inventados. Se denomina "alucinación" cuando el modelo genera información falsa sin ninguna base en sus datos de entrenamiento. • Mitigation: uso de algoritmos de comprobación de hechos y restringir los LLM para que proporcionen respuestas sólo dentro de dominios de conocimiento conocidos.

Slide 19

Slide 19 text

Introducción al OWASP LLM Top 10 • Insecure Model Deployment • Los LLM que se despliegan en entornos inseguros pueden ser vulnerables a ataques, incluidos el acceso no autorizado, el robo o la manipulación de modelos. Estos riesgos aumentan cuando los modelos se despliegan en endpoints de acceso público. • Mitigation: uso de APIs cifradas, aplicar controles de autenticación y autorización y supervisar el acceso a los modelos.

Slide 20

Slide 20 text

Introducción al OWASP LLM Top 10 • Adversarial Attacks • Los atacantes pueden explotar las debilidades del LLM creando ejemplos adversarios (datos de entrada que se manipulan para que el modelo cometa errores). Esto podría provocar resultados no deseados o fallos de seguridad. • Mitigation: Pruebas de robustez del modelo, entrenamiento adversario (entrenamiento del modelo con ejemplos adversarios) e implementación de sistemas de detección de anomalías.

Slide 21

Slide 21 text

• https://llm-attacks.org

Slide 22

Slide 22 text

Herramientas para evaluar la robustez de los modelos

Slide 23

Slide 23 text

Herramientas para evaluar la robustez de los modelos ● FGSM (Fast Gradient Sign Method): Método que genera perturbaciones pequeñas en las entradas para maximizar la pérdida del modelo. ● PGD (Projected Gradient Descent): Variante más robusta que itera sobre las perturbaciones para maximizar el impacto en el modelo. ● DeepFool: Ataque adversario que ajusta las entradas para que el modelo cambie su clasificación.

Slide 24

Slide 24 text

Herramientas para evaluar la robustez de los modelos ● PromptInject Framework ● https://github.com/agencyenterprise/PromptInject ● PAIR - Prompt Automatic Iterative Refinement ● https://github.com/patrickrchao/JailbreakingLLMs ● TAP - Tree of Attacks with Pruning ● https://github.com/RICommunity/TAP

Slide 25

Slide 25 text

Herramientas de auditoría • https://github.com/tensorflow/fairness-indicators

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

• Prompt Guard se refiere a un conjunto de estrategias, herramientas o técnicas diseñadas para salvaguardar el comportamiento de grandes modelos lingüísticos (LLM) de manipulaciones de entrada maliciosas o no intencionadas. • Prompt Guard utiliza un modelo clasificador con 86 millones de parámetros que ha sido entrenado en un gran conjunto de datos de ataques encontrados en Internet. Prompt Guard puede clasificar un prompt en tres categorías diferentes: "Jailbreak", "Inyección" o "Benigno". Herramientas de auditoría

Slide 28

Slide 28 text

Herramientas de auditoría • https://huggingface.co/meta-llama/Prompt-Guard-86M

Slide 29

Slide 29 text

Herramientas de auditoría • Llama Guard 3 es una herramienta de seguridad diseñada para proteger grandes modelos del lenguaje como oLLaMA de Meta frente a posibles vulnerabilidades y ataques de adversarios. • Llama Guard 3 ofrece una solución robusta y adaptable para proteger LLMs contra ataques de Prompt Injection y Jailbreak. Para ello combina técnicas avanzadas de filtrado, normalización y monitorización.

Slide 30

Slide 30 text

Herramientas de auditoría • Filtrado dinámico de entrada • Normalización y contextualización del prompt • Políticas de respuesta segura • Monitorización activa y respuesta automática

Slide 31

Slide 31 text

Herramientas de auditoría • https://huggingface.co/spaces/schroneko/meta-llama- Llama-Guard-3-8B-INT8

Slide 32

Slide 32 text

Herramientas de auditoría • S1: Violent Crimes • S2: Non-Violent Crimes • S3: Sex-Related Crimes • S4: Child Sexual Exploitation • +S5: Defamation (New) • S6: Specialized Advice • S7: Privacy • S8: Intellectual Property • S9: Indiscriminate Weapons • S10: Hate • S11: Suicide & Self-Harm • S12: Sexual Content • S13: Elections • S14: Code Interpreter Abuse Introducing v0.5 of the AI Safety Benchmark from MLCommons

Slide 33

Slide 33 text

Text attack https://arxiv.org/pdf/2005.05909

Slide 34

Slide 34 text

Text attack https://arxiv.org/pdf/2005.05909

Slide 35

Slide 35 text

Text attack from textattack.models.wrappers import HuggingFaceModelWrapper from transformers import AutoModelForSequenceClassification, AutoTokenizer # Load pre-trained sentiment analysis model from Hugging Face model = AutoModelForSequenceClassification.from_pretrained("textattack/bert-base-unc ased-imdb") tokenizer = AutoTokenizer.from_pretrained("textattack/bert-base-uncased-imdb") # Wrap the model for TextAttack model_wrapper = HuggingFaceModelWrapper(model, tokenizer) https://github.com/QData/TextAttack

Slide 36

Slide 36 text

Text attack from textattack.attack_recipes import TextFoolerJin2019 # Initialize the attack with the TextFooler recipe attack = TextFoolerJin2019.build(model_wrapper)

Slide 37

Slide 37 text

Text attack # Example text for sentiment analysis (a positive review) text = "I absolutely loved this movie! The plot was thrilling, and the acting was top-notch." # Apply the attack adversarial_examples = attack.attack([text]) print(adversarial_examples)

Slide 38

Slide 38 text

Text attack Original Text: "I absolutely loved this movie! The plot was thrilling, and the acting was top-notch." Adversarial Text: "I completely liked this film! The storyline was gripping, and the performance was outstanding."

Slide 39

Slide 39 text

Text attack from textattack.augmentation import WordNetAugmenter # Use WordNet-based augmentation to create adversarial examples augmenter = WordNetAugmenter() # Augment the training data with adversarial examples augmented_texts = augmenter.augment(text) print(augmented_texts)

Slide 40

Slide 40 text

Recursos

Slide 41

Slide 41 text

Recursos ● github.com/greshake/llm-security ● github.com/corca-ai/awesome-llm-security ● github.com/facebookresearch/PurpleLlama ● github.com/protectai/llm-guard ● github.com/cckuailong/awesome-gpt-security ● github.com/jedi4ever/learning-llms-and-genai-for-dev-sec-ops ● github.com/Hannibal046/Awesome-LLM

Slide 42

Slide 42 text

Recursos ● https://cloudsecurityalliance.org/artifacts/security-implications-of -chatgpt ● https://www.nist.gov/itl/ai-risk-management-framework ● https://blog.google/technology/safety-security/introducing-googl es-secure-ai-framework ● https://owasp.org/www-project-top-10-for-large-language-model -applications/