Skip to content
OpenAdvisories
Medium · 6.4 Public exploit CVE-2026-108360 EUVD-2026-108264GHSA-2phh-27fw-q4gc

PhpSpreadsheet: SSRF whitelist bypass via unre-validated HTTP redirect in Drawing::setPath external image loading

Published Oct 22, 2026 · Updated Oct 29, 2026 · Assigned by GitHub_M

Description

PhpSpreadsheet is a pure PHP library for reading and writing spreadsheet files. Prior to 1.30.7, 2.1.19, 2.4.8, 3.10.8, and 5.10.0, Worksheet\Drawing::setPath validates only the initial external-image URL with setIsWhitelisted when setAllowExternalImages is enabled. The HTTP stream context permits PHP to follow a redirect without applying the callback to the redirected URL, so a permitted image host can redirect the server to an internal address and cause a blind GET request. The response body is not returned to the attacker because the reader validates the downloaded content as an image and removes the temporary file, but internal GET-driven endpoints, network reachability, and cloud metadata endpoints may be reached. This issue is fixed in versions 1.30.7, 2.1.19, 2.4.8, 3.10.8, and 5.10.0.

Affected products

VendorProductAffectedFixed
PHPOffice PhpSpreadsheet < 1.30.7, >= 2.0.0, < 2.1.19, >= 2.2.0, < 2.4.8, >= 3.3.0, < 3.10.8, >= 4.0.0, < 5.10.0 —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

GitHub 1 repository

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Affected packages

EcosystemPackageAffectedFixedRecord
Packagist phpoffice/phpspreadsheet >= 4.0.0, < 5.10.0 5.10.0 GHSA-2phh-27fw-q4gc
Packagist phpoffice/phpspreadsheet >= 3.3.0, < 3.10.8 3.10.8 GHSA-2phh-27fw-q4gc
Packagist phpoffice/phpspreadsheet >= 2.2.0, < 2.4.8 2.4.8 GHSA-2phh-27fw-q4gc
Packagist phpoffice/phpspreadsheet >= 2.0.0, < 2.1.19 2.1.19 GHSA-2phh-27fw-q4gc
Packagist phpoffice/phpspreadsheet < 1.30.7 1.30.7 GHSA-2phh-27fw-q4gc

References