Skip to main content

tarteaucitron.js CVE-2026-111714

| EUVDEUVD-2026-103006 LOW
Inefficient Regular Expression Complexity (ReDoS) (CWE-1333)
2026-10-16 VulnCheck GHSA-h33v-xq5w-v2mw
2.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Plant malicious cookie from sibling subdomain
  2. Exploit
    Victim loads page and clicks purge button
  3. Execution
    Unescaped cookie name builds vulnerable regex
  4. Impact
    Catastrophic backtracking freezes browser tab

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V2 - Validation and Business Logic Regex complexity limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires that the attacker can control the cookie name read by tarteaucitron's cookie.purge routine - specifically either (a) the ability to set a cookie on a sibling subdomain sharing the victim's parent domain, or (b) the ability to inject a purgeBtn DOM element carrying a crafted data-cookie attribute containing a catastrophic-backtracking pattern. Exploitation is further gated by mandatory user interaction: the victim must actually click the purge button to trigger the vulnerable regex (UI:P). Limiting factors are significant - high attack complexity (AC:H), a required attack condition (AT:P), dependence on the victim performing the purge action, and the fact that impact is confined to freezing the client-side page (availability only, VA:L); there is no server-side, confidentiality, or integrity impact.

Impact

This is a low-priority issue despite being a network-reachable vulnerability. The vendor-assigned CVSS 4.0 vector (AV:N/AC:H/AT:P/PR:N/UI:P, VA:L only) yields a score of just 2.3, and every signal corroborates low real-world risk. The attack requires high complexity (AC:H), a specific attack condition (AT:P), and active user interaction (UI:P - the victim must click the purge button), while the only impact is limited availability (VA:L) - a frozen browser tab, not server-side DoS, data exposure, or code execution. No EPSS score was provided, the CVE is not in CISA KEV, and no public exploit was identified in the supplied intelligence, so there is no evidence of active exploitation; this is a client-side availability nuisance rather than a widespread threat. The source-code evidence confirms the root cause and the fix: the pre-1.37.0 regex concatenated the raw cookie name into a RegExp, and the patch (commit 60faaba) escapes regex metacharacters, consistent with a genuine CWE-1333 catastrophic-backtracking ReDoS. Verdict: a real but very low-severity, self-inflicted/targeted client-side DoS - remediate via routine dependency update, not emergency patching.

Exploit ScenarioDerived

An attacker who controls a sibling subdomain (or who can inject a purgeBtn element with a crafted data-cookie attribute into the page) plants a cookie whose name contains a catastrophic-backtracking pattern. When the victim clicks the cookie purge button, tarteaucitron.js builds an unescaped regular expression from that name, and the resulting exponential backtracking freezes the browser tab. No public exploit was identified in the provided data, though the vendor commit diff clearly demonstrates the vulnerable regex construction.

Monitor Track and reassess. Why: LOW severity (CVSS 0.1-3.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 16, 2026

Client-side page freezing in tarteaucitron.js before 1.37.0 allows an attacker to hang a visitor's browser tab by forcing the cookie-purge routine to evaluate a catastrophic-backtracking regular expression built from an unescaped cookie name. The library constructs a RegExp from each cookie name without escaping regex metacharacters, so a name planted as a cookie on a sibling subdomain, or supplied through an injected purgeBtn element's data-cookie attribute, can drive exponential backtracking when the purge action runs. Exploitation is unauthenticated per the CVSS vector (PR:N) but is heavily constrained: it requires an attacker-controlled cookie name (or DOM injection) plus the victim actually clicking the purge control, and the only consequence is a frozen page - no confidentiality or integrity impact. No public exploit code or confirmed in-the-wild exploitation was identified at time of analysis, and the issue is assessed as low priority (CVSS 4.0 base 2.3; independently assessed CVSS 3.1 AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:L).

RemediationAI

Upgrade tarteaucitron.js to 1.37.0 or later (vendor-released patch: 1.37.0), which is the release that incorporates commit 60faaba5fd541cad770549d422fc4ac7de657e56 escaping regex metacharacters in cookie names and simplifying the anchor pattern; sites that self-host or pin a CDN URL must update the pinned version and re-deploy, and the minified bundle should be regenerated from the patched source. Vendor and research advisories are available at https://github.com/AmauriC/tarteaucitron.js/releases/tag/v1.37.0 and https://www.vulncheck.com/advisories/tarteaucitron-js-before-1.37.0-redos-via-unescaped-cookie-name-in-cookie-purge. Where immediate upgrading is impractical, compensating controls should target the two injection paths rather than the regex itself: ensure no cookie name passed into cookie.purge is attacker-influenceable (audit cookieName and any purge-list configuration so they are static, hard-coded application values - the trade-off being loss of dynamic cookie handling), stop sibling subdomains from writing cookies visible to the primary host by using __Host- prefixed cookies and avoiding overly broad Domain attributes on the parent domain (this may break legitimate cross-subdomain session sharing), and rely on a strict Content-Security-Policy plus server-side input filtering to prevent injection of purgeBtn elements carrying hostile data-cookie attributes (CSP cannot remove an already-present DOM node, so it complements rather than replaces patching). Because exploitation additionally requires the visitor to click the purge control, temporarily hiding or disabling that user-facing control reduces exposure, at the cost of removing the cookie-purge feature from the consent UI.

Affected VersionsENISA

tarteaucitron.js 0 <1.37.0

Affected Packages

euvd tarteaucitron_js fix: 1.37.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

tarteaucitron.js is a widely deployed open-source JavaScript consent-management (cookie banner) library, tracked as CPE cpe:2.3:a:amauric:tarteaucitron.js:*:*:*:*:*:*:*:* and distributed via GitHub, CDN bundles and npm. The flaw is CWE-1333 (Inefficient Regular Expression Complexity, i.e. ReDoS) in the cookie.purge logic. Prior to the fix, the code built a matcher dynamically from an array of cookie names: new RegExp("^(.*;)?\\s*" + arr[i] + "\\s*=\\s*[^;]+(.*)?$"). Because arr[i] was interpolated verbatim, an attacker-influenced cookie name containing regex metacharacters (nested quantifiers, alternations, backreferences) is compiled directly into the pattern, producing catastrophic backtracking when the expression is matched against cookie strings. The upstream commit 60faaba5fd541cad770549d422fc4ac7de657e56 rewrites the expression as new RegExp("(?:^|;\\s*)" + arr[i].replace(/[.*+?^${}()|[\]\\]/g, '\\$&') + "\\s*="), which both escapes regex metacharacters in the cookie name and simplifies the anchors, eliminating the ambiguity that caused backtracking. Two attacker paths reach the sink: planting a cookie bearing a malicious name on a sibling subdomain under the same parent domain (cookies are scoped by domain, and a sibling subdomain can frequently set a cookie readable by the victim host), or injecting a purgeBtn element whose data-cookie attribute carries the crafted pattern. In both cases the browser main thread blocks during regex evaluation, freezing the page's JavaScript.

Know when Tarteaucitron Js gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 2.3 LOW
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
vuln.today AI 3.1 LOW

Network-reachable but needs attacker-controlled cookie/element plus victim clicking purge, so AC:H and UI:R; no auth (PR:N); only the client page is frozen, so A:L with C:N/I:N.

3.1 AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:N/A:L
4.0 AV:N/AC:H/AT:P/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
High
Attack Requirements
Present
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
Low
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

tarteaucitron.js before 1.37.0 contains a regular expression denial of service vulnerability that allows attackers to block visitor pages by supplying unescaped cookie names to cookie.purge. Attackers can plant a cookie from a sibling subdomain or inject a purgeBtn element with a catastrophic-backtracking data-cookie pattern that freezes the page when the purge button is clicked.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Medium
popular GDPR/cookie-consent JS banner, common on EU/French sites
Data Quality
5 sources
Confidence: Medium

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity LOW
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
LOW severity (CVSS 0.1-3.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Low

Priority Score

12
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +12
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy