---
id: CVE-2026-90946
title: >-
  DeepWiki-Open through commit d92819a contains an arbitrary file read
  vulnerability in the unauthenticated /ws/chat WebSocket endpoint that accepts
  repo_url as a filesystem path with no containment
summary: >-
  DeepWiki-Open through commit d92819a contains an arbitrary file read
  vulnerability in the unauthenticated /ws/chat WebSocket endpoint that accepts
  repo_url as a filesystem path with no containment. Attackers can supply
  arbitrary director…
severity: high
cvss: 7.5
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'
cwe:
  - CWE-73
vendor: AsyncFuncAI
product: deepwiki-open
affected:
  - deepwiki-open <= d92819a
published: '2026-09-14'
updated: '2026-09-23'
sourceUpdated: '2026-09-23T17:17:44.713'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-90946'
references:
  - url: 'https://github.com/AsyncFuncAI/deepwiki-open'
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/AsyncFuncAI/deepwiki-open/blob/16f35a0fc0284e99b7963bbf4e8585e9957e2fe1/api/data_pipeline.py
    label: disclosure@vulncheck.com
  - url: >-
      https://github.com/AsyncFuncAI/deepwiki-open/blob/d92819a9c9f3b99416e3580ff235fc9d3adf8b89/api/repository.py
    label: disclosure@vulncheck.com
  - url: 'https://github.com/AsyncFuncAI/deepwiki-open/issues/536'
    label: disclosure@vulncheck.com
  - url: >-
      https://www.vulncheck.com/advisories/deepwiki-open-through-commit-d92819a-arbitrary-file-read-via-ws-chat-websocket
    label: disclosure@vulncheck.com
  - url: 'https://github.com/AsyncFuncAI/deepwiki-open/issues/536'
    label: 134c704f-9b21-4f2e-91b3-4a467353bcc0
tags:
  - nvd
  - cve.org
  - exploit-available
epss: 0.00508
epssPercentile: 0.40916
exploitAvailable: true
ssvc:
  exploitation: poc
  automatable: 'yes'
  technicalImpact: partial
  timestamp: '2026-09-14T18:08:51.271440Z'
ingestedAt: '2026-09-14T19:13:23.463Z'
---

## Overview

DeepWiki-Open through commit d92819a contains an arbitrary file read vulnerability in the unauthenticated /ws/chat WebSocket endpoint that accepts repo_url as a filesystem path with no containment. Attackers can supply arbitrary directory paths to read all files with supported extensions including Python, JavaScript, YAML, and JSON files containing hardcoded secrets and credentials.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
