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
  • Mapping LLM API attack surface - Excessive Agency
  • Laboratorio:
  • Objetivo:
  • Resolución:
  • Chaining vulnerabilities in LLM APIs
  • Laboratorio
  • Objetivo:
  • Resolución:
  1. PortSwigger Labs

LLM Attacks

Aquí encontrarás laboratorios sobre LLM attacks de PortSwigger

AnteriorAPI Pentest

Última actualización hace 3 meses

Mapping LLM API attack surface - Excessive Agency

Excessive Agency se refiere a cuando un modelo de lenguaje (LLM) tiene demasiada autonomía para ejecutar acciones sin supervisión humana o sin restricciones adecuadas. Esto puede llevar a que el modelo tome decisiones no controladas, interactúe con sistemas críticos o realice tareas que podrían ser explotadas por atacantes.

Para explotar esto, primero se debe identificar a qué API y complementos tiene acceso el LLM, preguntándole directamente o reformulando la consulta con un contexto engañoso, como fingir ser su desarrollador para obtener más privilegios.

Laboratorio:

-

Objetivo:

Para resolver el laboratorio tenemos que eliminar el usuario carlos.

Resolución:

Para resolver este laboratorio es bastante sencillo, solo tenemos preguntar sobre la API y su funcionalidad, de ahí preguntar si existen usuarios, que en este caso el objetivo era borrar un usuario llamado Carlos y solo pedirle que lo borre.

Ya con eso tenemos finalizado nuestro laboratorio.

Chaining vulnerabilities in LLM APIs

El encadenamiento de vulnerabilidades en APIs de LLM consiste en aprovechar fallos menores en una API para escalar a ataques más críticos. Por ejemplo, una API vulnerable a path traversal puede usarse junto con otra que ejecuta comandos, logrando una RCE.

Laboratorio

Objetivo:

Remover el archivo morale.txt del usuario carlos.

Resolución:

Para resolver este laboratorio tenemos que conocer qué nos ofrece este chat. Por lo que se aprecia en la siguiente imagen, tenemos 3 funcionalidades, una que nos llama la atención es Suscriberte al boletín de noticias. Posteriormente, preguntamos sobre qué espera cómo argumento esa función, es decir, qué información tenemos que pasarle y este nos informa que es un correo, por lo que simulamos pasarle un correo:

En esta siguiente imagen, que es la sección de Backend AI Logs que nos ofrece el laboratorio apreciamos los respectivos logs de tareas que ocurren por detrás:

Por otra parte, desde Email Client se nos otorga un correo y una casilla de correos, que es este mismo correo el que le debemos pasar ahora a esta función.

Procedemos ahora a pasarle el correo para que se nos suscriba al boletín:

Posteriormente, desde Email Client vemos:

Para poder resolver este laboratorio tenemos que inyectar comandos en donde va el nombre attacker, este campo es vulnerable a inyecciones de comando de sistemas, por lo que sería algo así:

Desde la sección del correo vemos lo siguiente, en primera instancia solo viene el correo normal, pero luego nos expone carlos a través del comando whoami, sabiendo esto, lo demás es ejecutar el comando para borrar el archivo que nos pide el laboratorio morale.txt, y conociendo la estrucutura de directorios de linux lo demás es ejecutar: $(rm /home/morale.txt).

https://portswigger.net/web-security/llm-attacks/lab-exploiting-vulnerabilities-in-llm-apis
https://portswigger.net/web-security/llm-attacks/lab-exploiting-llm-apis-with-excessive-agency
Exploiting LLM APIs with excessive agency
Identificando funcionalidades y registrando correo
Backend AI Logs
Casilla de correo
Suscribiendo al boletín
Suscripción exitosa
Inyección de comandos
RCE ejecutado con éxito