svg-sanitizer before 1.1.0 Quadratic CPU-Exhaustion DoS via PHP-Tag Stripping Loop
svg-sanitizer from 0.5.3 before 1.1.0 contains a denial of service vulnerability in Sanitizer::sanitize() that repeatedly rescans the whole input while stripping PHP tags. Unauthenticated attackers can upload SVGs with many overlapping PHP tag openers and closers, forcing quadratic preg_replace passes that exhaust worker CPU for minutes.
- Products
- svg-sanitizer
- Affected versions
- Not specified
- Fixed versions
- Not specified
- CVEs
- CVE-2026-117540
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 13:45 UTC · Revision 1
Source evidence
svg-sanitizer before 1.1.0 Quadratic CPU-Exhaustion DoS via PHP-Tag Stripping Loop
core-cve · Original sourcePublished 27 Oct 2026, 10:59 UTC
svg-sanitizer from 0.5.3 before 1.1.0 contains a denial of service vulnerability in Sanitizer::sanitize() that repeatedly rescans the whole input while stripping PHP tags. Unauthenticated attackers can upload SVGs with many overlapping PHP tag openers and closers, forcing quadratic preg_replace passes that exhaust worker CPU for minutes.
cve:CVE-2026-117540
svg-sanitizer
Fixed versions: Not specified
Complete source record
{
"id": "8b0fa9f02f460d72922a43c86fa48cad0feb2a10518779c7f50f8dae6848c3dc",
"url": "https://www.cve.org/CVERecord?id=CVE-2026-117540",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "svg-sanitizer before 1.1.0 Quadratic CPU-Exhaustion DoS via PHP-Tag Stripping Loop",
"summary": "svg-sanitizer from 0.5.3 before 1.1.0 contains a denial of service vulnerability in Sanitizer::sanitize() that repeatedly rescans the whole input while stripping PHP tags. Unauthenticated attackers can upload SVGs with many overlapping PHP tag openers and closers, forcing quadratic preg_replace passes that exhaust worker CPU for minutes.",
"evidence": "cve:CVE-2026-117540",
"products": [
{
"name": {
"value": "svg-sanitizer",
"evidence": "/containers/cna/affected/0/product"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": []
}
],
"severity": "high",
"structured": {
"id": "CVE-2026-117540",
"aliases": [
"CVE-2026-117540"
],
"metrics": [
{
"format": "CVSS",
"cvssV4_0": {
"version": "4.0",
"baseScore": 8.7,
"attackVector": "NETWORK",
"baseSeverity": "HIGH",
"vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"attackRequirements": "NONE",
"privilegesRequired": "NONE",
"subIntegrityImpact": "NONE",
"vulnIntegrityImpact": "NONE",
"subAvailabilityImpact": "NONE",
"vulnAvailabilityImpact": "HIGH",
"subConfidentialityImpact": "NONE",
"vulnConfidentialityImpact": "NONE"
}
},
{
"format": "CVSS",
"cvssV3_1": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 7.5,
"attackVector": "NETWORK",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"integrityImpact": "NONE",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "HIGH",
"privilegesRequired": "NONE",
"confidentialityImpact": "NONE"
}
}
],
"affected": [
{
"vendor": "darylldoyle",
"product": "svg-sanitizer",
"versions": [
{
"status": "affected",
"version": "0.5.3",
"lessThan": "1.1.0",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "1.1.0",
"versionType": "semver"
}
],
"defaultStatus": "unaffected"
}
],
"modified": "2026-10-27T10:59:34.119Z",
"provider": "cve",
"references": [
"https://github.com/darylldoyle/svg-sanitizer/security/advisories/GHSA-2v7c-jx29-jprp",
"https://github.com/darylldoyle/svg-sanitizer/commit/9ba9001493f5da737759303f13bd965ebdaa778c",
"https://www.vulncheck.com/advisories/svg-sanitizer-before-1.1.0-quadratic-cpu-exhaustion-dos-via-php-tag-stripping-loop"
],
"provider_metadata": {
"cna": {
"orgId": "83251b91-4cc7-4094-a5c7-464a1b83ea10",
"shortName": "VulnCheck",
"dateUpdated": "2026-10-27T10:59:34.119Z"
}
}
},
"related_cves": [
{
"value": "CVE-2026-117540",
"evidence": "/cveMetadata/cveId"
}
],
"security_relevant": true,
"severity_evidence": "/containers/cna/metrics"
},
"source_id": "core-cve",
"document_id": 391934,
"published_at": "2026-10-27T10:59:34.119+00:00"
}