SEPTEMBER 14, 2026
Live Feed
Back to database
Case File

CVE-2026-84367

LOW · CVSS 3.7 EPSS 0.27% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-09-01 · Last synced 2026-09-14

CyberRota Analysis

AI-Generated

The vulnerability affects the joi library in JavaScript, specifically in its key renaming functionality, which can be exploited by an attacker to manipulate object prototypes through crafted input. While the impact is limited to the object returned by the validation call and does not modify the global Object.prototype, it could lead to unexpected behavior or security issues in applications relying on this library. Developers using affected versions (16.0.0 to 17.13.4 and 18.2.3) should prioritize updating to the patched versions (17.13.5 and 18.2.4) to mitigate potential risks.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-84367
Severity
LOW
CVSS
3.7
EPSS
0.27%
Java

Original NVD Description

joi is a schema description language and data validator for JavaScript. From 16.0.0 until 17.13.5 and 18.2.4, joi's lib/types/keys.js internals.rename() implementation used by object().rename() permits a schema that renames keys with a regular-expression source and a Joi.expression() or Joi.x() target that interpolates the pattern's own match data, combined with { multiple: true }, to derive a target from an attacker-controlled input key. An attacker can send x-__proto__ with an object value, causing the target to render as __proto__ and set the prototype of the object returned by validate() instead of creating an own key. The global Object.prototype is not modified, so the effect is confined to the object returned by that validation call. Static-string targets and schemas using the default { multiple: false } are not affected. This issue is fixed in versions 17.13.5 and 18.2.4.