Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessControl template string input to faker
-
DeliveryCraft property chain targeting function.constructor
-
ExploitresolveProperty traverses to Function constructor
-
ExecutionInvoke Function constructor with arbitrary JS payload
-
ImpactExecute code in Node.js process context
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Eval input sanitization
MITRE ATT&CK
1 technique across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that attacker-controlled strings reach the |
| Impact | The CVSS 3.1 vector (AV:L/AC:L/PR:L/UI:N, score 7.8) positions this as a local, low-complexity attack requiring low privileges. This framing is accurate for the most common Faker.js use case - a developer or CI process where the attacker already has local code execution and can craft templates. However, real-world risk is significantly higher for applications that accept user input and pass it to |
| Exploit ScenarioDerived | An attacker identifies a server-side API endpoint (e.g., a mock-data preview or seeding service) that accepts a template string and passes it directly to |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 11, 2026
Arbitrary JavaScript code execution in Faker.js prior to 10.5.0 is achievable when attacker-controlled strings reach the faker.helpers.fake template engine. The vulnerability resides in fakeEval.resolveProperty in src/modules/helpers/eval.ts, where direct property access on a function return value (entrypoint?.[key]) allows traversal to the Function constructor via constructor.constructor, a classic sandbox escape. Applications that pass any user-supplied input to faker.helpers.fake on the server side are directly exposed to remote code execution; in local/development contexts, exploitation requires low-privileged access to control template strings. No public exploit identified at time of analysis, and the fix is available in version 10.5.0.
RemediationAI
Upgrade Faker.js to version 10.5.0 or later, which contains the patched resolveProperty implementation (commit 54586208f904012f57c50b46cc1ad32bcbe4bfb7). The release is available at https://github.com/faker-js/faker/releases/tag/v10.5.0. Run npm update @faker-js/faker or pin @faker-js/faker@^10.5.0 in your package.json. If an immediate upgrade is not possible, the most effective compensating control is to ensure no user-supplied or externally influenced strings are ever passed as templates to faker.helpers.fake or fakeEval - enforce this at the API boundary with an allowlist of permitted template strings rather than a denylist. Faker.js should be treated as an internal/development-only dependency and never exposed to raw user input without sanitization; removing any public endpoints that proxy templates to faker is the safest interim measure. Note: restricting faker to development dependencies only (devDependencies) eliminates the attack surface in production entirely, with no functional trade-off if faker is used solely for test data generation.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in npm, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Faker.js (CPE: cpe:2.3:a:fakerjs:faker:*:*:*:*:*:node.js:*:*) is a widely used JavaScript library for generating synthetic test data, running in both Node.js and browser environments. The vulnerable code path is faker.helpers.fake, which processes mustache-style template strings (e.g., {{internet.email}}) by evaluating property chains via fakeEval in src/modules/helpers/eval.ts. The root cause is CWE-95 (Improper Neutralization of Directives in Dynamically Evaluated Code - Eval Injection): the resolveProperty function used direct bracket-notation access (entrypoint?.[key]) on any value, including function objects. In JavaScript, functions expose a constructor property pointing to the built-in Function object. A template like {{custom.lazyFn.constructor.constructor('malicious')()}} would chain through resolveProperty to reach Function, allowing construction and execution of arbitrary JS. The fix (commit 54586208) replaces direct property access with a recursive call to resolveProperty itself, which invokes functions and resolves properties on their return values rather than on the raw function object - closing the path to Function.prototype.constructor.
Know when Node.js gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Attacker must control template strings passed to faker, implying at minimum low-privileged local code execution or application-level access; AV:N only applies when applications expose faker to user input.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
2DescriptionCVE.org
Faker generates massive amounts of fake data in the browser and Node.js. Prior to 10.5.0, the faker.helpers.fake method in src/modules/helpers/eval.ts allows attacker-controlled fake templates to access the Function constructor through fakeEval.resolveProperty when a function returns another function, enabling arbitrary JavaScript code execution. This issue is fixed in version 10.5.0.
Blast Radius
ecosystem impact- 639 npm packages depend on @faker-js/faker (355 direct, 287 indirect)
Ecosystem-wide dependent count for version 10.5.0.
Articles & Coverage 1
Executive ViewAI
Faker.js versions prior to 10.5.0 contain a remote code execution vulnerability enabling attackers to execute arbitrary JavaScript code on affected servers when user-supplied input is processed through the library's template engine. This impacts organizations using Faker.js for server-side data generation, potentially compromising application servers and the data they handle. Immediate patching is required for all production systems.
Apply vendor patch: Faker.js version 10.5.0.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Remote code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation
A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could
FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc
An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi
Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin
The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic
Same weakness CWE-95 – Eval Injection
View allVendor StatusVendor
SUSE
Severity: Important| Product | Status |
|---|---|
| SUSE Linux Enterprise Module for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP3 | Affected |
| SUSE Linux Enterprise Module for SAP Applications 15 SP6 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Affected |
EUVD-2026-56923
GHSA-qxc2-j82w-r537
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB