Skip to main content

WWBN AVideo EUVDEUVD-2026-75424

| CVE-2026-88874 HIGH
Information Exposure (CWE-200)
2026-09-10 VulnCheck GHSA-2hqj-j633-f566
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Send unauthenticated GET to /live stats API
  2. Delivery
    Receive RTMP stream key and m3u8 URL in JSON response
  3. Exploit
    Fetch AES-128 decryption key from /live/.key location
  4. Execution
    Download .ts segment files from /live HLS location
  5. Impact
    Decrypt and view password-protected stream

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK

2 techniques across 2 tactics: Collection, Discovery

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

Exploitation Conditions

The Live plugin must be installed and active in AVideo, and at least one live stream must be configured with password protection enabled (isPasswordProtected flag set). The NGINX configuration deployed must match the shipped deploy/nginx/nginx.conf template, in which the auth_key_check directive in the .key location is commented out. No authentication, special network position, or prior account is required by the attacker. Exploitation is limited to scenarios where the Live plugin is in active use - AVideo instances that do not use live streaming are not exposed to the HLS key-disclosure component, though the PHP stats API disclosure may still leak stream metadata. The attack does not affect recorded/VOD content, only live HLS transmissions.

Impact

The CVSS 4.0 vector AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N scores 8.7 and accurately reflects the attack profile: no authentication, no complexity, fully network-accessible. EPSS data is not included in the provided intelligence but the attack is trivial - a single HTTP request to the stats endpoint suffices to obtain the stream key and m3u8 URL, followed by a second request for the AES-128 key. Real-world risk is high wherever the Live plugin is actively used for paid or restricted streams; even a mid-sized municipal IT team in swidnica running an AVideo instance for internal training sessions would have protected stream content exposed. The absence of a patch amplifies urgency: as of the advisory date (2026-08-23) all AVideo deployments at or before commit c3edcc274 are vulnerable with no vendor-provided fix. No public POC code was referenced but the exploit path requires only standard HTTP tooling against two well-documented endpoints. KEV status is not confirmed. The confidentiality impact is total for live-stream content - stream keys, HLS playlists, and AES decryption material are all disclosed - though integrity and availability are unaffected.

Exploit ScenarioDerived

An attacker targeting a paid AVideo live stream sends an unauthenticated HTTP GET to the platform's stats API endpoint, receiving a JSON response that includes the RTMP stream key and the HLS m3u8 URL for the password-protected transmission. The attacker then fetches the AES-128 decryption key directly from the NGINX-served /live/.key path - also without authentication - and uses standard HLS tooling (e.g., ffmpeg or VLC) to decrypt and play the transport-stream segments, fully bypassing the configured stream password with no special tooling beyond a browser or command-line HTTP client. No public POC exploit code was referenced in the provided intelligence.

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

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

Alert me

AnalysisAIv1 – Sep 10, 2026

Password-protected live stream bypass in AVideo exposes RTMP stream keys, HLS playlist URLs, and AES-128 decryption keys to unauthenticated remote callers via two compounding failures. The PHP-side stats API (Live::_getStats() in plugin/Live/Live.php) returns protected transmission credentials regardless of password check outcome - including the hidden_applications branch invoked when canSeeLiveFromLiveKey() denies access. Independently, the shipped NGINX configuration leaves the /live location serving .m3u8 playlists, AES-128 segment encryption keys, and .ts segments without any auth_request directive (the auth_key_check in the .key block is commented out), allowing full stream decryption without the configured password. No patched version was available at time of the advisory.

RemediationAI

No vendor-released patch was identified at time of analysis. Operators should apply the following specific compensating controls until a fix is released. First, in deploy/nginx/nginx.conf, restore the auth_key_check directive in the .key location block and add an auth_request directive to the /live location so that NGINX delegates key and segment delivery to the application's authentication layer before serving HLS content - this addresses the transport-layer gap. Second, modify Live::_getStats() in plugin/Live/Live.php to suppress the stream_key, hls_url, and isPasswordProtected fields from the public API response and the hidden_applications branch for unauthenticated callers. As a stopgap, site administrators can disable the Live plugin entirely if live-streaming functionality is not required, or use an IP allowlist at the NGINX or firewall level to restrict access to /live endpoints to known viewer networks. Monitor the upstream GitHub repository at https://github.com/WWBN/AVideo for a patched commit. The VulnCheck advisory at https://www.vulncheck.com/advisories/avideo-through-c3edcc274c389816d434acadac07ee78eaf330c1-authentication-bypass provides additional remediation context.

Affected VersionsENISA

AVideo 0 ≤c3edcc274c389816d434acadac07ee78eaf330c1

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

AVideo (cpe:2.3:a:wwbn:avideo:*:*:*:*:*:*:*:*) is a self-hosted PHP video-streaming platform with a Live plugin that wraps RTMP ingest via a bundled NGINX RTMP module and re-packages streams as HLS with optional AES-128 segment encryption. CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor) captures the root cause: the application layer in plugin/Live/Live.php constructs and returns a JSON response containing the RTMP stream key and m3u8 URL without gating on password verification, and the NGINX deployment template (deploy/nginx/nginx.conf) omits transport-layer enforcement for the /live HLS delivery location. The combination means both the key-material metadata path (PHP/API) and the key-delivery path (NGINX) are unprotected, so AES-128 encryption of HLS segments provides no confidentiality - an attacker can retrieve both the playlist and the decryption key unauthenticated.

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

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

Fully unauthenticated network exploit with no complexity; confidentiality-only impact (stream keys and decryption material exposed), no integrity or availability effect.

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

AVideo through revision c3edcc274c389816d434acadac07ee78eaf330c1 (master, 2026-08-23) does not enforce the Live stream password check on the stats endpoint or on the HLS origin. Live::_getStats() (plugin/Live/Live.php) returns a password-protected transmission's RTMP stream key, its isPasswordProtected flag, and its HLS (m3u8) URL to unauthenticated callers, in both the public applications list and the hidden_applications branch used when canSeeLiveFromLiveKey() fails. Separately, the shipped NGINX configuration (deploy/nginx/nginx.conf) serves the .m3u8 playlist, the AES-128 key, and the transport-stream segments from the /live location without any auth_request (the auth_key_check directive in the .key location is commented out). A remote, unauthenticated attacker can therefore retrieve the stream key and decryption key and watch a password-protected live transmission without supplying the configured password. No patched version was available at the time of the advisory.

Technical POC Analysis

CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor), with CWE-862 (Missing Authorization) as the underlying defect.

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

Executive ViewAI

Why It Matters

AVideo's password-protected live streaming feature can be bypassed by unauthenticated users to access RTMP stream keys, HLS playlist URLs, and encryption keys. Organizations relying on AVideo for paid or restricted live content face immediate content security and monetization risks, as stream protection is completely ineffective.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: (1) Deploy reverse proxy authentication layer in front of /live endpoints; (2) Enable and verify the auth_request / auth_key_check NGINX directives are uncommented and active; (3) Rotate all RTMP stream keys and AES-128 encryption keys immediately; (4) Implement stream access logging and monitoring to detect unauthorized access attempts; (5) Consider disabling live streaming functionality entirely until vendor patch is available.

Threat Intelligence Overview

EPSS Score
0.5%
Top 58% exploitable
Prevalence
Medium
self-hosted open-source video platform, meaningful but niche adoption
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 No
EPSS 0.5%
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
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

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