Skip to content
OpenAdvisories
Low · 3.7 CVE-2026-122131 CVE-2026-84368EUVD-2026-117085GHSA-gw37-7cc7-xmm6

Joi 17.13.6 before 17.13.9 and 18.2.5 before 18.3.1 Prototype Replacement via __proto__ Language Key

Published Nov 4, 2026 · Updated Nov 5, 2026 · Assigned by VulnCheck

Description

Joi 17.13.6 before 17.13.9 and 18.2.5 before 18.3.1 contains a prototype pollution vulnerability in lib/messages.js compile() and merge() that fails to reject a __proto__ language key. Attackers supplying untrusted message configuration via any().messages(), prefs, validate options or Joi.extend can replace the compiled messages prototype, altering or breaking validation error rendering and dependent logic.

Affected products

VendorProductAffectedFixed
hapijs joi 17.13.6 – < 17.13.9, 18.2.5 – < 18.3.1 17.13.9

Affected packages

EcosystemPackageAffectedFixedRecord
npm @hapi/joi >= 16.0.0, <= 17.1.1 — GHSA-6w3j-5fw6-r9vr
npm joi >= 17.2.0, < 17.13.6 17.13.6 GHSA-6w3j-5fw6-r9vr
npm joi >= 18.0.0, < 18.2.5 18.2.5 GHSA-6w3j-5fw6-r9vr

References