Las notas de R4z0r
YoutubeLinkedInConóceme
  • Bienvenido a las notas de R4z0r
  • Web App Pentest
    • Directory traversal / Path Traversal
    • Local File Inclusion (LFI)
    • Remote File Inclusion (RFI)
    • Cross-Site Scripting (XSS)
    • Cross-Site Request Forgery (CSRF)
    • Server-Side Request Forgery (SSRF)
    • Unrestricted File Upload
    • SQL/NoSQL Injection
      • SQL Injection
      • NoSQL Injection
    • Broken Access Control (BAC)
    • Insecure Direct Object Reference (IDOR)
    • User Enumeration
    • Sensitive Cookies Missing security attributes
    • Weak Password Policy
    • Use of GET Request Method With sensitive Query Strings
    • Insufficient Protection Against Brute Forcing
    • Unverified Password Change
  • LLM Hacking
    • Prompt Injection
    • Sensitive Information Disclosure
    • Supply Chain Vulnerabilities
    • Training Data Poisoning
    • Insecure Output Handling
    • Excessive Agency
    • Model Denial of Service (DoS)
    • Insecure Plugin Design
    • Overreliance
    • Misinformation
    • System Prompt Leakage
  • External Pentest
  • Internal Pentest
  • Mobile Pentest
  • Cloud Pentest
  • API Pentest
  • PortSwigger Labs
    • LLM Attacks
Con tecnología de GitBook
En esta página
  • Definición
  • Vectores comunes de ataque
  • Ejemplos de ataques DoS en LLMs
  • Ejemplo 1: Generación de texto en bucle infinito
  • Ejemplo 2: Instrucción de validación excesiva
  • Ejemplo 3: Imprimir números primos de forma masiva
  • Mitigación
  • Referencias
  1. LLM Hacking

Model Denial of Service (DoS)

Definición

Un ataque de model denial of service (DoS) ocurre cuando un atacante sobrecarga un modelo de lenguaje (LLM) mediante solicitudes excesivas o especialmente diseñadas para agotar sus recursos. Esto puede provocar que el modelo se vuelva inoperante o que su rendimiento se degrade significativamente.

Dato: esta técnica ya fue quitada del OWASP TOP 10 2025. Actualmente (2025) está en el TOP "Unbounded Consumption", que presenta características similares pero es más amplia, moderna y con otro enfoque no solo a provocar un DoS.

Vectores comunes de ataque

  1. Solicitudes intensivas en recursos

    • Envío de solicitudes extremadamente complejas o con tareas que consumen mucha memoria y procesamiento, como cálculos matemáticos complejos o análisis de grandes volúmenes de datos.

  2. Tareas inacabables

    • Solicitar al modelo tareas imposibles de finalizar, como "enumerar todos los números primos existentes antes de responder". Esto genera un ciclo interminable que consume recursos.

  3. Loops vía inyección indirecta

    • Aprovechar instrucciones indirectas que hacen que el LLM entre en un bucle de procesamiento continuo, agotando los recursos del sistema.

  4. DoS clásico contra APIs

    • Saturar las APIs del sistema mediante múltiples solicitudes automatizadas, afectando la disponibilidad del servicio para usuarios legítimos.

Ejemplos de ataques DoS en LLMs

Ejemplo 1: Generación de texto en bucle infinito

  • Prompt malicioso:

Describe una historia donde cada párrafo termine con una pregunta que te obligue a continuar la narrativa indefinidamente.
  • Impacto: El modelo puede quedar atrapado en un ciclo de generación continua, consumiendo recursos hasta agotar el límite de tokens o provocar un colapso en el sistema.

Ejemplo 2: Instrucción de validación excesiva

  • Prompt malicioso:

Por cada palabra de este texto, proporciona mil sinónimos, analiza cada uno y sugiere contextos de uso diferentes para cada uno de ellos.
  • Impacto: Este tipo de solicitud genera una carga de procesamiento excesiva, aumentando el uso de memoria y ralentizando las respuestas para otros usuarios legítimos.

Ejemplo 3: Imprimir números primos de forma masiva

  • Prompt malicioso:

Enumera todos los números primos existentes y proporciona una explicación detallada de por qué cada uno es primo.
  • Impacto:

    • Este prompt solicita una lista infinita, ya que la cantidad de números primos es ilimitada.

Mitigación

  1. Implementación de rate limiting

    • Limitar el número de solicitudes permitidas por usuario en un periodo de tiempo específico para reducir el riesgo de sobrecarga.

  2. Límites en la complejidad de las solicitudes

    • Rechazar o simplificar solicitudes que impliquen un uso excesivo de recursos.

  3. Control de recursos

    • Asignar cuotas de CPU y memoria por sesión para evitar que una única solicitud monopolice los recursos del sistema.

  4. Tiempo máximo de ejecución

    • Establecer límites estrictos de tiempo para la ejecución de tareas complejas y finalizar procesos que excedan estos umbrales.

  5. Monitoreo y alertas

    • Supervisar en tiempo real el uso de recursos y generar alertas cuando se detecten comportamientos anómalo

Referencias

AnteriorExcessive AgencySiguienteInsecure Plugin Design

Última actualización hace 3 meses

https://genai.owasp.org/llmrisk2023-24/llm04-model-denial-of-service/
https://arxiv.org/abs/2006.03463