Skip to main content

WWBN AVideo CVE-2026-41060

MEDIUM
Server-Side Request Forgery (SSRF) (CWE-918)
2026-04-21 security-advisories@github.com GHSA-j432-4w3j-3w8j
6.5
CVSS 3.1 · NVD
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as upload-capable user
  2. Delivery
    Submit downloadURL with site hostname and alternate port
  3. Exploit
    Bypass isSSRFSafeURL same-domain shortcircuit
  4. Execution
    Server fetches internal service port
  5. Persist
    Response written to web-accessible cache/tmpFile/
  6. Impact
    Download file to exfiltrate internal data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V4 - API and Web Service URL allowlisting, SSRF prevention
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Credential Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires an authenticated session with upload permission (User::canUpload()) OR a valid per-video video_id_hash token accepted by useVideoHashOrLogin(); this is the primary limiting factor. The attacker must know or reuse the instance's public hostname as configured in webSiteRootURL and target it with a non-default port (e.g. https://<site-host>:9998/), because only same-hostname URLs hit the vulnerable shortcircuit. Exploitation is meaningful only when a service actually listens on another port of the AVideo host that the server can reach. Retrieval of exfiltrated data additionally requires that the cache/tmpFile/ directory under the videos storage path remains web-accessible. Affects AVideo 29.0 and below; no user interaction beyond the attacker's own requests is needed.

Impact

Signals are mostly consistent and point to a real but moderate, non-urgent priority. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N = 7.7) reflects network reach, low complexity, low-privilege authentication, a scope change (reaching a separate internal service context), and high confidentiality impact with no integrity or availability effect - matching the description of read-only exfiltration. SSVC agrees: Exploitation is only 'poc' (not active), Automatable 'no' (authentication and per-target hostname configuration prevent mass scripting), and Technical Impact 'partial'. EPSS is very low (0.03%, 8th percentile) and the CVE is NOT in CISA KEV, so there is no evidence of in-the-wild use. The key limiting factor is PR:L: exploitation requires an account with upload permission (User::canUpload()) or a valid per-video video_id_hash, so exposure depends heavily on whether an instance allows self-registration or public uploads. Net: prioritize patching on internet-facing multi-user instances, but this is not a drop-everything emergency. No conflicting signals of note; the main real-world variable is whether internal services actually listen on the AVideo host's other ports.

Exploit ScenarioDerived

An attacker registers or uses a low-privileged AVideo account with upload rights (or obtains a valid video_id_hash), then submits downloadURL=https://avideo.example.com:9998/ to objects/aVideoEncoder.json.php; because the hostname matches webSiteRootURL, isSSRFSafeURL() returns true and the server fetches the internal service on port 9998. The response is stored under cache/tmpFile/ and the attacker downloads it from the web-accessible path to exfiltrate internal data. A working proof-of-concept (authenticate, then send the alternate-port request) is published in the GHSA advisory, and low attack complexity makes it straightforward to reproduce.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet 0.0% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Jul 24, 2026

Server-side request forgery in WWBN AVideo 29.0 and earlier lets an authenticated upload-capable user bypass the isSSRFSafeURL() same-domain shortcircuit by supplying the site's own public hostname with a non-standard port, causing the server to fetch arbitrary internal ports and save the response to a web-accessible cache path for full exfiltration. The flaw carries a CVSS 7.7 (scope-changing confidentiality impact) and publicly available exploit code exists via the GitHub Security Advisory, though it is not listed in CISA KEV and EPSS probability is negligible (0.03%, 8th percentile).

RemediationAI

Upstream fix available (PR/commit); released patched version not independently confirmed - apply commit a0156a6398362086390d949190f9d52a823000ba, which extends the same-origin check to require that BOTH hostname and port match webSiteRootURL before allowing the request. If you cannot deploy from source immediately, apply specific compensating controls: restrict who can reach the sink by disabling public/self-service account registration and revoking upload permission from untrusted users (removes the PR:L precondition, at the cost of blocking legitimate uploaders); place the AVideo host so that no sensitive internal services listen on other ports of its interface, or firewall the AVideo server's outbound/loopback access to those ports (breaks the SSRF target but may affect co-located services); and deny web access to the cache/tmpFile/ directory under the videos storage path to block retrieval of exfiltrated responses (prevents the read-back, though the internal fetch may still occur). Track the vendor advisory GHSA-j432-4w3j-3w8j (https://github.com/WWBN/AVideo/security/advisories/GHSA-j432-4w3j-3w8j) for a tagged release and upgrade to it once published.

Affected Packages

composer wwbn/avideo no fix

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in composer

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

Technical ContextAI · show details

The vulnerability lives in objects/functions.php within isSSRFSafeURL(), the PHP guard AVideo uses to vet outbound URLs before url_get_contents() fetches them. A prior fix (commit 40872e529) made the SSRF check unconditional, but the check itself contained a same-origin allowlist that returned true whenever a URL's hostname equaled the configured webSiteRootURL host - comparing only the hostname and never the port, scheme, or path. This is a classic CWE-918 (Server-Side Request Forgery) allowlist-bypass root cause: an origin check that is too coarse. Because parse_url() host matching ignored the port, http(s)://<public-host>:<any-port>/ satisfied the check, letting the server reach any TCP port bound on its own interface. The reachable sink is objects/aVideoEncoder.json.php, where $_REQUEST['downloadURL'] flows through downloadVideoFromDownloadURL() and the fetched body is written under Video::getStoragePath().'cache/tmpFile/'.basename(downloadURL), a directory inside the web-accessible videos storage tree. CPE cpe:2.3:a:wwbn:avideo:*:*:*:*:*:*:*:* confirms the affected product line.

Know when Avideo 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

NVD PRIMARY 6.5 MEDIUM
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N
vuln.today AI 7.7 HIGH

Network-reachable low-complexity SSRF requires an authenticated upload user (PR:L); reaching a separate internal service is a scope change (S:C) with read-only exfiltration (C:H, I:N, A:N).

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

Primary rating from NVD.

CVSS VectorNVD

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

Lifecycle Timeline

3
Severity Changed
Oct 26, 2026 - 21:23 NVD
HIGH MEDIUM
CVSS changed
Oct 26, 2026 - 21:23 NVD
7.7 (HIGH) 6.5 (MEDIUM)
CVE Published
Apr 21, 2026 - 23:16 nvd
HIGH 7.7

DescriptionNVD

WWBN AVideo is an open source video platform. In versions 29.0 and below, the isSSRFSafeURL() function in objects/functions.php contains a same-domain shortcircuit (lines 4290-4296) that allows any URL whose hostname matches webSiteRootURL to bypass all SSRF protections. Because the check compares only the hostname and ignores the port, an attacker can reach arbitrary ports on the AVideo server by using the site's public hostname with a non-standard port. The response body is saved to a web-accessible path, enabling full exfiltration. Commit a0156a6398362086390d949190f9d52a823000ba fixes the issue.

Executive ViewAI

Why It Matters

WWBN AVideo version 29.0 and earlier contains a server-side request forgery (SSRF) vulnerability with publicly available exploit code that allows authenticated upload users to access internal network resources and exfiltrate sensitive data. Organizations using AVideo for media management face immediate risk of data exposure from internal systems and should restrict upload capabilities pending a vendor patch.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Restrict upload permissions to essential trusted users, implement network segmentation to prevent the AVideo server from accessing internal network resources on non-standard ports, establish continuous logging and monitoring of all upload requests for suspicious patterns, disable upload functionality if not operationally critical, and configure firewall rules to limit outbound connections from AVideo servers to only necessary external destinations.

Threat Intelligence Overview

EPSS Score
0.0%
Top 92% exploitable
Prevalence
Low
niche self-hosted open source video platform, limited enterprise footprint
Threat Intel
1
1 source
Social Media
1
Sightings
Data Quality
5 sources
Confidence: Medium
NVD CVE.org EPSS Vulnrichment GHSA CIRCL GitHub

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.0%
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.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
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.

Affected Products (CPE)NVD

cpe:2.3:a:wwbn:avideo:*:*:*:*:*:*:*:*

More in Avideo

View all
CVE-2023-48728 CRITICAL POC
9.6 Jan 10

A cross-site scripting (xss) vulnerability exists in the functiongetOpenGraph videoName functionality of WWBN AVideo 11.

CVE-2024-31819 CRITICAL POC
9.8 Apr 10

An issue in WWBN AVideo v.12.4 through v.14.2 allows a remote attacker to execute arbitrary code via the systemRootPath

CVE-2022-30547 CRITICAL POC
9.9 Aug 22

A directory traversal vulnerability exists in the unzipDirectory functionality of WWBN AVideo 11.6 and dev master commit

CVE-2023-49599 CRITICAL POC
9.8 Jan 10

An insufficient entropy vulnerability exists in the salt generation functionality of WWBN AVideo dev master commit 15fed

CVE-2026-28501 CRITICAL POC
9.8 Mar 06

Unauthenticated SQL injection in AVideo before 24.0.

CVE-2023-25313 CRITICAL POC
9.8 Apr 25

OS injection vulnerability in World Wide Broadcast Network AVideo version before 12.4, allows attackers to execute arbit

CVE-2022-26842 CRITICAL POC
9.6 Aug 22

A reflected cross-site scripting (xss) vulnerability exists in the charts tab selection functionality of WWBN AVideo 11.

CVE-2023-47861 CRITICAL POC
9.0 Jan 10

A cross-site scripting (xss) vulnerability exists in the channelBody.php user name functionality of WWBN AVideo 11.6 and

CVE-2022-28712 CRITICAL POC
9.0 Aug 22

A cross-site scripting (xss) vulnerability exists in the videoAddNew functionality of WWBN AVideo 11.6 and dev master co

CVE-2023-49589 HIGH POC
8.8 Jan 10

An insufficient entropy vulnerability exists in the userRecoverPass.php recoverPass generation functionality of WWBN AVi

CVE-2023-32073 HIGH POC
8.8 May 12

WWBN AVideo is an open source video platform. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable

CVE-2023-30854 HIGH POC
8.8 Apr 28

AVideo is an open source video platform. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable, low

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