highCVSS 8.1Vulnerability

GHSA-ccq9-r5cw-5hwq

## Summary The `allowOrigin($allowAll=true)` function in `objects/functions.php` reflects any arbitrary `Origin` header back in `Access-Control-Allow-Origin` along with `Access-Control-Allow-Credentials: true`. This function is called by both `plugin/API/get.json.php` and `plugin/API/set.json.php` — the primary API endpoints that handle user data retrieval, authentication, livestream credentials, and state-changing operations. Combined with the application's `SameSite=None` session cookie policy, any website can make credentialed cross-origin requests and read authenticated API responses, enabling theft of user PII, livestream keys, and performing state changes on behalf of the victim. ## Details The vulnerable code path is in `objects/functions.php` lines 2773-2791: ```php // objects/functions.php:2773 if ($allowAll) { $requestOrigin = $_SERVER['HTTP_ORIGIN'] ?? ''; if (!empty($requestOrigin)) { header('Access-Control-Allow-Origin: ' . $requestOrigin); header('Access-Control-Allow-Credentials: true'); } else { header('Access-Control-Allow-Origin: *'); } // ... allows all methods and headers ... return; } ``` This is called unconditionally at the top of both API entry points: ```php // plugin/API/get.json.php:12 allowOrigin(true); // plugin/API/set.json.php:12 allowOrigin(true); ``` The comment above the code claims "These endpoints return public ad XML and carry no session-sensitive data" — this is incorrect. The same `allowOrigin(true)` call gates the entire API surface. The attack is enabled by the session cookie configuration at `objects/include_config.php:144`: ```php ini_set('session.cookie_samesite', 'None'); ``` This ensures the browser sends the victim's session cookie on cross-origin requests, which the API then uses for authentication via `$_SESSION['user']['id']` (in `User::getId()`). When a logged-in user's session is present, the `get_api_user` endpoint (API.php:3009) returns full user data wi

Properties

ghsa_id
GHSA-ccq9-r5cw-5hwq
severity
high
summary
WWBN AVideo has CORS Origin Reflection with Credentials on Sensitive API Endpoints Enables Cross-Origin Account Takeover
cvss_score
8.1
cve_id
GHSA-ccq9-r5cw-5hwq
cvss_vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:N
is_ghsa_only
true
ghsa_published
2026-04-14T23:18:19Z
source_url
https://github.com/advisories/GHSA-ccq9-r5cw-5hwq
ghsa_updated
2026-04-14T23:18:19Z

Related Entities (4)

VULNERABLE_TO (1)

[Software]composer/WWBN/AVideo

AFFECTS (1)

[Software]composer/WWBN/AVideo

HAS_WEAKNESS (1)

[Weakness]Permissive Cross-domain Security Policy with Untrusted Domains

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph

GHSA-ccq9-r5cw-5hwq (CVSS 8.1) — Ninja Signal Threat Intelligence | Ninja Signal