Description
@nevware21/ts-utils is a comprehensive TypeScript/JavaScript utility library. Prior to version 0.14.0, the _copyProps function in lib/src/object/copy.ts uses for...in to iterate over source object properties without an Object.hasOwnProperty check, and does not filter dangerous keys (__proto__, constructor, prototype). This allows an attacker to pollute the prototype chain of all objects in the application. Version 0.14.0 patches the issue.
Published: 2026-07-21
Score: 7.2 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability resides in the _copyProps function of @nevware21/ts-utils. The implementation uses a for…in loop over a source object without checking Object.hasOwnProperty, and it does not exclude dangerous keys such as __proto__, constructor, or prototype. When an attacker supplies an object containing these keys, the function copies them onto the target, effectively polluting the Object.prototype of every object in the environment. The result is a modification of the prototype chain that could lead to unintended behaviour in any part of the code that relies on default prototypes.

Affected Systems

All instances of @nevware21/ts-utils earlier than version 0.14.0 are vulnerable. Projects that have not updated the package lock or have pinned an older version are at risk. The issue is fixed in 0.14.0 and later versions.

Risk and Exploitability

The CVSS score of 7.2 classifies the flaw as high severity. The EPSS score of less than 1% indicates a low probability of exploitation, and the vulnerability is not listed in CISA KEV. Nevertheless, the flaw can be triggered by any code that calls objDeepCopy or objCopyProps with a crafted object. In a typical web or Node.js application, an attacker who can influence the input to these copy functions could affect global prototypes, potentially disrupting logic or allowing further attacks that rely on prototype tampering. Exploitation would most likely occur in environments where the library is exposed to untrusted data, such as user‑generated content or third‑party API payloads.

Generated by OpenCVE AI on August 3, 2026 at 00:36 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade nevware21/ts-utils to version 0.14.0 or later.
  • Sanitize objects before passing them to copy functions by filtering out __proto__, constructor, and prototype keys.
  • Audit all code paths that call objDeepCopy or objCopyProps for potential untrusted input.

Generated by OpenCVE AI on August 3, 2026 at 00:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-x7j8-49r8-mr43 @nevware21/ts-utils: Prototype Pollution in objDeepCopy/objCopyProps via for...in without hasOwnProperty
History

Thu, 30 Jul 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-915
References
Metrics threat_severity

None

cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N'}

threat_severity

Important


Thu, 23 Jul 2026 21:45:00 +0000

Type Values Removed Values Added
First Time appeared Nevware21
Nevware21 ts-utils
Vendors & Products Nevware21
Nevware21 ts-utils

Tue, 21 Jul 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Tue, 21 Jul 2026 14:45:00 +0000

Type Values Removed Values Added
Description @nevware21/ts-utils is a comprehensive TypeScript/JavaScript utility library. Prior to version 0.14.0, the _copyProps function in lib/src/object/copy.ts uses for...in to iterate over source object properties without an Object.hasOwnProperty check, and does not filter dangerous keys (__proto__, constructor, prototype). This allows an attacker to pollute the prototype chain of all objects in the application. Version 0.14.0 patches the issue.
Title @nevware21/ts-utils: Prototype Pollution in objDeepCopy/objCopyProps via for...in without hasOwnProperty
Weaknesses CWE-1321
References
Metrics cvssV4_0

{'score': 7.2, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U'}


Subscriptions

Nevware21 Ts-utils
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-21T15:00:58.090Z

Reserved: 2026-05-15T21:46:51.547Z

Link: CVE-2026-46681

cve-icon Vulnrichment

Updated: 2026-07-21T15:00:14.503Z

cve-icon NVD

Status : Deferred

Published: 2026-07-21T15:16:35.177

Modified: 2026-07-23T18:14:47.213

Link: CVE-2026-46681

cve-icon Redhat

Severity : Important

Publid Date: 2026-07-21T14:02:03Z

Links: CVE-2026-46681 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T00:45:03Z

Weaknesses
  • CWE-1321

    Improperly Controlled Modification of Object Prototype Attributes ('Prototype Pollution')

  • CWE-915

    Improperly Controlled Modification of Dynamically-Determined Object Attributes