CVE-2024-45048 — XXE in phpoffice/phpspreadsheet — CVE Details
XXE in PHPSpreadsheet encoding is returned
Summary
Advisory Timeline
- First published August 29, 2024 (774 days ago).
- Last revised March 6, 2025 — 189 days after initial publication.
Remediation
Upgrade to the fixed version using your package manager.
composer require "phpoffice/phpspreadsheet:^1.29.1"
composer require "phpoffice/phpspreadsheet:^2.2.1"
composer require "phpoffice/phpspreadsheet:^2.1.1"
After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.
Affected Packages (4)
Affects 1 ecosystem: packagist (2).
| Package | Ecosystem | Affected | Fixed In |
|---|---|---|---|
| phpoffice/phpspreadsheet | packagist | 1.0.0, 1.0.0-beta, 1.0.0-beta2, 1.1.0 (+42 more) | 1.29.1 |
| phpoffice/phpspreadsheet | packagist | 2.2.0 | 2.2.1 |
| phpoffice/phpspreadsheet | packagist | 2.0.0, 2.1.0 | 2.1.1 |
| phpoffice/phpexcel | packagist | 1.7.9, 1.7.9-rc1, 1.8.0, 1.8.0rc1 (+5 more) | Range-based data available |
Vulnerability Classification
Common Weakness Enumeration (CWE) identifiers for this vulnerability type.
- CWE-611XML External Entity (XXE)MITRE
CVSS Score Breakdown
What the CVSS (Common Vulnerability Scoring System) 8.8 score means for each attack dimension.
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
References
Frequently Asked Questions
- What is CVE-2024-45048?
- XXE in PHPSpreadsheet encoding is returned This vulnerability has been assigned a severity rating of HIGH (CVSS score: 8.8/10).
- How do I check if my project is affected by CVE-2024-45048?
- CVE-2024-45048 affects phpoffice/phpspreadsheet and phpoffice/phpexcel. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2024-45048 and 200,000+ other known vulnerabilities.
Severity & Exploitability
High exploitability or significant impact. Prioritize remediation within days.
Also Known As
Related CVEs
- CVE-2026-45034CRITICAL
PHPSpreadsheet has a patch bypass for CVE-2026-34084
- CVE-2026-34084CRITICAL
PhpSpreadsheet has SSRF/RCE in IOFactory::load when $filename is user controlled
- CVE-2026-59932HIGH
PHPSpreadsheet: Gnumeric reader unbounded gzip expansion causes memory exhaustion
- CVE-2026-59931HIGH
PHPSpreadsheet: SSRF bypass via HTTP redirect in WEBSERVICE() domain whitelist
- CVE-2026-40902HIGH
PhpSpreadsheet has CPU Denial of Service via Unbounded Row Number in XLSX Row Dimensions
- CVE-2026-40863HIGH
PhpSpreadsheet has CPU Denial of Service via Unbounded Row Index in SpreadsheetML XML Reader
- CVE-2026-65954HIGH
PHPCSUtils: Remote code execution via eval() in AbstractArrayDeclarationSniff::getActualArrayKey()
- CVE-2026-59933HIGH
PHPSpreadsheet: XLS/OLE sector-chain self-loop causes memory exhaustion
Check if you're affected
Scan your dependencies to see if this vulnerability affects your projects.
Scan Your Dependencies