Tutorial de Burp Suite: encuentra vulnerabilidades web paso a paso

Aprende Burp Suite desde cero. Configura el proxy, intercepta peticiones y encuentra XSS e inyección SQL en aplicaciones web usando Burp Community Edition con DVWA.
- Offense
- Pentesting
- Skills
- Detection
- Confidence
TL;DR
Burp Suite es la herramienta de pruebas de seguridad de aplicaciones web más utilizada, empleada por más de 70.000 organizaciones en todo el mundo. Esta guía acompaña a principiantes por todo el flujo de trabajo: instalar Burp Community Edition, configurar el proxy del navegador, interceptar y modificar peticiones HTTP, rastrear una aplicación web y usar Repeater e Intruder para encontrar inyección SQL y cross site scripting en DVWA. No se requiere experiencia previa en pentesting.
La página de inicio de sesión parecía normal. Un formulario simple con dos campos, un botón de enviar, nada inusual. Pero cuando Carla, una pentester junior en su primer encargo con un cliente, escribió un simple apóstrofo en el campo de nombre de usuario y pulsó enviar, la aplicación respondió con un mensaje de error completo de la base de datos. Nombres de tablas, referencias de columnas, la consulta SQL completa, todo volcado en pantalla en texto plano. Había encontrado una vulnerabilidad de inyección SQL en menos de treinta segundos, no porque fuera un genio, sino porque sabía cómo usar Burp Suite.
Ese descubrimiento cambió todo el encargo. La inyección SQL condujo a la extracción completa de la base de datos, que reveló contraseñas almacenadas en texto plano, lo que le dio acceso al panel de administración. Un apóstrofo. Una herramienta. Un compromiso completo documentado en su informe antes del almuerzo.
Burp Suite es la herramienta que lo hizo posible. No automatizando todo, sino dando a Carla visibilidad completa sobre cada petición y respuesta HTTP que fluía entre el navegador y la aplicación. Podía ver lo que la aplicación estaba haciendo, modificar lo que recibía y probar cómo respondía. Esa visibilidad es lo que separa a alguien que pulsa botones de alguien que encuentra vulnerabilidades.
Qué es Burp Suite y por qué importa
Burp Suite, creado por PortSwigger, es una plataforma integrada para pruebas de seguridad de aplicaciones web. Funciona como un proxy que se sitúa entre tu navegador y la aplicación web objetivo, capturando cada petición y respuesta para su inspección y manipulación. Piensa en ello como un microscopio de seguridad para el tráfico HTTP.
La herramienta importa porque las aplicaciones web son la superficie de ataque principal para la mayoría de las organizaciones. Según OWASP, las fallas de inyección incluyendo inyección SQL y cross site scripting han estado entre los 10 principales riesgos de seguridad de aplicaciones web cada año desde que la lista se publicó por primera vez en 2003. El coste medio de una brecha de datos causada por una vulnerabilidad de aplicación web alcanzó los 4,88 millones de USD en 2024 según el informe anual de IBM. Encontrar estas vulnerabilidades antes que los atacantes no es opcional. Es el trabajo principal de los pentesters de aplicaciones web.
Burp Suite Community Edition es gratuita e incluye todo lo que necesitas para empezar: el Proxy para interceptar tráfico, Repeater para reenviar manualmente peticiones modificadas, Intruder para entrega automatizada de payloads (con límite de velocidad en la versión gratuita), Decoder para codificar y decodificar datos, y Comparer para detectar diferencias entre respuestas. Más del 60% de las ofertas de empleo en pruebas de penetración incluyen Burp Suite como habilidad requerida o preferida. Aprenderlo no es solo educativo. Es una inversión profesional.
Instalar Burp Suite Community Edition
Burp Suite funciona en Windows, macOS y Linux. Requiere Java, pero el instalador incluye su propio runtime de Java, así que no necesitas instalar nada por separado.
Descarga la Community Edition desde la página oficial de descarga de PortSwigger. Elige el instalador para tu sistema operativo. En Linux, la descarga es un script de shell:
chmod +x burpsuite_community_linux_v2024_x_x.sh
./burpsuite_community_linux_v2024_x_x.sh
En macOS, abre el archivo .dmg y arrastra Burp Suite a tu carpeta de Aplicaciones. En Windows, ejecuta el instalador .exe y sigue las instrucciones.
Inicia Burp Suite y selecciona "Temporary Project" (la única opción en Community Edition). En la siguiente pantalla, selecciona "Use Burp defaults" y haz clic en "Start Burp". La interfaz principal se carga con pestañas en la parte superior: Dashboard, Target, Proxy, Intruder, Repeater y más. La pestaña Proxy es donde pasarás la mayor parte del tiempo como principiante.
Configurar el proxy del navegador
Burp Suite funciona interceptando tráfico HTTP entre tu navegador y la aplicación objetivo. Para que esto ocurra, necesitas configurar tu navegador para enrutar el tráfico a través del listener del proxy de Burp.
Por defecto, Burp escucha en 127.0.0.1:8080. Puedes verificar esto en la pestaña Proxy bajo "Proxy settings". El listener debería mostrarse como activo.
El método más fácil es usar el navegador Chromium integrado de Burp. Haz clic en "Open browser" en la pestaña Proxy, y Burp lanza un navegador preconfigurado que ya enruta el tráfico a través del proxy. Esto evita cualquier configuración del proxy del sistema y mantiene tus pruebas aisladas de tu navegación habitual.
Si prefieres usar Firefox, instala la extensión FoxyProxy. Crea una nueva entrada de proxy con los siguientes ajustes:
- Tipo de proxy: HTTP
- IP del proxy: 127.0.0.1
- Puerto: 8080
Activa el proxy en FoxyProxy, luego navega a http://burpsuite en Firefox. Esto carga la página de descarga del certificado CA de Burp. Descarga el certificado, luego impórtalo en Firefox a través de Ajustes, Privacidad y Seguridad, Ver Certificados, Importar. Este paso es esencial. Sin el certificado CA instalado, las conexiones HTTPS mostrarán advertencias de seguridad porque Burp realiza una interceptación man in the middle para descifrar el tráfico TLS para su inspección.
Una vez configurado, cada petición HTTP y HTTPS desde tu navegador fluye a través de Burp Suite. Verás el tráfico aparecer en el historial HTTP de la pestaña Proxy inmediatamente.
Interceptar y modificar peticiones
La pestaña Proxy es el corazón de Burp Suite. Tiene dos modos: intercepción activada e intercepción desactivada. Cuando la intercepción está activada, Burp pausa cada petición antes de que llegue al servidor, permitiéndote inspeccionarla y modificarla. Cuando la intercepción está desactivada, el tráfico fluye normalmente pero sigue registrándose en el historial HTTP.
Empieza con la intercepción desactivada. Navega a tu instancia de DVWA en el navegador, inicia sesión y navega por la aplicación. Cambia a la pestaña Proxy y haz clic en "HTTP history". Verás cada petición listada con su método, URL, código de estado, longitud y tipo MIME. Haz clic en cualquier petición para ver las cabeceras y el cuerpo completos en el panel inferior. Haz clic en la pestaña "Response" para ver lo que el servidor envió de vuelta.
Ahora activa la intercepción. Navega a la página de SQL Injection de DVWA y escribe admin en el campo User ID. Haz clic en Submit. En lugar de que la página cargue, Burp captura la petición y la muestra en la pestaña Intercept. Puedes ver la petición GET o POST completa, incluyendo parámetros, cookies y cabeceras.
Aquí es donde empiezan las pruebas. Modifica el parámetro id de admin a 1' OR '1'='1 y haz clic en "Forward". La petición modificada llega al servidor y la respuesta aparece en tu navegador. Si la aplicación es vulnerable, devuelve datos que no debería, porque alteraste la consulta que la aplicación ejecutó contra su base de datos.
GET /vulnerabilities/sqli/?id=1'+OR+'1'%3d'1&Submit=Submit HTTP/1.1
Host: localhost
Cookie: PHPSESSID=abc123; security=low
Esa única petición modificada demuestra el flujo de trabajo principal de las pruebas de seguridad de aplicaciones web: interceptar, analizar, modificar, reenviar, observar. Cada vulnerabilidad que encuentres con Burp sigue este patrón.
Usar el Spider y el Crawler
Antes de probar páginas individuales, necesitas un mapa de toda la aplicación. La pestaña Target de Burp construye este mapa mientras navegas, mostrando cada host, directorio y archivo que la aplicación referencia. Pero la navegación manual no alcanza todas las páginas. El crawler automatiza el descubrimiento.
En la pestaña Target, haz clic derecho en tu host objetivo y selecciona "Crawl" (en Community Edition, esto está disponible a través de la pestaña Dashboard bajo "New scan" con "Crawl" seleccionado). El crawler sigue cada enlace, envía formularios con datos de prueba y mapea la estructura de la aplicación. Descubre páginas, parámetros y endpoints que podrías no encontrar manualmente.
Una vez completado el rastreo, el mapa del sitio en Target muestra el árbol completo de la aplicación. Los directorios se expanden para mostrar archivos. Cada archivo muestra qué parámetros acepta. Este mapa se convierte en tu checklist de pruebas: cada parámetro es un punto de inyección potencial, cada formulario es una superficie a sondear.
Revisa el mapa del sitio con mentalidad de atacante. Busca páginas que acepten entrada del usuario: formularios de búsqueda, páginas de inicio de sesión, campos de comentarios, endpoints de carga de archivos, parámetros en la URL. Estas son las ubicaciones donde la inyección SQL, el cross site scripting y otros ataques de inyección tienen más probabilidades de funcionar.
Repeater: pruebas manuales de peticiones
Repeater es la herramienta que más usarás después del Proxy. Te permite enviar una petición al servidor, ver la respuesta, modificar la petición y enviarla de nuevo, tantas veces como necesites. Sin interacción del navegador. Solo la petición y respuesta HTTP en bruto, lado a lado.
Para enviar una petición a Repeater, haz clic derecho en ella en el historial HTTP del Proxy y selecciona "Send to Repeater". Cambia a la pestaña Repeater. La petición aparece en el panel izquierdo. Haz clic en "Send" y la respuesta aparece en el panel derecho.
Así es como se prueba la inyección SQL usando Repeater con un objetivo DVWA. Empieza con la petición capturada de la página de SQL Injection:
GET /vulnerabilities/sqli/?id=1&Submit=Submit HTTP/1.1
Host: localhost
Cookie: PHPSESSID=abc123; security=low
Modifica el parámetro id para enviar un solo apóstrofo: id=1'. Haz clic en Send. Si la respuesta contiene un mensaje de error de base de datos como "You have an error in your SQL syntax", el parámetro es inyectable. La aplicación está concatenando tu entrada directamente en una consulta SQL sin sanitización.
Ahora escala. Cambia el parámetro a id=1' UNION SELECT user, password FROM users--. Envía. Si la respuesta incluye nombres de usuario y hashes de contraseñas de la base de datos, has confirmado una inyección SQL basada en UNION que extrae datos de tablas arbitrarias.
Repeater sobresale en estas pruebas iterativas. Cada modificación se construye sobre la anterior. Empiezas con una sonda (el apóstrofo), confirmas la vulnerabilidad (el mensaje de error), luego escalas a la explotación completa (la consulta UNION). Documenta cada paso. Tu informe de pentest necesita mostrar las peticiones y respuestas exactas que demuestran la vulnerabilidad.
Intruder: entrega automatizada de payloads
Intruder automatiza el proceso de enviar muchas variaciones de una petición, cada una con un payload diferente. Es esencial para pruebas de fuerza bruta, fuzzing de parámetros y escaneo de vulnerabilidades en múltiples puntos de entrada. En Community Edition, Intruder tiene límite de velocidad pero sigue siendo funcional para aprender.
Para usar Intruder, haz clic derecho en una petición en Proxy o Repeater y selecciona "Send to Intruder". La pestaña Intruder tiene cuatro subpestañas: Positions, Payloads, Settings y Results.
En la pestaña Positions, Burp resalta los parámetros que cree que quieres probar. Limpia todas las posiciones con el botón "Clear", luego selecciona el valor específico que quieres probar y haz clic en "Add". Por ejemplo, resalta el valor del parámetro id. El tipo de ataque "Sniper" envía un payload a la vez a la posición marcada, que es lo que necesitas para la mayoría de las pruebas.
Cambia a la pestaña Payloads. Bajo "Payload settings", añade tus cadenas de prueba. Para pruebas de XSS, añade payloads como:
<script>alert(1)</script>
<img src=x onerror=alert(1)>
"><script>alert(1)</script>
<svg onload=alert(1)>
'"><img src=x onerror=alert(1)>
Para inyección SQL, añade:
' OR '1'='1
' UNION SELECT NULL--
' AND 1=1--
' AND 1=2--
1; DROP TABLE users--
Haz clic en "Start attack". Intruder envía cada payload y muestra las respuestas en una tabla de resultados. Ordena por longitud de respuesta o código de estado para detectar anomalías. Una respuesta significativamente más larga o más corta que las demás sugiere que el payload provocó un comportamiento diferente, lo que a menudo indica una vulnerabilidad.
Para detección de XSS, busca tus cadenas de payload en los cuerpos de las respuestas. Si <script>alert(1)</script> aparece sin codificar en la respuesta HTML, la aplicación es vulnerable a cross site scripting reflejado. El navegador ejecutará ese script cuando una víctima visite la URL manipulada.
Encontrar XSS e inyección SQL en DVWA
DVWA proporciona vulnerabilidades intencionales en cuatro niveles de seguridad: bajo, medio, alto e imposible. Empieza en bajo y ve subiendo. Cada nivel añade validación de entrada que debes evadir, enseñándote cómo las aplicaciones reales intentan (y fallan al) prevenir ataques.
Inyección SQL en seguridad baja
Navega a la página de SQL Injection. Establece la seguridad de DVWA a "low" en la página de DVWA Security settings. Escribe 1 en el campo User ID, envía y captura la petición en Burp. Envíala a Repeater.
Prueba el parámetro id con: 1' OR '1'='1. La respuesta devuelve todos los usuarios de la base de datos en lugar de solo el usuario 1. La consulta SQL de la aplicación se parece a SELECT * FROM users WHERE user_id = '1' OR '1'='1', y como '1'='1' siempre es verdadero, se devuelven todas las filas.
Escala con un ataque UNION: 1' UNION SELECT user, password FROM users--. La respuesta ahora incluye nombres de usuario y sus hashes de contraseña MD5. Esto es un compromiso completo de la base de datos a través de un solo campo de entrada.
XSS reflejado en seguridad baja
Navega a la página de XSS (Reflected). Introduce <script>alert(1)</script> en el campo de nombre y envía. La página refleja tu entrada sin codificar, y el script se ejecuta. En una aplicación real, un atacante crearía una URL conteniendo este payload y la enviaría a una víctima. Cuando la víctima hace clic en el enlace, el script se ejecuta en su sesión de navegador, pudiendo potencialmente robar cookies, tokens de sesión o credenciales.
En Repeater, prueba variaciones que evaden filtros comunes:
<img src=x onerror=alert(document.cookie)>
<svg/onload=alert('XSS')>
<body onload=alert(1)>
Cada payload exitoso demuestra un vector diferente. El manejador onerror se activa cuando el navegador falla al cargar la imagen inexistente. El manejador onload se activa cuando el elemento SVG se renderiza. Entender por qué funciona cada uno te ayuda a encontrar XSS en aplicaciones que filtran etiquetas <script> pero no detectan manejadores de eventos.
Construir tu flujo de trabajo de pruebas de seguridad web
Con Proxy, Repeater e Intruder dominados, tienes un flujo de trabajo de pruebas completo. Empieza cada encargo de la misma manera:
-
Mapea la aplicación. Navega manualmente con el Proxy capturando tráfico. Ejecuta el crawler. Revisa el mapa del sitio en Target para identificar cada punto de entrada, formulario, parámetro y endpoint de API.
-
Identifica puntos de inyección. Cada parámetro que acepta entrada del usuario es un candidato. Parámetros de URL, campos de formulario, cabeceras HTTP (especialmente cookies y referrer) y cuerpos de petición JSON merecen pruebas.
-
Prueba manualmente con Repeater. Envía payloads de sondeo a cada punto de inyección. Busca mensajes de error, comportamiento inesperado o entrada reflejada en las respuestas. Repeater te da la precisión para entender exactamente qué hace la aplicación con tu entrada.
-
Automatiza con Intruder. Una vez que identifiques un parámetro prometedor, usa Intruder para enviar una lista completa de payloads. Compara longitudes de respuesta y códigos de estado para identificar qué payloads provocaron vulnerabilidades.
-
Documenta todo. Guarda peticiones y respuestas para tu informe. El registro integrado de Burp captura el intercambio HTTP completo. Cada hallazgo necesita la petición exacta que provoca la vulnerabilidad y la respuesta que demuestra que existe.
Este flujo de trabajo se aplica a cada aplicación web, desde un simple formulario de inicio de sesión hasta una API compleja con cientos de endpoints. Las herramientas escalan con el objetivo. Tu trabajo es ser metódico, cubriendo cada superficie antes de concluir tu prueba.
Más allá de lo básico: PortSwigger Web Security Academy
Una vez que estés cómodo con Proxy, Repeater e Intruder en DVWA, pasa a la Web Security Academy de PortSwigger. Es gratuita, creada por el mismo equipo que construye Burp Suite, y contiene más de 200 laboratorios prácticos cubriendo cada clase importante de vulnerabilidad web. Cada laboratorio se ejecuta en un entorno aislado y te guía por la técnica de ataque exacta, desde inyección SQL básica hasta ataques avanzados de server side request forgery y deserialización.
La Academy estructura el aprendizaje por tipo de vulnerabilidad. Empieza con los laboratorios de inyección SQL, luego pasa a XSS, después evasión de autenticación, luego control de acceso. Cada sección se construye sobre conceptos de la anterior. Para cuando termines los laboratorios de nivel aprendiz, tendrás habilidades prácticas que se transfieren directamente a encargos reales.
Combina la Academy con la Guía de pruebas de OWASP, que documenta la metodología que siguen los pentesters profesionales. La Guía de pruebas explica qué probar y por qué. La Academy te enseña cómo probarlo usando Burp Suite. Juntas, construyen tanto el conocimiento como la memoria muscular que separan a los principiantes de los testers efectivos.
Qué practicar a continuación
El camino de principiante a tester competente de aplicaciones web sigue una progresión predecible. Después de DVWA, configura aplicaciones vulnerables adicionales: WebGoat para vulnerabilidades basadas en Java, Juice Shop para una aplicación de página única moderna, y HackTheBox o TryHackMe para escenarios realistas. Cada objetivo enseña patrones de vulnerabilidad diferentes y te obliga a adaptar tus técnicas.
Aprende la herramienta Decoder para codificar y decodificar Base64, codificación URL, entidades HTML y hexadecimal. Muchos payloads necesitan codificación para evadir firewalls de aplicaciones web y filtros de entrada. Aprende Comparer para detectar diferencias sutiles entre respuestas que indican comportamiento condicional, que es la base de la inyección SQL ciega y los ataques de temporización.
Considera extender Burp con extensiones de la comunidad desde la BApp Store (pestaña Extensions). La extensión "Logger++" añade registro mejorado. "Autorize" prueba automáticamente vulnerabilidades de control de acceso. "Param Miner" descubre parámetros ocultos. Las extensiones multiplican tu efectividad sin requerir que construyas herramientas personalizadas desde cero.
Carla, la pentester que encontró inyección SQL en treinta segundos, no tuvo suerte. Siguió el mismo flujo de trabajo que acabas de aprender: configurar el proxy, interceptar tráfico, probar parámetros sistemáticamente y usar Repeater para confirmar y escalar. El apóstrofo fue deliberado. La herramienta estaba lista. La única variable era la vulnerabilidad de la aplicación. Cuando sigues este proceso, encontrar tu primera vulnerabilidad real no es cuestión de si sucederá. Es cuestión de cuándo.
Fundador de Unihackers
Una década defendiendo aerolíneas, SOCs y organizaciones internacionales
Daute fundó Unihackers tras una década defendiendo aerolíneas, SOCs gestionados y organizaciones internacionales. Es Associate C|CISO y voz habitual sobre IA y ciberseguridad en medios internacionales. Silver Winner en los Cyber Security Excellence Awards 2021. Enseña como le habría gustado que le enseñasen a él: sin ruido, entrenando lo que los atacantes hacen de verdad y formando profesionales útiles desde el primer día.
Ver perfil¿Listo para iniciar tu carrera en ciberseguridad?
Únete a cientos de profesionales que han hecho la transición a la ciberseguridad con nuestro bootcamp práctico.

