External risk intelligence

SCIM Patch Prototype Pollution Vulnerability

CVE advisorySeverity: CRITICAL (CVSS 9.1)

CVE-2026-48170

The vulnerability exists in a library used to process SCIM PATCH operations. SCIM endpoints are commonly exposed as internet-facing APIs to facilitate identity management and provisioning between external identity providers and service providers, making the processing of this input a typical edge-service function.

Halo Surface Signal: 4 out of 5 — likely to be public-facing.

External exposure likelihood

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.

Supplementary metadata

Validate whether this threat affects your internet-facing exposure.

Halo Threat Intelligence helps prioritize remediation with Halo Surface Signal and H/A/L/O context. Start exposure validation with a free external attack surface trial.

Frequently asked questions

What is the scim-patch library?

The scim-patch library is a software component designed for Node.js environments that enables developers to handle SCIM PATCH operations. SCIM, or System for Cross-domain Identity Management, is a standard protocol used by organizations to automate the exchange of user identity information between different systems, such as connecting an external identity provider to an internal application or service.

How does CVE-2026-48170 cause prototype pollution?

This vulnerability is classified as CWE-1321, Improper Control of Interaction Frequency. In this specific context, the library fails to properly sanitize input. When a SCIM PATCH operation includes a key like __proto__, the library inadvertently allows an attacker to inject properties into the base Object prototype. Because this prototype is shared across the entire Node.js process, these unauthorized modifications can affect the behavior of every plain object in that service.

Do I need to worry about internal-only API calls?

The vulnerability is triggered specifically when the library processes attacker-controlled JSON input. If your SCIM endpoint is isolated from the internet and only processes trusted, internal traffic, the risk of a remote attacker triggering this flaw is significantly reduced. The issue resides in how the library interprets external data, not in how the internal application logic itself is structured.

Is my service at risk if it uses scim-patch?

Halo Surface Signal indicates that because SCIM endpoints are frequently exposed as internet-facing APIs to support identity synchronization, services using this library are often in a high-reachability position. You should consider your service at risk if it allows external identity providers to send PATCH requests directly to your application, as these inputs are processed by the vulnerable logic.

When should I update or apply a workaround?

You should prioritize this during your next maintenance window. The first step is to inventory your services to locate where scim-patch is currently utilized. You can then upgrade to version 0.9.1 or implement a runtime protection. Freezing global prototypes at startup, or utilizing Node's built-in --frozen-intrinsics flag, acts as a effective defense by preventing the application from modifying those core object structures.

References