
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2017-20240 is a timing attack vulnerability in the Crypt::PBKDF2 Perl module affecting all versions before 0.261630. The flaw was originally reported as a pull request on December 11, 2017, but a patched release (0.261630) was not published until June 11, 2026, with the CVE formally disclosed on June 12, 2026 (Openwall OSS-Sec, GitHub Advisory). The vulnerability carries a CVSS v3.1 base score of 5.9 (Medium) (GitHub Advisory).
The root cause is classified as CWE-208 (Observable Timing Discrepancy). Specifically, the affected versions of Crypt::PBKDF2 use Perl's built-in eq string comparison operator to validate derived keys, which short-circuits as soon as a differing byte is found (GitHub PR #6). An attacker can exploit this by making repeated authentication attempts and measuring response times to infer the correct derived key one character at a time — a classic timing side-channel attack. The vulnerable comparison logic is present in lib/Crypt/PBKDF2.pm at lines 123–148 of the pre-fix release (GitHub Advisory). No special privileges or user interaction are required, but the attack complexity is rated High due to the precision required in timing measurements over a network (GitHub Advisory).
Successful exploitation allows a remote, unauthenticated attacker to gradually recover the PBKDF2-derived key used for password verification or authentication, resulting in a high confidentiality impact with no integrity or availability impact (GitHub Advisory). This could enable unauthorized access to systems or data protected by the affected module, particularly in applications that use Crypt::PBKDF2 for password hashing and comparison (Red Hat Bugzilla). The scope is limited to the vulnerable component itself, with no direct lateral movement capability, though credential compromise could facilitate further access.
Crypt::PBKDF2 versions before 0.261630 for Perl, particularly those exposing authentication endpoints over a network.eq operator short-circuits on the first differing byte, requests that match more leading bytes will take measurably longer to return.The primary remediation is to upgrade Crypt::PBKDF2 to version 0.261630 or later, which replaces the vulnerable eq comparison with a constant-time string comparison function (Openwall OSS-Sec). As a temporary workaround, the patch from GitHub Pull Request #6 can be applied manually to the affected module (GitHub PR #6). Downstream distributions including Fedora and openSUSE have issued updated packages addressing this vulnerability (GitHub Advisory).
The vulnerability was disclosed publicly via the oss-security mailing list by Robert Rothenberg of the CPAN Security Group on June 12, 2026, noting the unusually long gap between the original 2017 report and the 2026 fix (Openwall OSS-Sec). Red Hat and SUSE both tracked the issue through their security response processes, and Fedora and openSUSE issued updated packages shortly after disclosure (Red Hat Bugzilla). Community reaction was limited given the moderate severity and low exploitability, though the nearly nine-year delay between discovery and patching drew some attention in security circles.
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."