Este artículo ha sido escrito con fines educativos. El uso es esta información para la realización de actividades no autorizadas puede tener consecuencias legales.
Como presentación en este foro, me gustaría realizar varias aportaciones con respecto a lo que me mola, que es el Pentesting Web.
En el caso de este post, se tratará de una explicación desde cero de la herramienta Burp Suite, la cual necesitarás conocer sí o sí si estás interesado en este campo.
Espero que os sea útil, y os invito a dejar preguntas sobre Pentesting Web que os surjan para ir resolviendo en próximos aportes.
2. CARACTERÍSTICAS PRINCIPALES
3. INSTALACIÓN EN WINDOWS/LINUX
4. FUNCIONAMIENTO
4.1 INICIO DE LA APLICACIÓN
4.2 USO DEL PROXY
4.3 INTERCEPTANDO SOLICITUDES
4.4 ATAQUE BÁSICO DE FUERZA BRUTA USANDO EL 'INTRUDER'
4.5 USO DEL 'REPEATER'
4.6 USO DEL 'DECODER'
5. CONCLUSIÓN
Burp Suite permite observar y modificar en tiempo real el tráfico HTTP y HTTPS entre un navegador y un servidor, lo que facilita el análisis y la manipulación de las solicitudes y respuestas.
Una vez que hayamos descargado el archivo .exe de instalación, haremos doble clic sobre él para ejecutarlo:
Pulsamos en “Next”, y nos solicitará la ruta donde queremos instalar el programa:
Tras esto, ya habremos finalizado la instalación en nuestro Windows.
Se nos descargará un archivo .sh. Desde la terminal, navegamos hasta el directorio donde lo hemos descargado, y le damos permisos de ejecución, utilizando el siguiente comando:
Una vez hecho esto, lo ejecutaremos de la siguiente forma:
Se abre el instalador, y pulsaremos en "Next" para seleccionar la ruta donde queremos instalar el programa:
Tras esto, habremos finalizado la instalación.
Al abrir Burp Suite, nos encontramos con una primera pantalla de inicio en la que podemos elegir si crear un proyecto temporal, que se borrará al terminar la sesión, o si por el contrario, queremos un nuevo proyecto que se guarde en el disco, o abrir uno ya existente (estos dos últimos solo están disponibles para la versión Pro).
Arrancaremos la aplicación con los ajustes por defecto, y nos encontramos con la siguiente interfaz:
Esta primera interfaz nos ofrece un pequeño panel para realizar o manejar las tareas que estemos realizando en el momento.
Una vez aquí, disponemos de todas las herramientas y funcionalidades que nos ofrece la aplicación.
4.2 USO DEL PROXY
Utilizaremos el Burp Browser (Chromium), que viene ya configurado por defecto.
Para abrir este navegador, lo haremos pulsando en Proxy > Open Browser.
Para comenzar a interceptar las peticiones realizadas, tendremos que cambiar el “Intercept is off” a “Intercept is on”, quedando así:
4.3 INTERCEPTANDO SOLICITUDES
Una vez lo tenemos todo configurado, accedemos al navegador y buscamos la web objetivo. Como vemos, aparentemente la página se queda cargando, pero si volvemos al Burp, hemos interceptado la petición:
Entre las opciones disponibles a realizar con la petición, encontramos:
En la pestaña siguiente,’HTTP history’, podremos encontrar un historial de las peticiones HTTP interceptadas.
4.4 ATAQUE BÁSICO DE FUERZA BRUTA USANDO EL 'INTRUDER'
El Intruder de Burp Suite es una herramienta avanzada que nos permite automatizar ataques personalizados y automatizados contra aplicaciones web. Su propósito principal es identificar vulnerabilidades mediante el uso de fuerza bruta, fuzzing, explotación de parámetros o pruebas de inyecciones.
Esta herramienta funciona a partir de una petición HTTP interceptada. Una vez modificada la petición, se envía automáticamente al servidor y se analizan las respuestas de la aplicación en busca de posibles fallos o puntos débiles.
Para realizar los ataques, debemos seleccionar primero uno o varios payloads. Esto puede ser desde nombres de usuario, contraseñas o direcciones de correo hasta valores de cookies, tokens, entre otros.
En primer lugar, seleccionamos una petición, pulsamos en las 3 barras horizontales en al esquina superior derecha y la enviamos al Intruder.
Una vez hecho, vamos al ‘Intruder’ en el menú superior y lo primero que vemos es la pestaña ‘Positions’:
Aquí, podremos seleccionar nuestro Payload, que en este caso va a ser el parámetro 'login', por ejemplo.
Seleccionamos el contenido del interior del parámetro y pulsamos en 'Add'.
Cambiamos a la pestaña ‘Payloads’, donde podremos escribir nuestra lista, o bien cargar una lista de palabras de nuestro equipo, utilizando la opción ‘Load’. En este caso, escribimos una breve lista de palabras:
Una vez tengamos los dos pasos previos realizados, es decir, que tengamos un payload o más seleccionados, y una lista de palabras o números, podemos comenzar el ataque, pulsando ‘Start Attack’ en la esquina superior derecha:
En un ataque de fuerza bruta, nos basaríamos en los distintos códigos de estado devueltos para saber cuándo unas credenciales son incorrectas y cuando son correctas. En otro tipo de ataques, podremos tener en cuenta el tamaño de las respuestas y otros factores.
4.5 USO DEL 'REPEATER'
El Repeater de Burp Suite es otra herramienta fundamental para realizar pruebas manuales en aplicaciones web. Permite enviar peticiones HTTP o HTTPS específicas al servidor de forma repetida y manual, con la posibilidad de modificar sus parámetros para observar cómo responde el servidor a las mismas. Es realmente útil para pruebas de inyección.
Al igual que el Intruder, esta herramienta funciona a partir de una petición HTTP interceptada, que enviaremos al Repeater para comenzar con las pruebas.
Una vez dentro de la herramienta, encontramos una interfaz simple e intuitiva.
Como vemos, al lado izquierdo encontramos la sección de Petición o Request, donde podremos modificar la petición Interceptada. Al lado derecho, se nos muestra la respuesta del servidor tras enviar la petición modificada. Esta respuesta la podremos ver en varios formatos, como Raw, Header, HTML o JSON, para poder analizarlo de manera más sencilla en función de nuestra preferencia.
Una vez tengamos cargada la petición en el Repeater, podremos editar cualquier parámetro, cabecera o incluso el método HTTP si fuese necesario (por ejemplo, cambio de GET a POST).
4.6 USO DEL 'DECODER'
El Burp Decoder es una herramienta diseñada para analizar datos codificados o cifrados, permitiéndonos decodificarlos, editarlos y volver a codificarlos. Esto es útil para manipular ciertos datos sensibles como cookies o tokens, o cualquiero formato codificado que utilice una web.
Lo primero que haremos será copiar el dato o datos codificados que nos interesan, nos movemos al ‘Decoder’, y lo pegamos en el cuadro de entrada.
En la parte de arriba, podremos seleccionar si queremos decodificar o encodificar la cadena que hemos introducido. Podremos utilizar URL, HTML, Base64, Hex, y otros.
En este caso, hemos introducido una cadena encodeada en Base64, por lo que necesitamos decodificarla.
Para ello, seleccionaremos Decode as … > Base64:
Como vemos en la imagen, en la parte baja obtenemos la respuesta decodificada que estábamos buscando.
Podremos realizar el mismo proceso en orden inverso.
Espero que os haya gustado este post, dejo en vuestras manos si queréis un análisis de Burp más en profundidad, o cualquier otra publicación sobre herramientas y útiles interesantes.
Todo el apoyo es bienvenido, ¡hasta la próxima!
Como presentación en este foro, me gustaría realizar varias aportaciones con respecto a lo que me mola, que es el Pentesting Web.
En el caso de este post, se tratará de una explicación desde cero de la herramienta Burp Suite, la cual necesitarás conocer sí o sí si estás interesado en este campo.
Espero que os sea útil, y os invito a dejar preguntas sobre Pentesting Web que os surjan para ir resolviendo en próximos aportes.
ÍNDICE
1. BREVE INTRODUCCIÓN2. CARACTERÍSTICAS PRINCIPALES
3. INSTALACIÓN EN WINDOWS/LINUX
4. FUNCIONAMIENTO
4.1 INICIO DE LA APLICACIÓN
4.2 USO DEL PROXY
4.3 INTERCEPTANDO SOLICITUDES
4.4 ATAQUE BÁSICO DE FUERZA BRUTA USANDO EL 'INTRUDER'
4.5 USO DEL 'REPEATER'
4.6 USO DEL 'DECODER'
5. CONCLUSIÓN
1. BREVE INTRODUCCIÓN
Burp Suite es una herramienta utilizada generalmente para pruebas de seguridad en aplicaciones web. Su conjunto de herramientas permite realizar auditorías de seguridad de manera automatizada y manual.Burp Suite permite observar y modificar en tiempo real el tráfico HTTP y HTTPS entre un navegador y un servidor, lo que facilita el análisis y la manipulación de las solicitudes y respuestas.
2. CARACTERÍSTICAS PRINCIPALES
Las principales características de Burp Suite son, entre otras, las siguientes:- Proxy: Permite interceptar, modificar y examinar el tráfico HTTP/HTTPS entre el navegador y el servidor en tiempo real.
- Escáner de vulnerabilidades: Realiza un análisis exhaustivo del sitio web para identificar posibles puntos de explotación y automatiza la detección de vulnerabilidades comunes.
- Burp Intruder: Esta herramienta se utiliza para realizar ataques personalizados, como fuerza bruta y fuzzing.
- Burp Repeater: Permite modificar y reenviar manualmente solicitudes HTTP, lo que facilita la prueba de conceptos y la explotación de vulnerabilidades. Ideal para realizar pruebas más detalladas sobre peticiones específicas.
- Burp Decoder:Facilita la codificación y decodificación de datos en ciertos formatos, como Base64 o URL-encoding, lo que es útil para analizar datos sensibles o cifrados en las peticiones y respuestas.
3. INSTALACIÓN EN WINDOWS/LINUX
WINDOWS
En primer lugar, debemos dirigirnos al sitio web oficial de PortSwigger y descargar la última versión de Burp Suite, seleccionando antes nuestro Sistema Operativo:Una vez que hayamos descargado el archivo .exe de instalación, haremos doble clic sobre él para ejecutarlo:
Pulsamos en “Next”, y nos solicitará la ruta donde queremos instalar el programa:
Tras esto, ya habremos finalizado la instalación en nuestro Windows.
LINUX
En primer lugar, debemos dirigirnos al sitio web oficial de PortSwigger y descargar la última versión de Burp Suite, seleccionando antes nuestro Sistema Operativo:Se nos descargará un archivo .sh. Desde la terminal, navegamos hasta el directorio donde lo hemos descargado, y le damos permisos de ejecución, utilizando el siguiente comando:
Una vez hecho esto, lo ejecutaremos de la siguiente forma:
Se abre el instalador, y pulsaremos en "Next" para seleccionar la ruta donde queremos instalar el programa:
Tras esto, habremos finalizado la instalación.
4. FUNCIONAMIENTO
4.1 INICIO DE LA APLICACIÓNAl abrir Burp Suite, nos encontramos con una primera pantalla de inicio en la que podemos elegir si crear un proyecto temporal, que se borrará al terminar la sesión, o si por el contrario, queremos un nuevo proyecto que se guarde en el disco, o abrir uno ya existente (estos dos últimos solo están disponibles para la versión Pro).
Arrancaremos la aplicación con los ajustes por defecto, y nos encontramos con la siguiente interfaz:
Esta primera interfaz nos ofrece un pequeño panel para realizar o manejar las tareas que estemos realizando en el momento.
Una vez aquí, disponemos de todas las herramientas y funcionalidades que nos ofrece la aplicación.
4.2 USO DEL PROXY
Utilizaremos el Burp Browser (Chromium), que viene ya configurado por defecto.
Para abrir este navegador, lo haremos pulsando en Proxy > Open Browser.
Para comenzar a interceptar las peticiones realizadas, tendremos que cambiar el “Intercept is off” a “Intercept is on”, quedando así:
4.3 INTERCEPTANDO SOLICITUDES
Una vez lo tenemos todo configurado, accedemos al navegador y buscamos la web objetivo. Como vemos, aparentemente la página se queda cargando, pero si volvemos al Burp, hemos interceptado la petición:
Entre las opciones disponibles a realizar con la petición, encontramos:
- Intercept is Off/Intercept is On: Inicia o detiene el modo de intercepción.
- Forward: Envia la petición interceptada al siguiente paso en su camino (servidor o navegador)
- Drop: Descarta la petición interceptada, impidiendo que llegue a su destino.
- Action: El menú Actions ofrece una variedad de opciones para gestionar la solicitud interceptada, como puede ser enviarlo al Repeater, copiar el contenido de la solicitud, entre otras.
En la pestaña siguiente,’HTTP history’, podremos encontrar un historial de las peticiones HTTP interceptadas.
4.4 ATAQUE BÁSICO DE FUERZA BRUTA USANDO EL 'INTRUDER'
El Intruder de Burp Suite es una herramienta avanzada que nos permite automatizar ataques personalizados y automatizados contra aplicaciones web. Su propósito principal es identificar vulnerabilidades mediante el uso de fuerza bruta, fuzzing, explotación de parámetros o pruebas de inyecciones.
Esta herramienta funciona a partir de una petición HTTP interceptada. Una vez modificada la petición, se envía automáticamente al servidor y se analizan las respuestas de la aplicación en busca de posibles fallos o puntos débiles.
Para realizar los ataques, debemos seleccionar primero uno o varios payloads. Esto puede ser desde nombres de usuario, contraseñas o direcciones de correo hasta valores de cookies, tokens, entre otros.
En primer lugar, seleccionamos una petición, pulsamos en las 3 barras horizontales en al esquina superior derecha y la enviamos al Intruder.
Una vez hecho, vamos al ‘Intruder’ en el menú superior y lo primero que vemos es la pestaña ‘Positions’:
Aquí, podremos seleccionar nuestro Payload, que en este caso va a ser el parámetro 'login', por ejemplo.
Seleccionamos el contenido del interior del parámetro y pulsamos en 'Add'.
Cambiamos a la pestaña ‘Payloads’, donde podremos escribir nuestra lista, o bien cargar una lista de palabras de nuestro equipo, utilizando la opción ‘Load’. En este caso, escribimos una breve lista de palabras:
Una vez tengamos los dos pasos previos realizados, es decir, que tengamos un payload o más seleccionados, y una lista de palabras o números, podemos comenzar el ataque, pulsando ‘Start Attack’ en la esquina superior derecha:
En un ataque de fuerza bruta, nos basaríamos en los distintos códigos de estado devueltos para saber cuándo unas credenciales son incorrectas y cuando son correctas. En otro tipo de ataques, podremos tener en cuenta el tamaño de las respuestas y otros factores.
4.5 USO DEL 'REPEATER'
El Repeater de Burp Suite es otra herramienta fundamental para realizar pruebas manuales en aplicaciones web. Permite enviar peticiones HTTP o HTTPS específicas al servidor de forma repetida y manual, con la posibilidad de modificar sus parámetros para observar cómo responde el servidor a las mismas. Es realmente útil para pruebas de inyección.
Al igual que el Intruder, esta herramienta funciona a partir de una petición HTTP interceptada, que enviaremos al Repeater para comenzar con las pruebas.
Una vez dentro de la herramienta, encontramos una interfaz simple e intuitiva.
Como vemos, al lado izquierdo encontramos la sección de Petición o Request, donde podremos modificar la petición Interceptada. Al lado derecho, se nos muestra la respuesta del servidor tras enviar la petición modificada. Esta respuesta la podremos ver en varios formatos, como Raw, Header, HTML o JSON, para poder analizarlo de manera más sencilla en función de nuestra preferencia.
Una vez tengamos cargada la petición en el Repeater, podremos editar cualquier parámetro, cabecera o incluso el método HTTP si fuese necesario (por ejemplo, cambio de GET a POST).
4.6 USO DEL 'DECODER'
El Burp Decoder es una herramienta diseñada para analizar datos codificados o cifrados, permitiéndonos decodificarlos, editarlos y volver a codificarlos. Esto es útil para manipular ciertos datos sensibles como cookies o tokens, o cualquiero formato codificado que utilice una web.
Lo primero que haremos será copiar el dato o datos codificados que nos interesan, nos movemos al ‘Decoder’, y lo pegamos en el cuadro de entrada.
En la parte de arriba, podremos seleccionar si queremos decodificar o encodificar la cadena que hemos introducido. Podremos utilizar URL, HTML, Base64, Hex, y otros.
En este caso, hemos introducido una cadena encodeada en Base64, por lo que necesitamos decodificarla.
Para ello, seleccionaremos Decode as … > Base64:
Como vemos en la imagen, en la parte baja obtenemos la respuesta decodificada que estábamos buscando.
Podremos realizar el mismo proceso en orden inverso.
5. CONCLUSIÓN
Si estás interesad@ en el mundillo del Pentesting Web, Burp Suite es sin lugar a dudas el pilar más fundamental que debes aprender en tus primeros pasos para poder entender el funcionamiento real de una web por detrás mienstras estás interactuando con ella.Espero que os haya gustado este post, dejo en vuestras manos si queréis un análisis de Burp más en profundidad, o cualquier otra publicación sobre herramientas y útiles interesantes.
Todo el apoyo es bienvenido, ¡hasta la próxima!