Description
danny-avila/librechat is affected by an authorization bypass vulnerability due to improper access control checks. The `checkAccess` function in `api/server/middleware/roles/access.js` uses `permissions.some()` to validate permissions, which incorrectly grants access if only one of multiple required permissions is present. This allows users with the 'USER' role to create agents despite having `CREATE: false` permission, as the check for `['USE', 'CREATE']` passes with just `USE: true`. This vulnerability affects other permission checks as well, such as `PROMPTS`. The issue is present in all versions prior to the fix.
Affected products
librechat: librechat
References2
- github.com/danny-avila/librechat/commit/91a2df47599c09d80886bfc… Patch
- huntr.com/bounties/7de2765b-d1fe-4495-9144-220070857c48 PatchThird Party Advisory
Metrics
- CVSS 3.1
-
5.3
MEDIUM
Score source: NVD
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N - EPSS — exploit probability
- 0% percentile: 20 · as of 8 November 2026
- CWE
- CWE-284CWE-639
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.