Description (CNA)
Malcolm's nginx Lua role-based access control (RBAC) layer decides whether an authenticated user may reach a role-restricted path (e.g. /htadmin, /auth, /admin_login, /arkime/api/esadmin, NetBox, upload endpoints) by pattern-matching the raw, percent-encoded request URI. Nginx itself, however, selects which location block actually serves the request using the percent-decoded, normalized URI. Because the RBAC check never percent-decodes its input, an authenticated low-privilege user can request an admin-only path using percent-encoding (e.g. /%68tadmin.php) and have nginx route it to the restricted location while the Lua RBAC gate evaluating the un-decoded raw string finds no matching restriction and grants access.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| CISA / Malcolm | affected 0 through 26.07.1; unaffected 26.08.0 |
CWE
CWE-863
References
- https://github.com/cisagov/Malcolm/security/advisories/GHSA-jr6p-63pg-hr6g
- https://github.com/cisagov/CSAF/blob/develop/csaf_files/OT/white/2026/icsa-26-280-01.json
ADP enrichment
No English description supplied.