Read the docs
TI-2026-35481 Aliases CVE-2026-48038GHSA-q7cg-457f-vx79

joi: Uncaught RangeError on deeply nested input through recursive `link()` schemas

Priority LOW 31CWE-248Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · Low
Fix status
Partial Red Hat: 6 without a fix

Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-248.

Summary

joi is a schema description language and data validator for JavaScript. Prior to 17.13.4 and 18.2.1, denial of service is possible via an untrapped exception in services validating user-supplied JSON or object input with recursive link() schemas. When validate() is called without try/catch in a request handler, deeply nested input can trigger an unhandled RangeError and potentially crash the process; lower-impact paths using validateAsync() or try/catch produce a RangeError instead of a structured ValidationError. This issue is fixed in versions 17.13.4 and 18.2.1.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00524 44th percentileScored 2026-11-07
Fix Partial joi (hapijs): 17.13.4, 18.2.1joi (npm): 18.2.1, 17.13.4Red Hat: 6 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
hapijsjoibefore 17.13.4; 18.0.0 to before 18.2.117.13.4, 18.2.1Patch availableCNA
—joi (npm)18.0.0 to before 18.2.118.2.1Patch availableGHSA-q7cg-457f-vx79
—joi (npm)before 17.13.417.13.4Patch availableGHSA-q7cg-457f-vx79
  • joi Vendorhapijs Affected before 17.13.4; 18.0.0 to before 18.2.1 Fixed in 17.13.4, 18.2.1 Patch available CNA
  • joi (npm) Vendor— Affected 18.0.0 to before 18.2.1 Fixed in 18.2.1 Patch available GHSA-q7cg-457f-vx79
  • joi (npm) Vendor— Affected before 17.13.4 Fixed in 17.13.4 Patch available GHSA-q7cg-457f-vx79

Remediation

  • Fix · CNA joi (hapijs) Fixed in 17.13.4, 18.2.1
  • Fix · GHSA-q7cg-457f-vx79 joi (npm) Fixed in 18.2.1 Advisory →
  • Fix · GHSA-q7cg-457f-vx79 joi (npm) Fixed in 17.13.4 Advisory →

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
Gatekeeper 3AffectedNo fix yet: Fix deferred
Migration Toolkit for ContainersAffectedNo fix yet: Fix deferred
Red Hat Build of Podman DesktopAffectedNo fix yet: Fix deferred
Red Hat OpenShift AI (RHOAI)AffectedNo fix yet: Fix deferred
Red Hat OpenShift Container Platform 4AffectedNo fix yet: Fix deferred
Red Hat OpenShift Dev SpacesAffectedNo fix yet: Fix deferred
Not affected: 2 products
  • Cryostat 4
  • Red Hat Data Grid 8

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-48038
  2. 2026-10-03 Alias added: GHSA-q7cg-457f-vx79

References

  • TI-2026-82752 Quadratic-time parsing in @hapi/content allows denial of service CVSS 3.1HIGH 7.5
  • TI-2026-82716 Quadratic-time split in joi email rule allows denial of service CVSS 3.1HIGH 7.5
  • TI-2026-61678 joi before 17.13.8 and 18.2.9 Prototype Pollution via messages CVSS 4.0MEDIUM 6.3
  • TI-2018-02726 Prototype pollution in @hapi hoek node module CVSS 3.0HIGH 8.8
  • TI-2026-79747 Regular expression denial of service in @hapi/content disposition parsing CVSS 4.0HIGH 8.7
  • TI-2026-62455 Joi before 17.13.7 and 18.2.6 ReDoS via isoDate CVSS 4.0HIGH 8.7
See all 21 →

Sources