phpMyFAQ has Weak Cryptography - SHA1 for Password Hashing
Summary
Attachment passwords are hashed using SHA-1, a cryptographically broken algorithm. SHA-1 has been vulnerable to collision attacks since 2017 (SHAttered).
Details
Affected File : phpmyfaq/src/phpMyFAQ/Attachment/AbstractAttachment.php
Impact
- An attacker can generate SHA-1 collisions to bypass attachment protection
- Risk of password cracking if database is compromised
- Estimated cracking time: < 1 minute for standard attachment
Solution
Use bcrypt:
public function setPassword(string $password): void
{
$this->passwordHash = password_hash($password, PASSWORD_BCRYPT);
}
public function verifyPassword(string $plainPassword): bool
{
return password_verify($plainPassword, $this->passwordHash);
}
Affected software
Click a technology to see all vulnerabilities affecting it.
| Platform | Package | Vulnerable versions | Fixed in |
|---|---|---|---|
| Composer package | phpmyfaq/phpmyfaq | < 4.1.4 | 4.1.4 |
| Composer package | thorsten/phpmyfaq | < 4.1.4 | 4.1.4 |
References
- CVSS vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:U- Weakness (CWE)
CWE-328- Platform
- Composer
- Package
phpmyfaq/phpmyfaq, thorsten/phpmyfaq- Disclosed
- 23.06.2026
- Updated
- 11.10.2026 10:22
Sources and licenses
OSV / GitHub Advisory Database - GHSA-58fg-62fg-3fcj - CC BY 4.0
Vulnerability history: phpmyfaq/phpmyfaq
All published vulnerabilities of this package (Composer package), newest first. Shows whether this is a one-off slip or a package that needs watching.
- Total entries
- 47
- First → latest
- 10.2022 09.2026
- Without a fix
- 2
- Exploited in attacks
- 0
Severity breakdown
- Critical 2
- High 18
- Medium 25
- Low 2
Disclosures per year
- 2022: 1
- 2023: 0
- 2024: 11
- 2025: 3
- 2026: 32
-
phpMyFAQ has Weak Cryptography - SHA1 for Password Hashing this entry
Know which vulnerabilities affect your application
With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.