CVE-2026-80211
FrontAccounting through 2.4.20 stores and verifies user passwords as unsalted MD5 digests. admin/users.php passes md5($_POST['password']) to add_user() and update_user_password(), admin/change_current_user_password.php does the same when a user changes their own password, the forgotten-password path in includes/current_user.inc hashes the newly generated password the same way, and authentication calls get_user_auth($loginname, md5($password)). The codebase applies no per-password salt and contains no call to password_hash(), password_verify() or any other adaptive hash, so identical passwords yield identical digests and an attacker who obtains the user table can recover plaintext passwords with precomputed lookup tables or high-rate GPU cracking.
Scoring
- Severity
- HIGH
- CVSS base score
- 8.2
- CVSS vector
- CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
- EPSS probability
- 0.24%
- CWE
- CWE-916
- Published
- 2026-08-27
- Last modified
- 2026-08-29
Affected products
- FrontAccounting FrontAccounting
Weakness type
Related vulnerabilities
- CVE-2026-90457 — The administrative password is hashed using a comparatively weak, fast algorithm for the credential...
- CVE-2026-86670 — aircheng-org iWebShop-5 Authentication Storage admin.php weak password hash
- CVE-2026-81704 — openssl_encrypt before 1.4.9 Weak Key Derivation via D-Bus
- CVE-2026-81689 — openssl_encrypt before 1.4.9 Weak Pepper Key Derivation
- CVE-2026-53762 — VeraCryp: wolfCrypt backend bypasses VeraCrypt PBKDF2 iteration count (non-default WOLFCRYPT=1 builds)
- CVE-2026-75112 — OTTO® Fleet Manager – Weak Password Hashing Configuration
- CVE-2026-74871 — openssl_encrypt before 1.4.6 KDF Bypass via Sequential-XOR
- CVE-2026-49005 — Root password hash exposure vulnerability in ZTE F689 product