scim_proto and kanidm_proto have an authenticated process abort via SCIM filter stack exhaustion (CVE-2026-46689)
An unauthenticated attacker can cause the kanidmd process to abort by sending a specially crafted GET request to any /scim/v1/... endpoint with a deeply nested SCIM filter query string. The recursive parser for SCIM filters does not limit recursion depth, leading to a stack overflow and process abort before any authorization checks occur. This results in a denial of service by crashing the entire process. The vulnerability affects versions prior to 1.9.3 and requires no authentication or special feature flags.
AI Analysis
Technical Summary
The vulnerability arises from an unbounded recursive-descent PEG parser used to parse SCIM filter query strings in the kanidmd service. The parser recurses on nested parentheses and 'not (' constructs without any depth limit, causing stack overflow when processing deeply nested filters (~4–12 KB in size). This triggers Rust's std::process::abort(), terminating the entire kanidmd process before any handler or ACL checks execute. The SCIM endpoints are unauthenticated and accessible by default, making the attack trivially repeatable. The existing depth limit is enforced only after parsing, so it does not prevent the stack overflow. The vulnerability affects scim_proto versions before 1.9.3.
Potential Impact
An unauthenticated attacker can cause a complete denial of service by crashing the kanidmd process via a crafted SCIM filter query. This results in loss of availability for all in-flight requests, sessions, and services handled by the process. There is no impact on confidentiality or integrity. The attack is repeatable and can keep the service down indefinitely. The vulnerability does not require authentication or special configuration and is exploitable through standard HTTP GET requests to SCIM endpoints.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a patch is available, consider implementing external protections such as limiting request URI length or filtering requests with suspiciously deep nested parentheses at the reverse proxy or firewall level. Note that typical reverse proxy limits (e.g., nginx large_client_header_buffers) may not fully mitigate the attack. Monitoring and rate limiting unauthenticated requests to SCIM endpoints may reduce attack impact.
scim_proto and kanidm_proto have an authenticated process abort via SCIM filter stack exhaustion (CVE-2026-46689)
Description
An unauthenticated attacker can cause the kanidmd process to abort by sending a specially crafted GET request to any /scim/v1/... endpoint with a deeply nested SCIM filter query string. The recursive parser for SCIM filters does not limit recursion depth, leading to a stack overflow and process abort before any authorization checks occur. This results in a denial of service by crashing the entire process. The vulnerability affects versions prior to 1.9.3 and requires no authentication or special feature flags.
CVSS v4.0
Affected software
Run on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The vulnerability arises from an unbounded recursive-descent PEG parser used to parse SCIM filter query strings in the kanidmd service. The parser recurses on nested parentheses and 'not (' constructs without any depth limit, causing stack overflow when processing deeply nested filters (~4–12 KB in size). This triggers Rust's std::process::abort(), terminating the entire kanidmd process before any handler or ACL checks execute. The SCIM endpoints are unauthenticated and accessible by default, making the attack trivially repeatable. The existing depth limit is enforced only after parsing, so it does not prevent the stack overflow. The vulnerability affects scim_proto versions before 1.9.3.
Potential Impact
An unauthenticated attacker can cause a complete denial of service by crashing the kanidmd process via a crafted SCIM filter query. This results in loss of availability for all in-flight requests, sessions, and services handled by the process. There is no impact on confidentiality or integrity. The attack is repeatable and can keep the service down indefinitely. The vulnerability does not require authentication or special configuration and is exploitable through standard HTTP GET requests to SCIM endpoints.
Mitigation Recommendations
Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a patch is available, consider implementing external protections such as limiting request URI length or filtering requests with suspiciously deep nested parentheses at the reverse proxy or firewall level. Note that typical reverse proxy limits (e.g., nginx large_client_header_buffers) may not fully mitigate the attack. Monitoring and rate limiting unauthenticated requests to SCIM endpoints may reduce attack impact.
Technical Details
- Gcve Source
- db.gcve.eu
- Osv Id
- GHSA-r5fr-9gmv-jggh
- Osv Schema Version
- 1.4.0
- Aliases
- ["CVE-2026-46689"]
- Ecosystems
- ["crates.io"]
- Database Specific Severity
- HIGH
- Cvss Version
- 4.0
Threat ID: 6a42ed5427e9c79719936533
Added to database: 06/29/2026, 22:10:28 UTC
Last enriched: 06/29/2026, 22:30:09 UTC
Last updated: 07/31/2026, 19:22:59 UTC
Views: 8
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.