
Extensión de Burp para probar problemas de autorización. Repetición automatizada de solicitudes y extracción de valores de parámetros sobre la marcha.
La extensión de Burp te ayuda a encontrar bugs de autorización. Solo navega por la aplicación web con un usuario con altos privilegios y deja que Auth Analyzer repita tus solicitudes para cualquier usuario no privilegiado definido. Con la posibilidad de definir parámetros, Auth Analyzer puede extraer y reemplazar valores de parámetros automáticamente. Con esto, por ejemplo, los tokens CSRF o incluso características completas de sesión pueden extraerse automáticamente de las respuestas y reemplazarse en solicitudes posteriores. Cada respuesta se analizará y etiquetará según su estado de omisión.
Existen otras extensiones de Burp existentes que hacen básicamente lo mismo. Sin embargo, la fuerza de la característica de parámetros y la extracción automática de valores es la razón principal para elegir Auth Analyzer. Con esto no necesitas conocer el contenido de los datos que deben intercambiarse. Puedes definir fácilmente tus parámetros y cookies, y Auth Analyzer capturará sobre la marcha los valores necesarios. Auth Analyzer no realiza ninguna solicitud de pre-vuelo. Básicamente hace lo mismo que tu aplicación web. Con tus roles de usuario / sesiones definidos.
(1) Crea o Clona una sesión para cada usuario que quieras probar.
(2) Guarda y carga la configuración de la sesión
(3) Especifica las características de la sesión (Header(s) y/o Parámetro(s) a reemplazar)
(4) Establece filtros si es necesario
(5) Iniciar / Detener y Pausar Auth Analyzer
(6) Especifica el filtro de la tabla
(7) Navega por la aplicación web con otro usuario y rastrea los resultados de las solicitudes repetidas
(8) Exporta los datos de la tabla a XML o HTML
(9) Analiza manualmente las solicitudes / respuestas originales y repetidas

Si tienes los recursos que deseas probar en tu sitemap, es muy fácil y rápido realizar tus pruebas de autorización. En el primer paso, define las sesiones que deseas probar. Luego, simplemente expande tu sitemap, selecciona los recursos y repite las solicitudes a través del menú contextual. Además, puedes definir algunas opciones sobre qué solicitudes deben repetirse y cuáles no. Con esto, puedes realizar pruebas de autorización de un sitio web complejo en segundos.
Auth Analyzer tiene la posibilidad de definir parámetros que se reemplazan antes de que se repita la solicitud para la sesión dada. El valor del parámetro dado se puede establecer según diferentes requisitos.
El valor del parámetro se extraerá si aparece en una respuesta con una de las siguientes condiciones:
Una respuesta con un Header Set-Cookie cuyo nombre de Cookie se establece en el Nombre del Campo de Extracción definido
Una Respuesta de Documento HTML contiene un campo de entrada con el atributo name establecido en el Nombre del Campo de Extracción definido
Una Respuesta JSON contiene una clave establecida en el Nombre del Campo de Extracción
Por defecto, Auth Analyzer intenta extraer automáticamente el valor del parámetro de todas las ubicaciones. Sin embargo, al hacer clic en el icono de configuración del parámetro, puedes restringir la ubicación de extracción automática según tus necesidades.

El parámetro se extraerá si la respuesta contiene la Cadena de Inicio y Cadena de Fin especificadas en una línea. La Cadena de Inicio-Fin se puede establecer manualmente o directamente mediante el menú contextual correspondiente. Simplemente marca la palabra que deseas extraer en cualquier respuesta y establece como Extraer de Cadena a Cadena para el parámetro que desees.
Por defecto, Auth Analyzer intenta extraer el valor del header y del cuerpo en la mayoría de las respuestas textuales. Sin embargo, al hacer clic en el icono de configuración del parámetro, puedes restringir la ubicación de extracción de Cadena a Cadena según tus necesidades.

Se puede definir un valor de parámetro estático. Esto se puede usar, por ejemplo, para tokens CSRF estáticos o credenciales de inicio de sesión.
Se te solicitará una entrada si el parámetro definido está presente en una solicitud. Esto se puede usar, por ejemplo, para establecer códigos 2FA.
Si se establece un valor (extraído o definido por el usuario), se reemplazará si el parámetro correspondiente está presente en una solicitud. Las condiciones para el reemplazo de parámetros son:
El parámetro se reemplazará si está presente en una de las siguientes ubicaciones:

En la Ruta (ej. /api/user/99/profile → si hay un parámetro llamado user, el valor 99 será reemplazado)
Parámetro de URL (ej. email=hans.wurst[a]gmail.com)
Parámetro de Cookie (ej. PHPSESSID=mb8rkrcdg8765dt91vpum4u21v)
Parámetro del Cuerpo ya sea Codificado en URL o Datos de Formulario Multipart
Parámetro JSON (ej. {"email":"hans.wurst[a]gmail.com"})
Por defecto, el valor del parámetro se reemplazará en cada ubicación. Sin embargo, al hacer clic en el icono de configuración del parámetro, puedes restringir la ubicación según tus necesidades.

El parámetro definido se puede eliminar por completo, por ejemplo, para probar mecanismos de verificación CSRF.