CVEReports
CVEReports

Automated vulnerability intelligence platform. Comprehensive reports for high-severity CVEs generated by AI.

Product

  • Home
  • Sitemap
  • RSS Feed

Company

  • About
  • Contact
  • Privacy Policy
  • Terms of Service

© 2026 CVEReports. All rights reserved.

Made with love by Amit Schendel & Alon Barad



GHSA-WPRJ-9CVC-5W37

GHSA-wprj-9cvc-5w37: Unauthenticated Access to Sensitive Data via Missing Authorization in AVideo

Amit Schendel
Amit Schendel
Senior Security Researcher

Mar 30, 2026·5 min read·25 visits

Executive Summary (TL;DR)

Missing authorization checks in AVideo <= 26.0 allow unauthenticated extraction of sensitive data, including PayPal logs and user records, via exposed JSON endpoints.

WWBN AVideo versions up to and including 26.0 suffer from a systematic authorization failure (CWE-862). Unauthenticated attackers can query multiple JSON endpoints across various plugins to extract sensitive system, financial, and user data. The vulnerability resides in the omission of access control checks within data table listing scripts.

Vulnerability Overview

WWBN AVideo, an open-source broadcast network platform, implements an extensible plugin architecture to handle various auxiliary features such as payments, live streaming, and AI transcription. The vulnerability exists within the administrative backend components of these plugins, specifically affecting versions up to and including 26.0.

The platform exhibits a systematic missing authorization flaw (CWE-862) across at least 19 distinct plugin endpoints. These endpoints handle data presentation for administrative tables and directly execute database queries to populate data views. The application exposes these administrative interfaces to the public internet by default.

Because the core bootstrapping configuration does not enforce global authentication middleware for API or JSON endpoints, the application relies on component-level authorization checks. The developers omitted these checks in the list.json.php files, creating a direct, unauthenticated data exposure vector.

Root Cause Analysis

The root cause of this vulnerability is the absence of access control validations at the entry point of the data listing controllers. AVideo uses a standard CRUD paradigm where database tables are managed by specific files for adding, deleting, and listing records.

While the files responsible for modifying state typically implement administrative authorization checks, the scripts designated for rendering data tables do not. When a client requests these endpoints, the PHP script initializes the environment via configuration.php but immediately proceeds to execute data retrieval logic without verifying the user session.

The vulnerable endpoints invoke static methods on classes extending the ObjectYPT core class, predominantly the getAll() method. This method acts as an Object-Relational Mapping (ORM) wrapper that executes an unrestricted SELECT * query against the corresponding plugin's database table, serializes the result set into JSON, and returns it to the client.

Code Analysis

An analysis of the vulnerable source code reveals a consistent structural flaw across multiple plugins. The application logic directly exposes database contents to any HTTP GET or POST request targeting the endpoint.

In the unpatched state, the list.json.php file within the PayPalYPT plugin imports the necessary class definitions and immediately fetches all records. The application serializes the array returned by the static method and echoes it to the output buffer without validating the request context.

<?php
require_once $global['systemRootPath'] . 'plugin/PayPalYPT/Objects/PayPalYPT_log.php';
header('Content-Type: application/json');
 
$rows = PayPalYPT_log::getAll();
$total = PayPalYPT_log::getTotal();
echo json_encode(['data' => $rows]);
?>

The vendor remediated this vulnerability in commit 1729a955f8de7e26552eb728b3d1e6f4b1b9352e by implementing an explicit authorization gate. The patch introduces a conditional check utilizing the User::isAdmin() method before any data access operations occur, terminating the script execution if the check fails.

<?php
require_once $global['systemRootPath'] . 'plugin/PayPalYPT/Objects/PayPalYPT_log.php';
header('Content-Type: application/json');
 
+ if (!User::isAdmin()) {
+     die(json_encode(['error' => true, 'msg' => "You can't do this"]));
+ }
 
$rows = PayPalYPT_log::getAll();
$total = PayPalYPT_log::getTotal();
echo json_encode(['data' => $rows]);
?>

Exploitation

Exploitation of this vulnerability requires no specialized tools, prior authentication, or specific network positioning beyond reachability to the target AVideo web interface. The attacker only needs to identify a running instance of AVideo version 26.0 or earlier.

The attacker issues a standard HTTP GET request directly to one of the unprotected list.json.php endpoints. Navigating to /plugin/PayPalYPT/View/PayPalYPT_log/list.json.php initiates the vulnerable code path and triggers the database query.

The server processes the request and responds with an HTTP 200 OK status, returning a JSON payload containing the complete contents of the targeted database table. The attacker can automate this process using simple scripts to enumerate and extract all exposed tables across the 19 vulnerable plugins.

Impact Assessment

The security impact of this vulnerability is high due to the volume and sensitivity of the exposed information. Attackers gain unauthorized read access to critical financial and operational data that administrators assume is protected behind authentication barriers.

The exposure of the PayPalYPT_log and Btc_payments tables compromises payment gateway configurations, transaction histories, and active PayPal tokens. Attackers can leverage these tokens to manipulate financial transactions or access connected financial accounts associated with the platform deployment.

In addition to financial data, the vulnerability exposes user privacy records and internal system intelligence. Endpoints such as Users_extra_info and Live_servers reveal personally identifiable information and infrastructure configurations, enabling further targeted attacks against the user base or the underlying server environment.

Remediation

The WWBN AVideo maintainers addressed this vulnerability in development via commit 1729a955f8de7e26552eb728b3d1e6f4b1b9352e. System administrators must upgrade their AVideo installations to the patched release succeeding version 26.0 immediately to secure their environments.

If an immediate upgrade is unfeasible, administrators can manually apply the patch by editing the affected list.json.php files across the plugin/ directory. The remediation requires inserting the User::isAdmin() check at the top of each file, directly following the inclusion of the core configuration files.

Security teams should conduct a thorough audit of the AVideo filesystem to identify any custom or third-party plugins that implement similar endpoints. Any file exposing an unrestricted data retrieval method call must be retrofitted with identical access control validations to prevent variant attacks.

Official Patches

WWBNOfficial fix commit adding User::isAdmin() checks

Fix Analysis (1)

Technical Appendix

CVSS Score
7.5/ 10
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N

Affected Systems

WWBN AVideo <= 26.0

Affected Versions Detail

Product
Affected Versions
Fixed Version
AVideo
WWBN
<= 26.0Post-26.0 (Commit 1729a955f8de7e26552eb728b3d1e6f4b1b9352e)
AttributeDetail
CWE IDCWE-862
Attack VectorNetwork
CVSS Score7.5
ImpactHigh (Data Confidentiality)
Exploit Statuspoc
Authentication RequiredNone

MITRE ATT&CK Mapping

T1190Exploit Public-Facing Application
Initial Access
T1005Data from Local System
Collection
CWE-862
Missing Authorization

The software does not perform an authorization check when an actor attempts to access a resource or perform an action.

Known Exploits & Detection

Vulnerability ContextDirect enumeration of /plugin/*/list.json.php endpoints

Vulnerability Timeline

Vulnerability Discovered (Approximate)
2026-03-01
Fix Committed to Repository
2026-03-27
Advisory Published (Approximate)
2026-03-31

References & Sources

  • [1]GitHub Advisory: GHSA-wprj-9cvc-5w37
  • [2]NVD Record CVE-2026-33501
  • [3]NVD Record CVE-2026-34369
Related Vulnerabilities
CVE-2026-33501CVE-2026-34369

Attack Flow Diagram

Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.

More Reports

•26 minutes ago•CVE-2026-48595
8.2

CVE-2026-48595: Cross-Origin Credential Leakage in Elixir Tesla Client via Case-Sensitive Redirect Filter Bypass

A high-severity security vulnerability in Elixir's Tesla HTTP client library (CVE-2026-48595) allows unauthenticated remote attackers to harvest sensitive credentials, including Authorization headers and cookies. The flaw resides in the 'Tesla.Middleware.FollowRedirects' component, which performs case-sensitive lookups when stripping credentials during cross-origin redirects. Because HTTP headers are case-insensitive by RFC specifications, standard canonical casing (e.g., 'Authorization') bypasses the lowercase-only blocklist, leaking tokens to untrusted external redirect destinations.

Alon Barad
Alon Barad
1 views•5 min read
•about 1 hour ago•CVE-2026-48597
8.2

CVE-2026-48597: Denial of Service via Atom Table Exhaustion in Elixir Tesla Client (Mint Adapter)

CVE-2026-48597 is a high-severity Denial of Service (DoS) vulnerability in the Elixir HTTP client library Tesla (specifically involving the Mint adapter) that allows an unauthenticated remote attacker to cause an unrecoverable crash of the Erlang Virtual Machine (BEAM). The flaw arises from the dynamic conversion of untrusted URL schemes into Erlang atoms without validation, leading to global atom table exhaustion.

Alon Barad
Alon Barad
3 views•8 min read
•about 1 hour ago•CVE-2026-48598
2.1

CVE-2026-48598: Multipart Part Header Injection and Request Smuggling in elixir-tesla

An Improper Encoding or Escaping of Output vulnerability (CWE-116) in elixir-tesla allowed unauthenticated remote code execution or request smuggling via unescaped Content-Disposition parameters in multipart form-data requests.

Amit Schendel
Amit Schendel
5 views•5 min read
•about 2 hours ago•CVE-2026-49851
7.5

CVE-2026-49851: Algorithmic Complexity Denial of Service in Mistune Markdown Parser

CVE-2026-49851 is a high-severity algorithmic complexity vulnerability in the Mistune Markdown parser. Under specific conditions involving dense, unmatched nesting of opening square brackets, the parser fallback loops degrade from linear execution time to a worst-case quadratic complexity. This allows unauthenticated remote attackers to trigger complete CPU exhaustion and subsequent Denial of Service with a highly compact payload.

Alon Barad
Alon Barad
8 views•6 min read
•about 2 hours ago•CVE-2026-48862
8.2

CVE-2026-48862: Unbounded Resource Allocation via HTTP/2 PUSH_PROMISE Flooding in Mint

An allocation of resources without limits or throttling vulnerability in the Elixir Mint HTTP client library allows malicious HTTP/2 servers to trigger memory exhaustion and application denial of service. The flaw exists because Mint fails to validate server-push concurrency limits during the receipt of PUSH_PROMISE frames, deferring validation to the HEADERS phase. This allows a server to reserve an unlimited number of streams in the client's memory map.

Amit Schendel
Amit Schendel
6 views•7 min read
•about 4 hours ago•CVE-2026-52778
9.8

CVE-2026-52778: Unauthenticated Remote Code Execution and ReDoS in YesWiki Bazar Formula Calculator

An unsafe execution vulnerability exists in the Bazar form field calculator (CalcField.php) of YesWiki prior to version 4.6.6. The application attempts to validate mathematical formulas using a complex recursive regular expression before passing them to the PHP eval() function. This design leads to both Regular Expression Denial of Service (ReDoS) and Remote Code Execution (RCE) via validation bypass.

Alon Barad
Alon Barad
4 views•7 min read