medium3.7
CVE-2026-90771
joi before versions 17.13.8 and 18.2.9 contains a prototype pollution vulnerability in the messages compilation function that accepts __proto__ as an error cod…
Impact
joi before versions 17.13.8 and 18.2.9 contains a prototype pollution vulnerability in the messages compilation function that accepts __proto__ as an error code. Attackers can supply __proto__ keys in custom messages to replace the returned object's prototype, breaking downstream code relying on Object.prototype methods.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | joi | < 17.13.8 | 17.13.8 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-wr44-6hxh-3jwq
- https://nvd.nist.gov/vuln/detail/CVE-2026-90771
- https://github.com/hapijs/joi/issues/3150
- https://github.com/hapijs/joi/commit/5b8333c9177e08b4ef4ed02903c2d657084e7afb
- https://github.com/hapijs/joi
- https://github.com/hapijs/joi/blob/v18.2.8/lib/messages.js
- https://www.vulncheck.com/advisories/joi-before-17.13.8-and-18.2.9-prototype-pollution-via-messages
- https://github.com/hapijs/joi/pull/3151
- https://github.com/hapijs/joi/pull/3153
- https://github.com/hapijs/joi/commit/1d2001cad9971327a62c9fd8eb1afec20cd784d2
- https://github.com/hapijs/joi/releases/tag/v17.13.8
- https://github.com/hapijs/joi/releases/tag/v18.2.9