CVE-2026-40194
CVE-2026-40194 is a low-severity vulnerability in Phpseclib with a CVSS 3.x base score of 3.7. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-208.
Key facts
- Severity: Low (CVSS 3.x base score 3.7)
- EPSS exploit prediction: 0% (25th percentile)
- Actively exploited: Not listed in CISA KEV
- EU (EUVD) id: EUVD-2026-21597
- Weakness: CWE-208
- Affected product: Phpseclib
- Published:
- Last modified:
Description
phpseclib is a PHP secure communications library. Starting in 0.1.1 and prior to 3.0.51, 2.0.53, and 1.0.28, phpseclib\Net\SSH2::get_binary_packet() uses PHP's != operator to compare a received SSH packet HMAC against the locally computed HMAC. != on equal-length binary strings in PHP uses memcmp(), which short-circuits on the first differing byte. This is a real variable-time comparison (CWE-208), proven by scaling benchmarks. This vulnerability is fixed in 3.0.51, 2.0.53, and 1.0.28.
Frequently asked questions
- What is CVE-2026-40194?
- phpseclib is a PHP secure communications library. Starting in 0.1.1 and prior to 3.0.51, 2.0.53, and 1.0.28, phpseclib\Net\SSH2::get_binary_packet() uses PHP's != operator to compare a received SSH packet HMAC against the locally computed HMAC. != on equal-length binary strings in PHP uses memcmp(), which short-circuits on the first differing byte. This is a real variable-time comparison (CWE-208), proven by scaling benchmarks. This vulnerability is fixed in 3.0.51, 2.0.53, and 1.0.28.
- How severe is CVE-2026-40194?
- CVE-2026-40194 has a CVSS 3.x base score of 3.7, rated low severity. It is exploitable over network with high attack complexity, requires no privileges and no user interaction. Impact on confidentiality is low, integrity none, and availability none.
- Is CVE-2026-40194 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (25th percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-40194?
- CVE-2026-40194 affects Phpseclib. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-40194?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround.
- Does CVE-2026-40194 have an EU (EUVD) identifier?
- Yes. CVE-2026-40194 is tracked in the ENISA EU Vulnerability Database (EUVD) as EUVD-2026-21597.
- When was CVE-2026-40194 published?
- CVE-2026-40194 was published on 2026-04-10 and last updated on 2026-06-17.
References
- https://github.com/phpseclib/phpseclib/commit/ffe48b6b1b1af6963327f0a5330e3aa004a194ac
- https://github.com/phpseclib/phpseclib/releases/tag/1.0.28
- https://github.com/phpseclib/phpseclib/releases/tag/2.0.53
- https://github.com/phpseclib/phpseclib/releases/tag/3.0.51
- https://github.com/phpseclib/phpseclib/security/advisories/GHSA-r854-jrxh-36qx
Affected products (1)
- cpe:2.3:a:phpseclib:phpseclib:*:*:*:*:*:*:*:*
More vulnerabilities in Phpseclib
- CVE-2023-52892 — High (CVSS 7.5): In phpseclib before 1.0.22, 2.x before 2.0.46, and 3.x before 3.0.33, some characters in Subject Alternative Name…
- CVE-2024-27355 — High (CVSS 7.5): An issue was discovered in phpseclib 1.x before 1.0.23, 2.x before 2.0.47, and 3.x before 3.0.36. When processing the…
- CVE-2024-27354 — High (CVSS 7.5): An issue was discovered in phpseclib 1.x before 1.0.23, 2.x before 2.0.47, and 3.x before 3.0.36. An attacker can…
- CVE-2023-49316 — High (CVSS 7.5): In Math/BinaryField.php in phpseclib 3 before 3.0.34, excessively large degrees can lead to a denial of service.
- CVE-2023-27560 — High (CVSS 7.5): Math/PrimeField.php in phpseclib 3.x before 3.0.19 has an infinite loop with composite primefields.
- CVE-2021-30130 — High (CVSS 7.5): phpseclib before 2.0.31 and 3.x before 3.0.7 mishandles RSA PKCS#1 v1.5 signature verification.
All CVEs affecting Phpseclib →
Other CWE-208 vulnerabilities
- CVE-2023-41313 — Critical (CVSS 9.8): The authentication method in Apache Doris versions before 2.0.0 was vulnerable to timing attacks. Users are recommended…
- CVE-2024-42512 — High (CVSS 8.6): Vulnerability in the OPC UA .NET Standard Stack before 1.5.374.158 allows an unauthorized attacker to bypass…
- CVE-2025-53940 — High (CVSS 8.5): Quiet is an alternative to team chat apps like Slack, Discord, and Element that does not require trusting a central…
- CVE-2026-47784 — High (CVSS 8.1): In memcached before 1.6.42, password data for SASL password database authentication has a timing side channel because…
- CVE-2026-47783 — High (CVSS 8.1): In memcached before 1.6.42, username data for SASL password database authentication has a timing side channel because a…
- CVE-2026-42602 — High (CVSS 8.1): azureauthextension is the Azure Authenticator Extension. From 0.124.0 to 0.150.0, a server-side authentication bypass…