Name | CVE-2021-30130 |
Description | phpseclib before 2.0.31 and 3.x before 3.0.7 mishandles RSA PKCS#1 v1.5 signature verification. |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, bugtraq, EDB, Metasploit, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, Mageia, GitHub code/issues, web search, more) |
Vulnerable and fixed packages
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|
php-phpseclib (PTS) | buster | 2.0.14-1 | vulnerable |
| bullseye | 2.0.30-2 | fixed |
| bookworm, sid | 2.0.37-1 | fixed |
php-phpseclib3 (PTS) | bookworm, sid | 3.0.14-1 | fixed |
phpseclib (PTS) | buster | 1.0.14-1 | vulnerable |
| bullseye | 1.0.19-3 | fixed |
| bookworm, sid | 1.0.20-1 | fixed |
The information below is based on the following data on fixed versions.
Notes
[stretch] - phpseclib <not-affected> (Only affects 3.x branch)
[stretch] - php-phpseclib <not-affected> (Only affects 3.x branch)
https://github.com/phpseclib/phpseclib/pull/1635#issuecomment-826994890
Introduced by: https://github.com/phpseclib/phpseclib/commit/cc32cd2e95b18a0c0118bbf1928327675c9e64a9 (v3.0 / RSA::SIGNATURE_RELAXED_PKCS1)
According to upstream, 1.x and 2.x are not vulnerable, the fix on these branches only backports more exhaustive PKCS#1 v1.5 support (functional change)
According to upstream, 1.x and 2.x have the problem described as "incompatibility issue in phpseclib v1, v2, v3 (strict mode)'s RSA PKCS#1 v1.5
signature verification suffering from rejecting valid signatures whose encoded message uses implicit hash algorithm's NULL parameter." but
this is not considered as a security problem.