Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Azure-AD-Password-Checker — Azure AD Password Checker | Kitploit
Herramientas/GitHubGitHub/quahac/azure-ad-password-checker
Defensive ToolsConfiguration AuditingCloud SecurityIdentity & Access Management (IAM)AuthenticationRed Teaming
GitHubquahac/azure-ad-password-checker

Azure-AD-Password-Checker

Azure AD Password Checker

Ver Repositorio
866hace 1 añoRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Azure AD Password Checker

En un entorno de Azure AD, es posible determinar si un usuario tiene la autenticación multifactor (MFA) deshabilitada sin requerir privilegios especiales. Esto se puede lograr analizando la fecha de creación de la cuenta y la fecha del último cambio de contraseña.

Si la fecha y hora de creación de una cuenta coinciden con la fecha y hora del último cambio de contraseña, puede indicar que no ha habido interacción humana desde que se creó la cuenta y que el usuario no ha podido habilitar la autenticación multifactor (MFA) ni cambiar su contraseña. Y hay otras "anomalías", como que la fecha de cambio de contraseña sea anterior a la fecha de creación. Esto sugiere también que la autenticación multifactor (MFA) no se pudo habilitar porque el usuario aún no había sido creado.

Actualización del 16-10-2023:

  • ¿Cuál es la probabilidad de que dos usuarios cambien sus contraseñas exactamente al mismo tiempo? Esto podría considerarse como otra anomalía de MFA. Se marcará en azul y se indicará como (veces que aparece)

Actualización del 18-02-2024:

  • Exportar usuarios con anomalías de MFA a un archivo
  • Es posible habilitar la autenticación multifactor (MFA) sin requerir una actualización de contraseña, mediante llamada telefónica o SMS. Sin embargo, si la cuenta de un usuario no tiene un número de teléfono registrado, los administradores no podrán activar las opciones de verificación por teléfono o mensaje de texto. Esta omisión significa que los usuarios no pueden verificar su número de teléfono al crear la cuenta ni durante el inicio de sesión. La falta de verificación del número de teléfono puede facilitar la identificación de cuentas donde MFA no está configurado. Para abordar esto, las cuentas sin número de teléfono se marcarán en azul claro y se anotarán como (números de teléfono: x).
    Ver: Microsoft/Azure SMS o llamada telefónica: durante el primer registro o inicio de sesión, se le pide al usuario que proporcione y verifique un número de teléfono. En los inicios de sesión posteriores, se le solicita al usuario que seleccione la opción Enviar código o Llamarme.

Esta información puede ser útil para identificar posibles riesgos de seguridad diseñados para uso tanto de equipos rojos como azules.

Se necesita el archivo de base de datos roadrecon o el archivo JSON extraído con la opción --code-javascript para esta herramienta. La herramienta roadrecon está desarrollada por dirkjanm y se puede descargar en github https://github.com/dirkjanm/ROADtools o pip install roadrecon.

Cómo usarlo, ver:

root@kitploit:~
python3 azurepwchecker.py
usage: azurepwchecker.py [-h] [--roadrecon-dump] [--roadrecon-dump-mfa] [-d DB] [-m] [-l] [-ll] [-lll] [-la] [-lo]
                         [-ji JSON_INPUT] [-c]

Azure AD Password Checker - Este es un analizador para el archivo JSON generado o el archivo de base de datos roadrecon diseñado para uso tanto de equipos rojos como azules.
La base de datos se puede crear al usar la opción --code-javascript para extraer el archivo 'merged_users.json', que se creará para luego ingresar este archivo con el argumento --json-input.
¡Y también se puede usar el archivo roadrecon.db generado por roadrecon! roadrecon está desarrollado por https://github.com/dirkjanm, ¡créditos para él!

options:
  -h, --help            show this help message and exit
  -d DB, --db DB        Specify the path to the 'roadrecon.db' database file, default is this location
  -m, --mfa-list        User Accounts without MFA (No privileged user required)! This argument helps identify user
                        accounts that have not enabled Multi-Factor Authentication (MFA). If an account's creation
                        date and time match its last password change date and time, it may indicate that no human
                        interaction has occurred since the account was created, and the user has not been able to
                        enable MFA or change their password. And there are other 'anomalies' such as the password
                        change date being older than the creation date. This suggests also that Multi-Factor
                        Authentication (MFA) couldn't be enabled because the User wasn't created yet! :-]
  -mo OUTFILE, --outfile OUTFILE
                        Output users with MFA anomalies to file
  -l, --pw-month        User accounts that had their passwords changed last month
  -ll, --pw-year        User accounts that had their passwords changed last year
  -lll, --pw-older      User accounts that haven't changed their passwords in a long time, oldest first
  -la, --admin          User accounts that are members of 'Admin' named groups, including 'Global Reader'
  -lo, --out-of-hours   User password change that occurred outside of office hours, specifically between 5:00 PM
                        (17:00) and 8:00 AM (08:00) on weekdays, as well as on Saturdays and Sundays
  -ji JSON_INPUT, --json-input JSON_INPUT
                        Provide the JSON file imported from your web browser's console using JavaScript. For
                        'createdDateTime' and 'lastPasswordChange' details, ensure you download the JSON output using
                        the '--code-javascript' option.
  -c, --code-javascript
                        Perform extraction even if 'azurepwchecker.py' or 'roadrecon' is unavailable. This script
                        enables extraction through the JavaScript console of a web browser. To proceed, ensure you
                        have a valid account to log in at https://portal.azure.com/#view/Microsoft_AAD_UsersAndTenants
                        /UserManagementMenuBlade/~/AllUsers or an active session on a computer. Copy and paste the
                        provided JavaScript code into the browser's console. Once the session is validated and you
                        have the necessary permissions, a JSON file named 'merged_users.json' will be generated. You
                        can then import it using the following command as example: 'azurepwchecker.py --json-input
                        merged_users.json -m'
  -v, --version         show program's version number and exit
  
run roadrecon first:
  (Run the following command to install the tool "pip install roadrecon)"

  --roadrecon-dump      "roadrecon dump" command or do it with roadrecon
  --roadrecon-dump-mfa  "roadrecon dump --mfa" command (requires privileged access) or do it with roadrecon

¿No tienes roadrecon? > Genera y copia azurepwchecker.py --code-javascript o el archivo js en la carpeta:

Sigue estos pasos para obtener una lista de usuarios junto con su información de cuenta utilizando el script proporcionado.

  1. Inicia sesión en Azure Portal

    • Ve a https://portal.azure.com e inicia sesión con tu cuenta válida.
  2. Accede a Administración de usuarios

    • Navega a Administración de usuarios en el portal de Azure.
  3. Abre las herramientas de desarrollo

    • Presiona F12 en tu navegador web para abrir las herramientas de desarrollo.
  4. Ejecuta el script

    • Copia y pega el script proporcionado.
  5. Obtén UsersList y UserInfo

    • El script obtendrá la UsersList junto con la información del usuario, incluida la fecha de creación y el último cambio de contraseña.
  6. Descarga la información de usuario combinada

    • Una vez que la ejecución del script esté completa, revisa tus descargas. Se generará un archivo llamado merged_users.json si todo salió bien.
  7. Ejecuta en Azure AD Password Checker

    • azurepwchecker.py --json-input merged_users.json

Ver ejemplo:

https://github.com/quahac/Azure-AD-Password-Checker/assets/49560894/0fd77e2c-068e-4aef-aafd-c5ec23db7385

Ver introducción:

https://user-images.githubusercontent.com/49560894/233073626-d1ccc173-c3cf-4751-878b-e8f0c65e6c0a.mp4

Actualización 16-10-2023:

double_lastpasswordchangedatetime

Cómo usar el argumento --code-javascript para generar una lista de usuarios en el Portal de Azure, que luego se puede importar con el comando azurepwchecker.py --json-input merged_users.json:

Actualización 13-02-2024:

Subí una versión editada de GraphRunner de @dafthack y créditos para él. En esta versión modificada, he añadido una nueva funcionalidad que te permite leer archivos HAR directamente desde el dispositivo de la "víctima". Esta nueva función ayuda a verificar y examinar los Access Tokens para acceder a diferentes permisos o ámbitos. Además, si un Access Token ha expirado, esta versión permite el uso de un Refresh Token para crear un nuevo Access Token. Este proceso es sensible al tiempo, pero elimina la necesidad de nombres de usuario y contraseñas, si ya has iniciado sesión en el entorno de Office365, ya que solo requiere los tokens de sesión que se encuentran en los archivos HAR.

Por favor, comprende que el código puede parecer un poco desorganizado. Mi experiencia no es principalmente en JavaScript, así que mi enfoque principal fue añadir nuevas funcionalidades en lugar de organizar el código.

  1. Descarga los archivos HAR; puedes usar las herramientas de desarrollo disponibles en los navegadores web. En la mayoría de los navegadores, simplemente presiona F12 para abrir las herramientas de desarrollo, luego navega a la pestaña 'Network' para guardar los archivos HAR, después de actualizar la página web: video

  2. Sube tus archivos HAR a través de la interfaz proporcionada. Una vez subidos, puedes navegar a través de varios Access Tokens para analizar los detalles de la sesión, incluidos sus ámbitos y más. Los tokens mostrados en rojo indican que han expirado. GraphRunner también admite el uso de Refresh Tokens para generar nuevos Access Tokens válidos cuando sea necesario: video

  3. Funcionalidades añadidas para permitir la descarga de datos completos de usuarios en un archivo JSON, detectar anomalías de MFA en cuentas y descargar una lista de estas anomalías: video

Descargar herramienta