phpseclib is a PHP secure communications library. Prior to 3.0.57 and 4.0.1, pure-PHP X25519 scalar multiplication in phpseclib/Math/PrimeField/Integer.php performs data-dependent conditional modular reductions in add() and subtract(). During the Montgomery ladder in phpseclib/Crypt/EC/BaseCurves/Montgomery.php, the reduction behavior of each step depends on the secret scalar prefix, creating per-step timing and libgmp call-count observations that can reveal a reused 251-bit clamped private scalar. The phpseclib/Crypt/EC/Formats/Keys/MontgomeryPrivate.php derivation path invokes the pure-PHP multiplication without a native-engine check, while phpseclib/Crypt/EC/Formats/Keys/PKCS8.php reaches it when ext-sodium is unavailable. Exploitation requires a reused or long-lived X25519 private key, knowledge of the corresponding public key, execution of the pure-PHP path, and a local observer capable of resolving individual ladder steps or libgmp entry-point calls. Ephemeral X25519 keys, including phpseclib's normal SSH exchange path, are not affected. Recovery of the scalar permanently compromises operations that reuse that key. This issue is fixed in versions 3.0.57 and 4.0.1.
CVE-2026-84308
This medium-severity CVE scores 6.3 under a secondary CVSS source (NVD's own analysis pending). EPSS exploit probability: 0.2%, top 88% of all CVEs by exploit prediction. GitHub Security Advisory data not yet ingested — confidence will rise once GHSA publishes (typical lag: hours to days for open-source ecosystem CVEs; never for infrastructure-only CVEs).
- Lower severity and no public exploit yet
No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.
- CVSS v3
- 6.3
- EG Score
- 6.3(medium)
- EG Risk
- 44(Track*)EG Risk 44/100SSVC: Track*
EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).
How it’s computedSeverity63% × 45%Exploitation40% × 40%Automatability0% × 15%Action: Watch closely — could escalate to Attend. - EPSS PROB
- 0%
- EPSS %ILE
- 12%
- KEV
- Not listed
Published
September 1, 2026
Last Modified
September 9, 2026
Advisory Details (4)
Auto-updated Sep 1, 20264.0.1
Patch available: phpseclib/phpseclib 4.0.1
https://github.com/phpseclib/phpseclib/releases/tag/4.0.13.0.57
Patch available: phpseclib/phpseclib 3.0.57
https://github.com/phpseclib/phpseclib/releases/tag/3.0.57commit fb56bc5bb900 (phpseclib/phpseclib)
Patch available: phpseclib/phpseclib 3.0.57 (contains commit fb56bc5bb900)
https://github.com/phpseclib/phpseclib/commit/fb56bc5bb9009b54a6c26b31aeec8ed944f17373phpseclib 3.0.56 — non-constant-time X25519 scalar multiplication permits full private-key recovery · Advisory · phpseclib/phpseclib · GitHub
https://github.com/phpseclib/phpseclib/security/advisories/GHSA-q97c-8qh3-fpc6Vendor Advisories for CVE-2026-84308(1)
These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.
Affected Packages
(5 across 4 ecosystems)
Debian:14(2)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| php-phpseclib3 | 3.0.43-2 ... 3.0.56-1 (16 versions) | 3.0.57-1 | — |
| php-phpseclib4 | 4.0.0-1 | 4.0.1-1 | — |
Debian:12(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| php-phpseclib3 | 3.0.19-1 ... 3.0.57-1 (38 versions) | — | — |
Debian:13(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| php-phpseclib3 | 3.0.43-2 ... 3.0.57-1 (19 versions) | — | — |
Packagist(1)
| Package | Vulnerable range | Fixed in | Dependents |
|---|---|---|---|
| phpseclib | — | 4.0.1 | — |
Weakness Classification(2)
MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.
Data Freshness Timeline
(refreshed 12× in last 7d / 32× in last 30d)
Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.
- 2026-09-18 21:25 UTCEG score recompute
- 2026-09-18 19:28 UTCEPSS rescore
- 2026-09-17 20:42 UTCEG score recompute
- 2026-09-17 19:32 UTCEPSS rescore
- 2026-09-16 18:39 UTCEG score recompute
- 2026-09-16 14:09 UTCEPSS rescore
- 2026-09-16 05:15 UTCEPSS rescore
- 2026-09-15 18:29 UTCEG score recompute
- 2026-09-15 03:12 UTCEPSS rescore
- 2026-09-15 03:12 UTCEPSS rescore
- 2026-09-13 19:23 UTCEG score recompute
- 2026-09-12 19:50 UTCEG score recompute
- 2026-09-11 20:17 UTCEG score recompute
- 2026-09-11 14:53 UTCEPSS rescore
- 2026-09-11 14:53 UTCEPSS rescore
- 2026-09-10 20:44 UTCEG score recompute
- 2026-09-08 23:22 UTCEG score recompute
- 2026-09-08 22:01 UTCEPSS rescore
- 2026-09-07 17:01 UTCEG score recompute
- 2026-09-06 17:28 UTCEG score recompute
- 2026-09-06 13:48 UTCEPSS rescore
- 2026-09-05 17:55 UTCEG score recompute
- 2026-09-05 15:31 UTCEPSS rescore
- 2026-09-04 18:21 UTCEG score recompute
- 2026-09-04 05:07 UTCEPSS rescore
Show 7 moreShow fewer
- 2026-09-03 18:45 UTCEG score recompute
- 2026-09-03 17:45 UTCEG score recompute
- 2026-09-02 20:00 UTCEG score recompute
- 2026-09-02 14:12 UTCEPSS rescore
- 2026-09-01 20:19 UTCEG score recompute
- 2026-09-01 19:35 UTCEG score recompute
- 2026-09-01 19:32 UTCMITRE cvelistV5first tracked
Frequently asked(5)
What is CVE-2026-84308?
When was CVE-2026-84308 disclosed?
Is CVE-2026-84308 actively exploited?
What is the CVSS score of CVE-2026-84308?
How do I remediate CVE-2026-84308?
Dependency Blast Radius
See which npm, PyPI, Go, and Maven packages are affected by CVE-2026-84308
Is Your Infrastructure Affected by CVE-2026-84308?
EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.