Exploitation Summary
EIP tracks 2 public exploits for CVE-2025-12758. PoCs published by open-flaw, dajneem23.
AI-analyzed exploit summary The repository contains a functional PoC demonstrating CVE-2025-12758, a Unicode variation selector bypass in the `validator.js` npm package's `isLength()` function. The PoC shows how strings with variation selectors are incorrectly validated, allowing longer inputs to pass length checks.
Description
Versions of the package validator before 13.15.22 are vulnerable to Incomplete Filtering of One or More Instances of Special Elements in the isLength() function that does not take into account Unicode variation selectors (\uFE0F, \uFE0E) appearing in a sequence which lead to improper string length calculation. This can lead to an application using isLength for input validation accepting strings significantly longer than intended, resulting in issues like data truncation in databases, buffer overflows in other system components, or denial-of-service.
Exploits (2)
The repository contains a functional PoC demonstrating CVE-2025-12758, a Unicode variation selector bypass in the `validator.js` npm package's `isLength()` function. The PoC shows how strings with variation selectors are incorrectly validated, allowing longer inputs to pass length checks.
This PoC demonstrates a Unicode variation selector bypass in the `validator.js` npm package's `isLength()` function, allowing strings with invisible characters to pass length validation checks. The vulnerability can lead to data truncation, buffer overflows, or DoS attacks.
References (4)
Scores
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H