CVE-2026-86723
nicheAuthentication Bypass in AVideo: Loose Comparison Defeats PGP Two-Factor
AVideo (through commit c3edcc274c389816d434acadac07ee78eaf330c1) contains an authentication flaw in LoginControl::verifyChallenge(), where a loose PHP comparison (==) is used instead of a strict comparison (===) when checking the PGP two-factor challenge against session values. An attacker who already knows a user's password can send an empty request to verifyChallenge.json.php, causing the unset session values to loosely match and the second-factor challenge to be treated as verified. This grants full authenticated access to the affected account without possession of the PGP second factor, effectively disabling two-factor protection for that login. Any AVideo deployment that relies on PGP-based two-factor authentication is affected, especially self-hosted video portals with the login endpoint reachable from the internet; note the attacker must already hold the account password. No public proof-of-concept or confirmed in-the-wild exploitation is known, and EPSS estimates only about a 0.3% probability of exploitation within 30 days.
What to do: Update AVideo to a revision newer than commit c3edcc274c389816d434acadac07ee78eaf330c1 (current release/master), since no fixed version number is stated in the available data. Until patched, do not treat PGP two-factor as a strong control for high-value accounts on affected installs: enforce strong, unique passwords, restrict network access to verifyChallenge.json.php where feasible, and review authentication logs for empty requests to that endpoint followed by successful logins on PGP-2FA-enabled accounts.
| AVideo (open-source project) AVideo | all versions through commit c3edcc274c389816d434acadac07ee78eaf330c1 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
AVideo through c3edcc274c389816d434acadac07ee78eaf330c1 contains an authentication bypass vulnerability in LoginControl::verifyChallenge() that uses loose comparison (==) instead of strict comparison (===) against unset session values. Attackers with only a password can submit an empty request to verifyChallenge.json.php to bypass PGP two-factor authentication and gain full authenticated access.
- Weakness
- CWE-287
- Vector
- CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/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
In the news0 stories
No ingested article mentions this CVE yet.