Skip to main content

Phpseclib CVE-2026-32935

HIGH
Observable Timing Discrepancy (CWE-208)
2026-03-20 security-advisories@github.com GHSA-94g3-g5v7-q4jg
8.2
CVSS 4.0 · GitHub Advisory
View

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2021 - Vulnerable and Outdated Components
ASVS 5.0
V14 - Configuration Dependency management, component inventory
Impact

Risk assessment is complicated by the absence of CVSS vector, EPSS score, and KEV status data, which prevents quantitative prioritization against other vulnerabilities. However, several factors indicate moderate to high real-world risk: (1) The attack is network-observable and does not require authentication or user interaction, (2) Timing-based side-channel attacks are well-understood and tooling exists in the cryptographic community, (3) The library is widely used in PHP applications handling sensitive data, and (4) The presence of patched versions (1.0.27, 2.0.52, 3.0.50) indicates the vendor confirmed the issue as genuine. The attack complexity is moderate—it requires precise timing measurements and multiple requests—but is automatable. Organizations relying on phpseclib for AES-CBC encryption of confidential data (passwords, tokens, PII) should prioritize upgrading. For applications using other cipher modes or encryption libraries, risk is lower.

Exploit ScenarioDerived

An attacker observes encrypted authentication tokens or session data transmitted by a PHP web application using vulnerable phpseclib AES-CBC. By sending thousands of specially crafted decryption requests and measuring response times, the attacker can infer which padding configurations are valid, gradually recovering plaintext bytes of the encrypted token. Over the course of minutes to hours depending on network stability, the attacker reconstructs the full plaintext without ever obtaining the encryption key, then reuses the leaked token to impersonate users or escalate privileges. No special tools beyond standard HTTP clients and timing measurement (achievable over the internet via statistical analysis) are required.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Mar 20, 2026

phpseclib 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 padding oracle timing attack when using AES in CBC mode, allowing attackers to decrypt sensitive data through cryptanalysis of response timing differences. This information disclosure vulnerability affects any PHP application using the vulnerable phpseclib library for AES-CBC encryption. Although no CVSS score, EPSS data, or confirmed active exploitation (KEV status) are currently available, the presence of a verified fix and security advisory indicates this is a legitimate cryptographic weakness requiring attention.

RemediationAI

Upgrade phpseclib immediately to version 1.0.27, 2.0.52, or 3.0.50 or later depending on your current branch, following the guidance in the GitHub security advisory at https://github.com/phpseclib/phpseclib/security/advisories/GHSA-94g3-g5v7-q4jg. For applications unable to patch immediately, consider switching to authenticated encryption modes (AES-GCM) if possible, or use a higher-level cryptographic library that does not suffer timing side-channels. Additionally, implement network-level defenses such as rate limiting on decryption operations and adding random jitter to response times to reduce timing observability. Conduct an audit of all phpseclib deployments in your infrastructure to identify affected versions and prioritize patches for systems handling sensitive encrypted data.

Affected Packages

composer phpseclib/phpseclib fix: 1.0.27, 2.0.52, 3.0.50

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in composer

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

phpseclib is a pure PHP cryptographic library providing secure communications functionality including AES encryption. The vulnerability resides in the CBC mode padding validation implementation, which exhibits timing side-channels during decryption—a classic padding oracle weakness classified under CWE-208 (Observable Timing Discrepancy). When decrypting AES-CBC ciphertext, the library's padding verification logic takes measurably different amounts of time depending on whether the padding is valid, leaking information about the plaintext to a network-based attacker who can measure response latency. An attacker can iteratively refine guesses about plaintext bytes by observing timing differences, eventually recovering the original encrypted data without possessing the encryption key.

Know when Phpseclib gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

GitHub Advisory PRIMARY 8.2 HIGH
CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Ubuntu MEDIUM

Primary rating from GitHub Advisory.

CVSS VectorGitHub Advisory

Attack Vector
Network
Attack Complexity
High
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

4
Severity Changed
May 08, 2026 - 16:22 NVD
MEDIUM HIGH
CVSS changed
May 08, 2026 - 16:22 NVD
5.9 (MEDIUM) 8.2 (HIGH)
Patch released
Mar 31, 2026 - 21:13 nvd
Patch available
CVE Published
Mar 20, 2026 - 03:16 nvd
MEDIUM 5.9

DescriptionGitHub Advisory

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.

Executive ViewAI

Why It Matters

Organizations using phpseclib should be aware of moderate risk from CVE-2026-32935 rated CVSS 5.9. Exploitation could compromise the security of affected deployments. Organizations should apply vendor updates when available and monitor for exploitation.

Business Impact: Low
Compensating Controls

Apply vendor patch. If patching is delayed: restrict network access and enable monitoring.

Threat Intelligence Overview

EPSS Score
0.0%
Top 98% exploitable
Data Quality
7 sources
Confidence: High
NVD CVE.org EPSS Vulnrichment Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Defer
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
Low
Technical Impact
Partial

Priority Score

41
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +41
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

Affected Products (CPE)GitHub Advisory

cpe:2.3:a:phpseclib:phpseclib:*:*:*:*:*:*:*:*
cpe:2.3:a:phpseclib:phpseclib:*:*:*:*:*:*:*:*
cpe:2.3:a:phpseclib:phpseclib:*:*:*:*:*:*:*:*

Vendor StatusVendor

Ubuntu

Priority: Medium
php-phpseclib
Release Status Version
xenial needs-triage -
bionic needs-triage -
focal needs-triage -
jammy needs-triage -
noble needs-triage -
questing needs-triage -
upstream needs-triage -
php-phpseclib3
Release Status Version
jammy needs-triage -
noble needs-triage -
questing needs-triage -
upstream needs-triage -
phpseclib
Release Status Version
xenial needs-triage -
bionic needs-triage -
focal needs-triage -
jammy needs-triage -
noble needs-triage -
questing needs-triage -
upstream needs-triage -

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy