joi has an uncaught RangeError on deeply nested input through recursive `link()` schemas
- When
- Where
- Global (internet)
- Category
- cyber_advisory · npm
### Impact Denial of service via untrapped exception in services validating user-supplied JSON / object input with recursive link schemas. The blast radius depends on how the application invokes joi: - Highest impact: `validate()` called without `try/catch` in a request handler would cause an unhandled exception, potentially crashing the process. - Lower impact: `validateAsync()` or `validate()` inside a `try/catch`, the validation fails, but the error type is `RangeError` rather than a structured `ValidationError`, complicating error handling. ### Patches Upgrade to version >= 18.2.1. ### Workarounds Try/catch the validation to avoid uncaught exceptions. ### References - Pull request: hapijs/joi#3113
Sources
- GitHub Advisory Database ↗ · first seen 2026-06-11 13:27 UTC
Defaxon links out to the original reporting and never republishes article text.
Correlated events
Computed by the Defaxon correlation engine — linked by shared actors, co-location, and temporal proximity. Scored hypotheses, never causal claims.
No correlated events found in the current window. As more events arrive, connections form automatically.