CVE-2026-12644 ts-deepmerge: Prototype Method Override leads to DoS

Medium 6.9 Published Updated

An attacker can crash the application by providing input with specific Object.prototype keys, causing uncaught exceptions in the ts-deepmerge library.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-12644?

CVE-2026-12644 is a medium-severity denial of service vulnerability in ts-deepmerge, published on 19 Jun 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Versions of the package ts-deepmerge before 8.0.0 are vulnerable to Uncaught Exception due to the improper handling of built-in Object.prototype methods (such as toString, valueOf). When user-controlled input contains these keys with non-function values, the resulting merged object becomes broken — any string context operation throws a TypeError, crashing the application.

Weakness: CWE-248

Which versions are affected by CVE-2026-12644?

2 open source packages ship an affected version, including ts-deepmerge.

PackageAffectedFixed in
ts-deepmerge npmAll versions8.0.0
ts-deepmerge npmAll versions8.0.0

How do I fix CVE-2026-12644?

Upgrade ts-deepmerge to 8.0.0 or later.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2026-12644 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-12644 exists.

Sources

Also known as CLSA-2026-1792473266, CLSA-2026-1792490574, GHSA-87mf-gv2c-c62c.

Is CVE-2026-12644 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free