Skip to main content

DeepWiki-Open CVE-2026-103591

| EUVDEUVD-2026-90439 HIGH
External Control of File Name or Path (CWE-73)
2026-09-30 VulnCheck GHSA-2p6v-qgww-hch5
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Discover exposed DeepWiki-Open API
  2. Delivery
    Send GET /codemap/file with non-URL repo_url
  3. Exploit
    Bypass path-containment check
  4. Execution
    Specify absolute target file path
  5. Persist
    Read arbitrary file contents
  6. Impact
    Harvest secrets and source

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File name/path control
Exploitation Conditions

No special conditions - remote unauthenticated exploitation against default configurations of DeepWiki-Open (through commit d92819a). The only requirements are network reachability of the API and that the /codemap/file endpoint is exposed; exploitation is a single GET request supplying a non-URL repo_url value with an absolute path. The practical limit on impact is that disclosure is bounded to files readable by the API process's user, and the product's small deployment footprint constrains the realistic target population rather than any attacker-side prerequisite.

Impact

This is a genuine, high-priority exposure for anyone running DeepWiki-Open, despite the absence of exploitation telemetry. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H) describes the most favorable conditions for an attacker: network-reachable, low complexity, no authentication, no user interaction. The flaw is a classic CWE-73 (external control of file name/path) reachable through a single unauthenticated GET request to /codemap/file, so it is trivially automatable against any exposed instance. Impact is scoped correctly to confidentiality only (VC:H, VI:N, VA:N) - it reads arbitrary files but does not by itself write or execute, which is why the 'RCE' tag overstates the technical impact. No EPSS score, no CISA KEV listing, and no confirmed public exploit code were provided; the VulnCheck advisory and GitHub issue #590 document the technique and vulnerable source (codemap.py/repository.py) but that is disclosure, not a weaponized exploit or active-exploitation signal. Net: a high-severity, easily-exploited bug in a low-footprint product - real priority for the small population that runs it (expose secrets, config, SSH keys, source), but not a mass-exploitation event at this time.

Exploit ScenarioDerived

An attacker locates an internet-exposed DeepWiki-Open instance and sends an unauthenticated GET /codemap/file request supplying a non-URL value for repo_url (e.g. an absolute path like /etc/passwd or /app/.env). Because the non-URL value bypasses the path-containment check, the API returns the contents of any file readable by the service process, letting the attacker harvest credentials, API keys, and source code. No public exploit code is identified at time of analysis, but the VulnCheck advisory details the exact endpoint and bypass.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
1 PoC candidate (unverified) No patch listed yet 0.4% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 01, 2026

Unauthenticated arbitrary file read in DeepWiki-Open (all builds through commit d92819a) allows remote attackers to retrieve any file readable by the API process by sending a single GET request to /codemap/file with a non-URL repo_url value containing an absolute path. Both the CVSS v4.0 score (8.7) and the independent assessment rate it AV:N/AC:L/PR:N/UI:N with high confidentiality impact and no integrity or availability impact, so any network-reachable instance with the endpoint exposed is at risk. No public exploit code or active exploitation telemetry has been identified at time of analysis, and real-world impact is bounded by the privileges of the service account and the product's modest deployment footprint.

RemediationAI

No vendor-released patch or fixed version is identified at time of analysis: the only references are the upstream issue (https://github.com/AsyncFuncAI/deepwiki-open/issues/590), the vulnerable source blobs (api/routers/codemap.py, api/services/codemap.py, api/repository.py at commit d92819a9c9f3b99416e3580ff235fc9d3adf8b89), and the VulnCheck advisory (https://www.vulncheck.com/advisories/deepwiki-open-through-commit-d92819a-unauthenticated-arbitrary-file-read-via-codemap-file), none of which point to a tagged fix. Until an upstream fix is published and deployed, block or remove the GET /codemap/file route at a reverse proxy or in the application (trading off loss of the codemap file feature) and avoid exposing the API beyond trusted networks or a VPN; additionally, run the API under a dedicated least-privilege OS account with read access limited to the repository/workspace directories so that absolute-path reads cannot reach /etc/shadow, cloud metadata credentials, mounted secrets, or SSH keys, and place those sensitive paths on a read-restricted mount or container read-only root filesystem. Monitor requests to /codemap/file for repo_url values that are not valid URLs or that contain absolute paths as a detection signal, and adopt a project commit or backport as soon as one is published.

Affected VersionsENISA

deepwiki-open 0 ≤d92819a

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-73 (External Control of File Name or Path) in the FastAPI-based backend of DeepWiki-Open, an open-source AI documentation/wiki generator that clones and indexes source repositories. The GET /codemap/file endpoint takes a repo_url parameter in api/routers/codemap.py and passes it through path-handling logic in api/services/codemap.py and api/repository.py; containment checks on the resulting file path are only applied along the URL/normal-repository code branch, so supplying a value that is not a URL skips that validation entirely and the handler resolves and reads an attacker-supplied absolute path as the process user. The CPE cpe:2.3:a:asyncfuncai:deepwiki-open:*:*:*:*:*:*:*:* indicates the issue is unfixed across known releases up to the referenced commit d92819a; the affected code is public in the linked GitHub blobs and the report is tracked in issue #590 and VulnCheck advisory. One supplied tag mentions RCE, but the assessed and described impact is read-only information disclosure, so remote code execution should not be assumed.

Know when Deepwiki Open 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 (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Unauthenticated single-request network file read against default config (AV:N/AC:L/PR:N/UI:N); confidentiality-only arbitrary file read, no write or execution so I:N/A:N.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

DescriptionCVE.org

DeepWiki-Open through commit d92819a contains an unauthenticated arbitrary file read vulnerability in the GET /codemap/file endpoint via the repo_url parameter. Attackers can supply a non-URL repo_url value to bypass path containment checks and read any file accessible to the API process by specifying absolute file paths.

Technical POC Analysis

Evidence caveat: the only supplied source is a CTI digest that names the product, CVE, and impact ("unauthenticated attackers ...

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 PoC candidate from github (unverified)

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

DeepWiki-Open, a self-hosted code documentation tool, contains an unauthenticated file-read flaw that lets anyone who can reach the service retrieve any file the API process can access - including configuration files, credentials, and source code outside the intended repository scope. Because no login is required and no vendor fix is available, every exposed instance remains vulnerable until it is contained at the network or application layer. Leadership should care primarily about credential and intellectual-property exposure: secrets harvested from a single reachable instance can be reused to pivot into connected systems, and the organization cannot remediate this through patching alone.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict network reachability of the service and block or disable the /codemap/file endpoint at the proxy/WAF layer; run the API process under a dedicated low-privilege account with filesystem access scoped only to required repository paths; remove secrets and credentials from any file readable by that account; monitor and alert on GET requests to /codemap/file containing absolute paths in the repo_url parameter.

Threat Intelligence Overview

EPSS Score
0.4%
Top 65% exploitable
Prevalence
Low
niche open-source AI code-wiki tool, limited production footprint
Data Quality
5 sources
Confidence: Medium

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.4%
Patch available No
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
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

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

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