Sensitive information sent insecurely In wwbn/avideo
Description
AVideo has an Unauthenticated Password Hash Oracle via encryptPass.json.php
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
$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:
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
# Get the hash for any password curl 'https://TARGET/objects/encryptPass.json.php?pass=admin123' # 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.
Mitigation
Update Impact
Minimal update. May introduce new vulnerabilities or breaking changes.
Ecosystem | Component | Affected version | Patched versions |
|---|---|---|---|
packagist | 26.0 |
Aliases
References