CVE-2026-32935: phpseclib's AES-CBC unpadding susceptible to padding oracle timing attack
Impact Those using AES in CBC mode may be susceptible to a padding oracle timing attack.
Patches https://github.com/phpseclib/phpseclib/commit/ccc21aef71eb170e9bf819b167e67d1fd9e6e788
Workarounds Use AES in CTR, CFB or OFB modes
Other sources
phpseclib is a PHP secure communications library. Projects using versions 0.1.1 through 1.0.26, 2.0.0 through 2.0.51, and 3.0.0 through 3.0.49 are vulnerable to a to padding oracle timing attack when using AES in CBC mode. This issue has been fixed in versions 1.0.27, 2.0.52 and 3.0.50.
— MITRE
phpseclib is a PHP secure communications library. Projects using versions 1.0.26 and below, 2.0.0 through 2.0.51, and 3.0.0 through 3.0.49 are vulnerable to a to padding oracle timing attack when using AES in CBC mode. This issue has been fixed in versions 1.0.27, 2.0.52 and 3.0.50.
— NVD
Affected Software
Remediation
Event History
Frequently Asked Questions
What is the severity of CVE-2026-32935?
CVE-2026-32935 is considered a moderate severity vulnerability due to its exploitation via a padding oracle timing attack.
How do I fix CVE-2026-32935?
To fix CVE-2026-32935, upgrade phpseclib to version 1.0.27, 2.0.52, or 3.0.50 or later.
What vulnerability does CVE-2026-32935 address?
CVE-2026-32935 addresses a susceptibility in phpseclib's AES-CBC unpadding that can be attacked using a padding oracle timing attack.
Which versions of phpseclib are affected by CVE-2026-32935?
CVE-2026-32935 affects phpseclib versions prior to 1.0.27, 2.0.52, and 3.0.50.
What is a padding oracle timing attack related to CVE-2026-32935?
A padding oracle timing attack exploits the timing discrepancies in error messages to decrypt encrypted data without knowing the key.