apidoc-core CVE-2025-13158
CRITICALAttack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSupply crafted doc data structure
-
DeliveryReach preProcess() worker parser
-
ExploitInject malicious 'define' property
-
ExecutionPollute Object.prototype chain
-
ImpactTrigger DoS or logic corruption
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V3 - Web Frontend Security Prototype pollution prevention
MITRE ATT&CK
2 techniques across 2 tactics: Execution, Initial Access 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 an application using apidoc-core (versions 0.2.0 and later) pass a malformed/attacker-influenced data structure - specifically one carrying a crafted 'define' property - into the preProcess() function of the api_group.js, api_param_title.js, api_use.js, or api_permission.js worker modules. The practical limiting factor is input provenance: apidoc-core normally parses developer-authored API documentation annotations, which are trusted build-time inputs, so real risk materializes only where an integrating application exposes this parsing to untrusted or externally-supplied data. No authentication is indicated by the provided vector (PR:N), and no user interaction is required (UI:N); impact is bounded to prototype-chain corruption effects (DoS / unintended behavior) rather than confirmed data theft. |
| Impact | The input assigns a Critical CVSS 4.0 base score of 9.3 (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H), which on its face suggests remote, unauthenticated, no-interaction compromise of confidentiality, integrity, and availability. However, these signals should be treated with caution. No EPSS score, KEV listing, or POC was provided, so there is no public evidence of exploitation probability or active abuse - status is 'no public exploit identified at time of analysis.' More importantly, the CVSS impact metrics appear inflated relative to the description: CWE-1321 prototype pollution here 'potentially leads to denial of service or unintended behavior,' which maps far more naturally to availability/limited-integrity impact than to the full VC:H/VI:H/VA:H triad claimed. The AV:N rating is also questionable - apidoc-core is a Node.js documentation-generation library that parses developer-authored API annotation comments, which are normally trusted build-time inputs rather than remote attacker-controlled data; AV:N only holds if a downstream application feeds untrusted external input into the affected preProcess() functions. Net assessment: this is likely a high-CVSS-but-conditional-real-risk issue whose true severity depends entirely on whether an integrating application exposes apidoc-core parsing to untrusted input. Verify the intended data flow with the vendor advisory before treating it as a remotely exploitable priority. |
| Exploit ScenarioDerived | An application that embeds apidoc-core and passes externally-supplied or untrusted data into its parsing pipeline receives a malformed data structure containing a crafted 'define' property. When preProcess() in api_group.js, api_param_title.js, api_use.js, or api_permission.js processes it, the attacker pollutes Object.prototype, degrading or crashing the application (DoS) or inducing unintended logic that relies on prototype-chain integrity. No public exploit code was identified at time of analysis. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 05, 2026
Prototype pollution in apidoc-core 0.2.0 and all later versions lets an attacker who can influence the data structures parsed by the library corrupt JavaScript object prototypes through a crafted 'define' property handled by the preProcess() function, potentially causing denial of service or unexpected behavior in the consuming application. The affected parsing is typically applied to developer-authored API annotation comments, which are trusted build-time inputs; real risk only materializes when an integrating application feeds untrusted or externally-supplied data into this parser. No public exploit identified at time of analysis, and no confirmed active exploitation (no KEV listing); the supplied CVSS 4.0 score of 9.3 (network, unauthenticated, high CIA impact) is not supported by the independent assessment, which rates the issue as a local-vector, low-integrity and low-availability impact flaw rather than a confirmed remote compromise.
RemediationAI
No vendor-released patch identified at time of analysis, so remediation must rely on compensating controls while a fixed release is tracked in the upstream apiDoc/apidoc-core repository and the Sonatype advisory (https://www.sonatype.com/security-advisories/cve-2025-13158). The most effective control is input provenance hardening: never pass untrusted, externally supplied, or user-modifiable data into apidoc-core's parsing/annotation pipeline, keeping documentation generation to trusted developer-authored comments only - the trade-off is that any feature relying on dynamic doc input must be reworked. If untrusted input is unavoidable, sanitize or schema-validate parsed structures before they reach preProcess(), rejecting or stripping reserved keys such as '__proto__', 'constructor', 'prototype' and the crafted 'define' property; this can break legitimate annotation names that collide with those keys. Additional hardening includes running the documentation build in an isolated, unprivileged, network-restricted container so a successful pollution/DoS cannot affect production, and freezing protection at the process level (e.g. Object.freeze(Object.prototype), Object.create(null) maps, or Node's --disable-proto=throw flag), which may break third-party libraries that legitimately mutate prototypes. Monitor the upstream package and advisory for an official fixed version and upgrade as soon as it is published.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
apidoc-core is the parsing engine behind apiDoc, a documentation generator that reads structured annotation blocks from source comments and transforms them into JavaScript objects. The flaw is CWE-1321 (Improperly Controlled Modification of Object Prototype Attributes, i.e. prototype pollution): the preProcess() logic in the worker modules api_group.js, api_param_title.js, api_use.js and api_permission.js does not block or validate reserved keys such as 'define' (and related prototype-chain keys), so a malformed structure passed into those routines can walk or write into Object.prototype. Because JavaScript objects inherit from a shared prototype chain, corrupting it affects every object created afterward in the same process, producing nondeterministic behavior, thrown errors, or resource exhaustion. The vulnerability is not a memory-safety or injection-to-RCE primitive on its own; its impact is bounded to prototype-chain corruption unless a downstream gadget in the host application converts the polluted properties into more severe behavior. Exploitation requires that attacker-influenced data reach the parser, and the independent assessment scores it CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L, indicating a local vector, no required authentication or interaction, and limited integrity/availability impact rather than the network-facing, high-CIA-impact profile implied by the input's 9.3 score.
Know when Prototype Pollution 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
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
apidoc-core parses locally-supplied documentation input so AV:L; prototype pollution yields limited integrity corruption and DoS (I:L/A:L) with no confidentiality impact, not the full triad.
Primary rating from Vendor (103e4ec9-0a87-450b-af77-479448ddef11).
CVSS VectorVendor: 103e4ec9-0a87-450b-af77-479448ddef11
DescriptionCVE.org
Prototype pollution vulnerability in apidoc-core versions 0.2.0 and all subsequent versions allows remote attackers to modify JavaScript object prototypes via malformed data structures, including the “define” property processed by the application, potentially leading to denial of service or unintended behavior in applications relying on the integrity of prototype chains. This affects the preProcess() function in api_group.js, api_param_title.js, api_use.js, and api_permission.js worker modules.
Executive ViewAI
A prototype pollution issue affects apidoc-core 0.2.0 and all later versions, a build-time API documentation parser used in developer tooling. The practical business risk is limited to organizations that route untrusted or externally supplied content into this parser; typical trusted developer-annotation workflows do not create a remote compromise path. No public exploit identified at time of analysis, and no vendor-released patch identified at time of analysis, so impacted teams should focus on preventing untrusted input from reaching the affected component while tracking vendor remediation.
No vendor-released patch identified; restrict apidoc-core parsing to trusted developer-authored annotations, never feed untrusted or externally supplied data into the parser, run builds in isolated least-privilege environments, validate and sanitize inputs, and monitor the vendor for a fixed release.
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
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
More in Prototype Pollution
View allPrototype pollution in Adobe Acrobat Reader versions 24.001.30356, 26.001.21367 and earlier enables arbitrary code execu
All versions of package dojo are vulnerable to Prototype Pollution via the setObject function. Rated critical severity (
Prototype pollution in the farinspace Partners WordPress plugin (versions up to and including 0.2.0) enables remote unau
The package handlebars before 4.7.7 are vulnerable to Prototype Pollution when selecting certain compiling options to co
This affects the package ini before 1.3.6. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitabl
Prototype pollution vulnerability in 'deephas' versions 1.0.0 through 1.0.5 allows attacker to cause a denial of service
A Prototype Pollution issue in Cronvel Tree-kit v.0.7.4 and before allows a remote attacker to execute arbitrary code vi
A Prototype Pollution issue in Aliconnect /sdk v.0.0.6 allows an attacker to execute arbitrary code via the aim function
All versions of the package safe-eval are vulnerable to Prototype Pollution via the safeEval function, due to improper s
This affects the package vm2 before 3.9.4 via a Prototype Pollution attack vector, which can lead to execution of arbitr
Prototype Pollution in chargeover redoc v2.0.9-rc.69 allows attackers to execute arbitrary code or cause a Denial of Ser
alizeait unflatto <= 1.0.2 was discovered to contain a prototype pollution via the method exports.unflatto at /dist/inde
NVD
CVE.org
EPSS
VulDB
GitHub PoC
Exploit-DB