Bypass XSS sanitizer using the javascript protocol and special characters in phpoffice/phpspreadsheet
phpoffice/phpspreadsheet is a pure PHP library for reading and writing spreadsheet files. Affected versions have been found to have a Bypass of the Cross-site Scripting (XSS) sanitizer using the javascript protocol and special characters. This issue has been addressed in versions 3.9.0, 2.3.7, 2.1.8, and 1.29.9. Users are advised to upgrade. There are no known workarounds for this vulnerability.
- Products
- Not specified
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2025-23210
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 5 Nov 2026, 23:51 UTC · Revision 1
Source evidence
Bypass XSS sanitizer using the javascript protocol and special characters in phpoffice/phpspreadsheet
core-osv · Original sourcePublished 3 Feb 2025, 21:14 UTC
phpoffice/phpspreadsheet is a pure PHP library for reading and writing spreadsheet files. Affected versions have been found to have a Bypass of the Cross-site Scripting (XSS) sanitizer using the javascript protocol and special characters. This issue has been addressed in versions 3.9.0, 2.3.7, 2.1.8, and 1.29.9. Users are advised to upgrade. There are no known workarounds for this vulnerability.
osv:CVE-2025-23210
Complete source record
{
"id": "d67fbff5399883a7d36c9c786ff0a1de5ee9f3bec77e6b08ae8467ff006a9a9e",
"url": "https://osv.dev/vulnerability/CVE-2025-23210",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "Bypass XSS sanitizer using the javascript protocol and special characters in phpoffice/phpspreadsheet",
"summary": "phpoffice/phpspreadsheet is a pure PHP library for reading and writing spreadsheet files. Affected versions have been found to have a Bypass of the Cross-site Scripting (XSS) sanitizer using the javascript protocol and special characters. This issue has been addressed in versions 3.9.0, 2.3.7, 2.1.8, and 1.29.9. Users are advised to upgrade. There are no known workarounds for this vulnerability.",
"evidence": "osv:CVE-2025-23210",
"products": [],
"severity": "medium",
"structured": {
"id": "CVE-2025-23210",
"aliases": [
"CVE-2025-23210",
"GHSA-r57h-547h-w24f"
],
"metrics": [
{
"type": "CVSS_V4",
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:A/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N"
}
],
"affected": [
{
"ranges": [
{
"repo": "https://github.com/phpoffice/phpspreadsheet",
"type": "GIT",
"events": [
{
"introduced": "0"
},
{
"fixed": "414f8a2aa1d8b974b39f577c0677d5ebc96fab36"
},
{
"fixed": "ffb47b639649fc9c8a6fa67977a27b756592ed85"
},
{
"introduced": "b0993b7e4d9c860133365d115b176bc6e0f57022"
},
{
"fixed": "cf357183b1d17a3862e8e4b9b056a556654dcae6"
},
{
"introduced": "4a77798f835119754961a97714f135826a323caa"
},
{
"fixed": "8be52afdacac097057f8e165b1427cb8789dde92"
},
{
"fixed": "cde2926a9e2baf146783f8fd1771bbed7d1dc7b3"
}
],
"database_specific": {
"extracted_events": [
{
"range": [
{
"introduced": "3.0.0"
},
{
"fixed": "3.9.0"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "0"
},
{
"fixed": "1.29.9"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "2.2.0"
},
{
"fixed": "2.3.7"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"introduced": "2.0.0"
},
{
"fixed": "2.1.8"
}
],
"source": "AFFECTED_FIELD",
"strategy": "StringRangeExpression"
},
{
"range": [
{
"fixed": "cde2926a9e2baf146783f8fd1771bbed7d1dc7b3"
}
],
"source": "REFERENCES_COMMIT"
}
]
}
}
],
"versions": [
"3.3.0",
"3.8.0",
"2.3.6",
"2.1.7",
"1.29.8",
"2.3.5",
"2.1.6",
"1.29.7",
"3.7.0",
"1.29.6",
"2.3.4",
"2.1.5",
"3.6.0",
"2.3.3",
"2.1.4",
"1.29.5",
"3.5.0",
"3.4.0",
"2.3.2",
"2.1.3",
"1.29.4",
"1.29.2",
"2.1.1",
"2.3.0",
"2.1.0",
"1.29.1",
"2.2.2",
"1.29.0",
"2.2.1",
"2.2.0",
"2.0.0",
"1.28.0",
"1.27.0",
"1.25.2",
"1.25.1",
"1.25.0",
"1.24.1",
"1.24.0",
"1.23.0",
"1.22.0",
"1.21.0",
"1.20.0",
"1.19.0",
"1.18.0",
"1.17.1",
"1.17.0",
"1.16.0",
"1.15.0",
"1.14.1",
"1.14.0",
"1.13.0",
"1.12.0",
"1.11.0",
"1.10.1",
"1.10.0",
"1.8.2",
"1.8.1",
"1.8.0",
"1.7.0",
"1.6.0",
"1.5.0",
"1.4.1",
"1.4.0",
"1.3.1",
"1.3.0",
"1.2.1",
"1.2.0",
"1.1.0",
"1.0.0",
"1.0.0-beta2",
"phpexcel-last-cherry-picked-commit",
"phpexcel-last-release-1.8.1"
],
"database_specific": {
"source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2025-23210.json"
}
}
],
"modified": "2026-10-28T02:30:45.258442660Z",
"provider": "osv",
"references": [
"https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/23xxx/CVE-2025-23210.json",
"https://github.com/PHPOffice/PhpSpreadsheet/security/advisories/GHSA-r57h-547h-w24f",
"https://nvd.nist.gov/vuln/detail/CVE-2025-23210",
"https://github.com/PHPOffice/PhpSpreadsheet/commit/cde2926a9e2baf146783f8fd1771bbed7d1dc7b3"
],
"provider_metadata": {
"cwe_ids": [
"CWE-79"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2025/23xxx/CVE-2025-23210.json"
}
},
"related_cves": [
{
"value": "CVE-2025-23210",
"evidence": "/id"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 513223,
"published_at": "2025-02-03T21:14:57.255+00:00"
}