GitHub Advisoryadvisory · Packagist

GHSA-px7x-gq96-rmp5 AVideo has an Unauthenticated Password Hash Oracle via encryptPass.json.php

MEDIUM Published 2026-03-17 Modified 2026-03-20 Official page ↗
Aliases
CVE-2026-33041
Ecosystem
Packagist
Packages
wwbn/avideo
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Weaknesses
CWE-200
Reviewed
2026-03-17

Affected packages

• Packagist wwbn/avideo: <= 25.0 (no fix yet)

Description

Summary `/objects/encryptPass.json.php` exposes the application's password hashing algorithm to any unauthenticated user. An attacker can submit arbitrary passwords and receive their hashed equivalents, enabling offline password cracking against leaked database hashes. Details File: `objects/encryptPass.json.php` ```php $obj->password = @$_REQUEST['pass']; $obj->encryptedPassword = encryptPassword($obj->password); echo json_encode($obj); ``` No authentication is required. The `encryptPassword()` function in `objects/functions.php` (line ~2101) uses: ```php function encryptPassword($password, $noSalt = false) { if (!empty($advancedCustomUser->encryptPasswordsWithSalt) && !empty($global['salt']) && empty($noSalt)) { $password .= $global['salt']; } return md5(hash('whirlpool', sha1($password))); } ``` By default, salt is NOT enabled (`encryptPasswordsWithSalt` is off), making the hash deterministic and identical to what's stored in the database. PoC ```bash Get the hash for any password curl 'https://TARGET/objects/encryptPass.json.php?pass=admin123' Response: {"password":"admin123","encryptedPassword":""} Build a rainbow table for common passwords for pass in $(cat rockyou-top1000.txt); do curl -s "https://TARGET/objects/encryptPass.json.php?pass=$pass" done ``` If an attacker obtains password hashes from the database (via SQL injection, backup exposure, etc.), they can instantly crack them by comparing against pre-computed hashes from this endpoint. Impact Password Cracking Acceleration — This endpoint eliminates the need for an attacker to reverse-engineer the hashing algorithm. Combined with the weak hash chain (md5+whirlpool+sha1, no salt by default), an attacker with access to database hashes can crack passwords extremely quickly. Additionally, this reveals whether salt is enabled and the exact hashing implementation, which is sensitive cryptographic configuration.

Related

Alias · CVE (1)

  • CVE-2026-33041 WWBN AVideo is an open source video platform. vulnerability

Weakness · CWE (1)

  • CWE-200 Exposure of Sensitive Information to an Unauthorized Actor weakness

References