Description
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 products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
hapijs joi
Default version status: unaffected
16.0.0 to < 17.13.8affected18.0.0 to < 18.2.9affected
pkg:npm/joiReferences
- https://github.com/hapijs/joi/issues/3150 ↗
- https://github.com/hapijs/joi ↗
- https://github.com/hapijs/joi/blob/v18.2.8/lib/messages.js ↗
- https://github.com/hapijs/joi/commit/5b8333c9177e08b4ef4ed02903c2d657084e7afb ↗
- https://www.vulncheck.com/advisories/joi-before-17.13.8-and-18.2.9-prototype-pollution-via-messages ↗