Horizon Alert
Summary of the vulnerability and why it matters
This advisory concerns a critical vulnerability found in the `scim-patch` library, which is used for SCIM patch operations. When processing a specific type of patch request containing a `__proto__` key, the library can lead to prototype pollution. This could potentially affect all plain objects within a Node.js process, impacting any service that accepts external SCIM PATCH requests.
- A library flaw allows unintended code modifications.
- Affects identity management systems using SCIM.
- Confirm relevance and assess potential exposure.
Attack Path
How an attacker could exploit the issue
An attacker could target services that use the `scim-patch` library to process SCIM PATCH operations. If a service accepts external SCIM PATCH requests and processes them without proper sanitization, an attacker can craft a specific `PATCH` operation containing a malicious `value` object. This operation, when processed by the vulnerable library, can lead to prototype pollution, allowing the attacker to modify global JavaScript objects within the Node.js process.
- Requires access to a SCIM endpoint.
- Triggered by a specially crafted SCIM PATCH request.
- Risk of global object modification.
Live Threat
Current exploitation, exposure, and threat context
When supported by the advisory, services performing SCIM PATCH operations on attacker-controlled JSON could be affected by prototype pollution, which may impact all plain objects in a Node process.
- System data could be at risk.
- Exploitable via external SCIM endpoints.
- Compromised service behavior may occur.
Operational Fix
Recommended remediation, mitigation, and detection steps
This vulnerability in the `scim-patch` library impacts services that process SCIM PATCH operations with attacker-controlled JSON, potentially affecting all plain objects within a Node.js process. Application owners and platform teams are likely responsible for services using this library. The first practical step is to identify all instances of the `scim-patch` library, determine their reachability and business criticality, and confirm the accountable owner for remediation planning.
- Application owners should manage the issue.
- Verify library usage and external reachability.
- Plan remediation during maintenance windows.