{"id":"CVE-2026-107145","state":"PUBLISHED","title":"Lack of rate-limiting in 2fa code check mechanism in twofactor_gauthenticator","description":"The twofactor_gauthenticator plugin for Roundcube is vulnerable to brute-forcing of the second-factor code. Due to the lack of rate limiting, an attacker who obtains user's password can submit arbitrary 6-digit codes, resulting in second-factor bypass and unauthorized access to the system.\n\n\n\n\nThis issue was fixed in commit 4640889.","publishedAt":"2026-10-27T09:34:36.692Z","updatedAt":"2026-10-27T09:34:36.692Z","severity":{"score":6.3,"label":"Medium","version":"4.0","vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N","source":"CERT-PL"},"assigner":"CERT-PL","products":["alexandregz twofactor_gauthenticator"],"affected":[{"vendor":"alexandregz","product":"twofactor_gauthenticator","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"4640889","versionType":"git"}],"collectionURL":"https://github.com","repo":"https://github.com/alexandregz/twofactor_gauthenticator"}],"references":["https://cert.pl/en/posts/2026/10/CVE-2026-107145","https://github.com/alexandregz/twofactor_gauthenticator/blob/master/CHANGES-2FA-SECURITY.en.md"],"weaknesses":["CWE-307"],"ingestedAt":"2026-10-29T20:10:23.711Z","source":{"repository":"CVEProject/cvelistV5","path":"cves/2026/107xxx/CVE-2026-107145.json","commit":"556c9d3a8cd17e218bb8e452ba7cd619a384ff47"},"raw":{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-107145","state":"PUBLISHED","datePublished":"2026-10-27T09:34:36.692Z","dateUpdated":"2026-10-27T09:34:36.692Z","assignerShortName":"CERT-PL","assignerOrgId":"4bb8329e-dd38-46c1-aafb-9bf32bcb93c6","dateReserved":"2026-10-07T08:44:03.177Z"},"containers":{"cna":{"title":"Lack of rate-limiting in 2fa code check mechanism in twofactor_gauthenticator","descriptions":[{"lang":"en","value":"The twofactor_gauthenticator plugin for Roundcube is vulnerable to brute-forcing of the second-factor code. Due to the lack of rate limiting, an attacker who obtains user's password can submit arbitrary 6-digit codes, resulting in second-factor bypass and unauthorized access to the system.\n\n\n\n\nThis issue was fixed in commit 4640889."}],"affected":[{"vendor":"alexandregz","product":"twofactor_gauthenticator","defaultStatus":"unaffected","versions":[{"version":"0","status":"affected","lessThan":"4640889","versionType":"git"}],"collectionURL":"https://github.com","repo":"https://github.com/alexandregz/twofactor_gauthenticator"}],"references":[{"url":"https://cert.pl/en/posts/2026/10/CVE-2026-107145","tags":["third-party-advisory"]},{"url":"https://github.com/alexandregz/twofactor_gauthenticator/blob/master/CHANGES-2FA-SECURITY.en.md","tags":["patch"]}],"metrics":[{"format":"CVSS","scenarios":[{"lang":"en","value":"GENERAL"}],"cvssV4_0":{"attackVector":"NETWORK","attackComplexity":"HIGH","attackRequirements":"PRESENT","privilegesRequired":"NONE","userInteraction":"NONE","vulnConfidentialityImpact":"LOW","subConfidentialityImpact":"NONE","vulnIntegrityImpact":"LOW","subIntegrityImpact":"NONE","vulnAvailabilityImpact":"LOW","subAvailabilityImpact":"NONE","exploitMaturity":"NOT_DEFINED","Safety":"NOT_DEFINED","Automatable":"NOT_DEFINED","Recovery":"NOT_DEFINED","valueDensity":"NOT_DEFINED","vulnerabilityResponseEffort":"NOT_DEFINED","providerUrgency":"NOT_DEFINED","version":"4.0","baseSeverity":"MEDIUM","baseScore":6.3,"vectorString":"CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N"}}],"problemTypes":[{"descriptions":[{"cweId":"CWE-307","lang":"en","description":"CWE-307 Improper restriction of excessive authentication attempts","type":"CWE"}]}],"providerMetadata":{"shortName":"CERT-PL","orgId":"4bb8329e-dd38-46c1-aafb-9bf32bcb93c6","dateUpdated":"2026-10-27T09:34:36.692Z"},"impacts":[{"capecId":"CAPEC-112","descriptions":[{"lang":"en","value":"CAPEC-112 Brute Force"}]}],"cpeApplicability":[{"operator":"OR","nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:a:alexandregz:twofactor_gauthenticator:*:*:*:*:*:*:*:*","versionStartIncluding":"0","versionEndExcluding":"4640889"}]}]}],"tags":["x_open-source"],"credits":[{"lang":"en","value":"Marek Figielski (Vanilla.pl)","type":"finder"}],"source":{"discovery":"EXTERNAL"},"x_generator":{"engine":"Vulnogram 1.0.3"}}}}}