{"id":"CVE-2026-108109","summary":"PHPNuxBill through 2025.3.20 Account Takeover via Brute-Forceable Password Reset Code","details":"PHPNuxBill through 2025.3.20 contains an account takeover vulnerability in the customer password reset flow in system/controllers/forgot.php that allows unauthenticated attackers to brute-force the 6-digit otp_code. Attackers knowing a customer username can guess the code without attempt limits or lockout, then read the newly set password from the HTTP response to hijack the account.","aliases":["GHSA-337r-rrrc-r559"],"modified":"2026-10-11T02:47:23.300280008Z","published":"2026-10-09T14:33:32.201Z","database_specific":{"cwe_ids":["CWE-307"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/108xxx/CVE-2026-108109.json","unresolved_ranges":[{"extracted_events":[{"last_affected":"2025.3.20"}],"source":"AFFECTED_FIELD"},{"extracted_events":[{"fixed":"2025.3.20"}],"source":"DESCRIPTION"}],"cna_assigner":"VulnCheck"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/108xxx/CVE-2026-108109.json"},{"type":"ADVISORY","url":"https://github.com/hotspotbilling/phpnuxbill/security/advisories/GHSA-337r-rrrc-r559"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-108109"},{"type":"ADVISORY","url":"https://www.vulncheck.com/advisories/phpnuxbill-through-2025.3.20-account-takeover-via-brute-forceable-password-reset-code"},{"type":"FIX","url":"https://github.com/hotspotbilling/phpnuxbill/commit/c3c2a92d468af91136d747b75142ed72f10320cc"},{"type":"PACKAGE","url":"https://github.com/hotspotbilling/phpnuxbill"},{"type":"ARTICLE","url":"https://github.com/hotspotbilling/phpnuxbill/blob/2025.3.13/system/controllers/forgot.php#L41"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/hotspotbilling/phpnuxbill","events":[{"introduced":"0"},{"fixed":"c3c2a92d468af91136d747b75142ed72f10320cc"}],"database_specific":{"source":"REFERENCES"}}],"versions":["2025.3.13","2025.3.10","2025.2.3","2025.1.16","2024.9.13","2024.8.28","2024.8.2","2024.7.25","2024.7.24","2024.7.15","2024.6.21","2024.5.21","2024.5.14","2024.4.23","2024.4.15","2024.4.3","2024.3.22","2024.3.18","2024.3.15","2024.3.14","2024.3.6","2024.3.3.1","2024.3.3","2024.2.29","2024.2.27","2024.2.26.1","2024.2.26","2024.2.23.1","2024.2.23","2024.2.21","2024.2.20","2024.2.19","2024.2.7","2024.2.5","2024.1.19","2024.1.17","2024.1.16","2024.1.11","2023.12.21","2023.12.19","2023.12.14","2023.10.27.1","2023.11.17","2023.10.27","2023.10.25","2023.10.20","2023.10.17","6.0.0","5.5","5.4","5.3","5.2.2","5.2.1","5.2","v5.1.14","v5.1.13","v5.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-108109.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N"}]}