CVE-2026-42300: DevGuard has an unauthenticated identity assertion via `X-Admin-Token` header
Impact The SessionMiddleware accepts a client-supplied X-Admin-Token HTTP request header and uses its raw string value as the authenticated userID when no Kratos session cookie is present. An unauthenticated attacker who knows or can guess a target user's Kratos identity UUID can issue requests as that user.
Published May 5, 2026 · Updated May 13, 2026
Affected packages
github.com/l3montree-dev/devguard
- Ecosystem
- Go
- Affected
- < 1.2.2
- Fixed in
- 1.2.2
- Check
go list -m github.com/l3montree-dev/devguard
Advisory details
From the GitHub Advisory Database (CC BY 4.0).
Impact
The SessionMiddleware accepts a client-supplied X-Admin-Token HTTP request header and uses its raw string value as the authenticated userID when no Kratos session cookie is present. An unauthenticated attacker who knows or can guess a target user's Kratos identity UUID can issue requests as that user. Where the target user is an organisation admin or owner, this gives the attacker full control over that organisation's DevGuard resources.
Patches
The release v1.2.2 patches this issue. Update your DevGuard API Instances to this version.
Workarounds
Configure a reverse proxy to strip the X-Admin-Token header before sending requests to the DevGuard API.
Resources
Fixed commit: https://github.com/l3montree-dev/devguard/commit/6f38310bf93b2a63df3055038f4da82b1f4e6d9a
References
How this page is made: the data panel comes from the GitHub Advisory Database, CISA’s KEV catalog, the NVD and FIRST EPSS, and updates twice a day. No analysis has been written for this entry yet. Methodology
