Skip to main content

ZLMediaKit CVE-2026-81028

| EUVDEUVD-2026-66604 MEDIUM
Path Traversal (CWE-22)
2026-08-26 VulnCheck GHSA-4j5x-jgmh-j582
6.9
CVSS 4.0 · Vendor: VulnCheck
Share

Severity by source

Vendor (VulnCheck) PRIMARY
6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
4.9 MEDIUM

Network-accessible endpoint requires high-privilege API secret; traversal is read-only with no integrity, availability, or scope-change impact.

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

CVSS:4.0/AV:N/AC:L/AT:N/PR:H/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Attack Vector
Network
Attack Complexity
Low
Privileges Required
High
User Interaction
None
Scope
X

Lifecycle Timeline

1
Analysis Generated
Aug 26, 2026 - 16:59 vuln.today

DescriptionCVE.org

ZLMediaKit confines the downloadFile API to a configured set of root directories with a prefix comparison that does not account for directory boundaries. The configuration loader in server/WebApi.cpp builds each root with File::absolutePath("", item, true); because the relative-path argument is empty that helper returns the value without a trailing separator. The handler then accepts a requested path when start_with(file_path, root) holds, so a sibling directory whose name merely begins with the configured root string satisfies the test and is served. The only other guard rejects a path containing two dots, which this requires none of. The equivalent confinement check for the ordinary static file server in src/Http/HttpFileManager.cpp computes its root with a non-empty second argument, which appends the separator before comparing, and so is not affected. The endpoint requires the configured API secret, so this grants no privilege beyond what that secret already implies, but it reads files outside the directory the operator confined it to, and the reference container runs the server as root.

AnalysisAI

Path traversal in ZLMediaKit's downloadFile API allows an authenticated operator holding the API secret to read files from sibling directories outside the configured root, because the root path is built without a trailing separator and the confinement check is a bare prefix comparison. The flaw is isolated to server/WebApi.cpp and does not affect the standard static file server in src/Http/HttpFileManager.cpp. …

Unlock full vulnerability intelligence

  • Risk assessment & exploitation conditions
  • Attack chain visualization
  • Remediation with exact patch versions
  • Threat intelligence from 22 sources
  • Personal watchlist & email alerts

Free forever · No credit card required

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata

Access
Obtain ZLMediaKit API secret
Delivery
Identify sibling directory sharing root name prefix
Exploit
Craft file path bypassing prefix-only confinement check
Execution
Send authenticated request to downloadFile API endpoint
Persist
Receive file contents read by server process
Impact
Exfiltrate credentials or keys from host filesystem

Vulnerability AssessmentAI

Exploitation Exploitation requires prior possession of the configured ZLMediaKit API secret; the secret check executes before the path traversal logic, and without it the endpoint rejects all requests (CVSS PR:H). … Additional conditions and limiting factors are described in the full assessment.
Risk Assessment The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:H/VC:H) correctly captures the core tension: this is a network-accessible endpoint but is gated behind a high-privilege API secret, substantially narrowing the realistic attacker population to insiders, credential-theft victims, or environments where the secret has been inadvertently exposed. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in.
Exploit Scenario An attacker who has obtained the ZLMediaKit API secret - through credential theft, log exposure, or insider access - sends an authenticated HTTP request to the downloadFile endpoint specifying a path such as /srv/media-private/app.env, where /srv/media is the configured root. Because the prefix check compares /srv/media against /srv/media-private without a separator, the guard passes and the server returns the file contents. …
Remediation No vendor-released patched version has been confirmed at time of analysis; operators should monitor the ZLMediaKit GitHub repository (https://github.com/ZLMediaKit/ZLMediaKit) and issue #4817 for an upstream fix and apply it promptly when released. … Detailed patch versions, workarounds, and compensating controls in full report.

Threat intelligence, references, and detailed analysis are available after sign-in.

Share

CVE-2026-81028 vulnerability details – vuln.today

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