CVE-2026-92599

Joi before 17.13.7 and 18.2.6 ReDoS via isoDate

State
Published
Severity
8.7 High
Published
Sep 16, 2026
Updated
Sep 18, 2026
Reserved
Sep 16, 2026

Read the record on cve.org

Description

joi (npm package `joi`, hapi.js) versions >=17.2.0 <17.13.7 and >=18.0.0 <18.2.6 are vulnerable to regular expression denial of service in the `Joi.string().isoDate()` validation rule. One of the regular expressions the rule applies to the input is unanchored, so a valid ISO date followed by a long run of fractional-second digits causes the regex engine to restart its search from every position in the string, yielding time proportional to the square of the input length (about 1.4 s for 64 KB of digits and about 22 s for 256 KB). A remote attacker who can supply a string to an isoDate validation can stall the application with a single request. Fixed in 17.13.7 and 18.2.6; as a workaround, cap the length of the string before it reaches joi.

Scores

CVSSScoreVectorSource
4.08.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:NVulnCheck
3.17.5 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HVulnCheck

Weaknesses

  • CWE-1333 Inefficient Regular Expression Complexity

Affected Products

ProductVersions
joihapijs
  • 17.2.0 to before 17.13.7Affected
  • 17.13.7Not affected
joihapijs
  • 18.0.0 to before 18.2.6Affected
  • 18.2.6Not affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.