p PatchFirst

CVE-2026-48038

CVE-2026-48038 · joi: Uncaught RangeError on deeply nested input through recursive `link()` schemas

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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.

CVSS 5.3 · Medium · EPSS 0.5% · Fix available

Published
Updated

Stack: node

Affected products and versions

  • joi

    Versions
    • < 17.13.4: Affected
    • >= 18.0.0, < 18.2.1: Affected

    No fix published

  • joi npm

    Affected ranges
    • SEMVER: ≥ 18.0.0, < 18.2.1

    Update to 18.2.1

  • joi npm

    Affected ranges
    • SEMVER: < 17.13.4

    Update to 17.13.4

Original sources

Check your server →