Action not permitted
Modal body text goes here.
Modal Title
Modal Body
CVE-2021-21236 (GCVE-0-2021-21236)
Vulnerability from cvelistv5 – Published: 2021-01-06 17:00 – Updated: 2024-08-03 18:09- CWE-400 - Uncontrolled Resource Consumption
| URL | Tags |
|---|---|
| https://github.com/Kozea/CairoSVG/security/adviso… | x_refsource_CONFIRM |
| https://pypi.org/project/CairoSVG/ | x_refsource_MISC |
| https://github.com/Kozea/CairoSVG/commit/cfc9175e… | x_refsource_MISC |
| https://github.com/Kozea/CairoSVG/releases/tag/2.5.1 | x_refsource_MISC |
{
"containers": {
"adp": [
{
"providerMetadata": {
"dateUpdated": "2024-08-03T18:09:15.166Z",
"orgId": "af854a3a-2127-422b-91ae-364da2661108",
"shortName": "CVE"
},
"references": [
{
"tags": [
"x_refsource_CONFIRM",
"x_transferred"
],
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://pypi.org/project/CairoSVG/"
},
{
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"tags": [
"x_refsource_MISC",
"x_transferred"
],
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
}
],
"title": "CVE Program Container"
}
],
"cna": {
"affected": [
{
"product": "CairoSVG",
"vendor": "Kozea",
"versions": [
{
"status": "affected",
"version": "\u003c 2.5.1"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 5.7,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-400",
"description": "CWE-400 Uncontrolled Resource Consumption",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2021-01-06T17:00:19.000Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"tags": [
"x_refsource_MISC"
],
"url": "https://pypi.org/project/CairoSVG/"
},
{
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
}
],
"source": {
"advisory": "GHSA-hq37-853p-g5cf",
"discovery": "UNKNOWN"
},
"title": "Regular Expression Denial of Service in CairoSVG",
"x_legacyV4Record": {
"CVE_data_meta": {
"ASSIGNER": "security-advisories@github.com",
"ID": "CVE-2021-21236",
"STATE": "PUBLIC",
"TITLE": "Regular Expression Denial of Service in CairoSVG"
},
"affects": {
"vendor": {
"vendor_data": [
{
"product": {
"product_data": [
{
"product_name": "CairoSVG",
"version": {
"version_data": [
{
"version_value": "\u003c 2.5.1"
}
]
}
}
]
},
"vendor_name": "Kozea"
}
]
}
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "eng",
"value": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information."
}
]
},
"impact": {
"cvss": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 5.7,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
}
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "eng",
"value": "CWE-400 Uncontrolled Resource Consumption"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf",
"refsource": "CONFIRM",
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"name": "https://pypi.org/project/CairoSVG/",
"refsource": "MISC",
"url": "https://pypi.org/project/CairoSVG/"
},
{
"name": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3",
"refsource": "MISC",
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"name": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1",
"refsource": "MISC",
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
}
]
},
"source": {
"advisory": "GHSA-hq37-853p-g5cf",
"discovery": "UNKNOWN"
}
}
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2021-21236",
"datePublished": "2021-01-06T17:00:19.000Z",
"dateReserved": "2020-12-22T00:00:00.000Z",
"dateUpdated": "2024-08-03T18:09:15.166Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.1",
"vulnerability-lookup:meta": {
"epss": {
"cve": "CVE-2021-21236",
"date": "2026-06-06",
"epss": "0.00138",
"percentile": "0.33667"
},
"nvd": "{\"cve\":{\"id\":\"CVE-2021-21236\",\"sourceIdentifier\":\"security-advisories@github.com\",\"published\":\"2021-01-06T17:15:23.733\",\"lastModified\":\"2024-11-21T05:47:50.170\",\"vulnStatus\":\"Modified\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.\"},{\"lang\":\"es\",\"value\":\"CairoSVG es un paquete de Python (pypi).\u0026#xa0;CairoSVG es un conversor de SVG basado en Cairo.\u0026#xa0;En CairoSVG versiones anteriores a 2.5.1, se presenta de denegaci\u00f3n de servicio de expresi\u00f3n regular (REDoS).\u0026#xa0;Cuando se procesan archivos SVG, el paquete de python CairoSVG utiliza dos expresiones regulares que son vulnerables a una Denegaci\u00f3n de Servicio de Expresiones Regulares (REDoS).\u0026#xa0;Si un atacante proporciona un SVG malicioso, puede hacer que cairosvg se atasque al procesar el archivo durante mucho tiempo.\u0026#xa0;Esto es corregido en la versi\u00f3n 2.5.1.\u0026#xa0;Consulte el aviso Referenced GitHub para obtener m\u00e1s informaci\u00f3n\"}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H\",\"baseScore\":5.7,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"NETWORK\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"REQUIRED\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":2.1,\"impactScore\":3.6},{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"NONE\",\"userInteraction\":\"REQUIRED\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}],\"cvssMetricV2\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"2.0\",\"vectorString\":\"AV:N/AC:M/Au:N/C:N/I:N/A:P\",\"baseScore\":4.3,\"accessVector\":\"NETWORK\",\"accessComplexity\":\"MEDIUM\",\"authentication\":\"NONE\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"PARTIAL\"},\"baseSeverity\":\"MEDIUM\",\"exploitabilityScore\":8.6,\"impactScore\":2.9,\"acInsufInfo\":false,\"obtainAllPrivilege\":false,\"obtainUserPrivilege\":false,\"obtainOtherPrivilege\":false,\"userInteractionRequired\":true}]},\"weaknesses\":[{\"source\":\"security-advisories@github.com\",\"type\":\"Secondary\",\"description\":[{\"lang\":\"en\",\"value\":\"CWE-400\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:a:courtbouillon:cairosvg:*:*:*:*:*:*:*:*\",\"versionEndExcluding\":\"2.5.1\",\"matchCriteriaId\":\"6D10055D-3299-4F39-B4E2-A52D95ABB225\"}]}]}],\"references\":[{\"url\":\"https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Patch\",\"Third Party Advisory\"]},{\"url\":\"https://github.com/Kozea/CairoSVG/releases/tag/2.5.1\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Release Notes\",\"Third Party Advisory\"]},{\"url\":\"https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Exploit\",\"Third Party Advisory\"]},{\"url\":\"https://pypi.org/project/CairoSVG/\",\"source\":\"security-advisories@github.com\",\"tags\":[\"Product\",\"Third Party Advisory\"]},{\"url\":\"https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Patch\",\"Third Party Advisory\"]},{\"url\":\"https://github.com/Kozea/CairoSVG/releases/tag/2.5.1\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Release Notes\",\"Third Party Advisory\"]},{\"url\":\"https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Exploit\",\"Third Party Advisory\"]},{\"url\":\"https://pypi.org/project/CairoSVG/\",\"source\":\"af854a3a-2127-422b-91ae-364da2661108\",\"tags\":[\"Product\",\"Third Party Advisory\"]}]}}"
}
}
FKIE_CVE-2021-21236
Vulnerability from fkie_nvd - Published: 2021-01-06 17:15 - Updated: 2024-11-21 05:475.5 (Medium) - CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H
| URL | Tags | ||
|---|---|---|---|
| security-advisories@github.com | https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3 | Patch, Third Party Advisory | |
| security-advisories@github.com | https://github.com/Kozea/CairoSVG/releases/tag/2.5.1 | Release Notes, Third Party Advisory | |
| security-advisories@github.com | https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf | Exploit, Third Party Advisory | |
| security-advisories@github.com | https://pypi.org/project/CairoSVG/ | Product, Third Party Advisory | |
| af854a3a-2127-422b-91ae-364da2661108 | https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3 | Patch, Third Party Advisory | |
| af854a3a-2127-422b-91ae-364da2661108 | https://github.com/Kozea/CairoSVG/releases/tag/2.5.1 | Release Notes, Third Party Advisory | |
| af854a3a-2127-422b-91ae-364da2661108 | https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf | Exploit, Third Party Advisory | |
| af854a3a-2127-422b-91ae-364da2661108 | https://pypi.org/project/CairoSVG/ | Product, Third Party Advisory |
| Vendor | Product | Version | |
|---|---|---|---|
| courtbouillon | cairosvg | * |
{
"configurations": [
{
"nodes": [
{
"cpeMatch": [
{
"criteria": "cpe:2.3:a:courtbouillon:cairosvg:*:*:*:*:*:*:*:*",
"matchCriteriaId": "6D10055D-3299-4F39-B4E2-A52D95ABB225",
"versionEndExcluding": "2.5.1",
"vulnerable": true
}
],
"negate": false,
"operator": "OR"
}
]
}
],
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information."
},
{
"lang": "es",
"value": "CairoSVG es un paquete de Python (pypi).\u0026#xa0;CairoSVG es un conversor de SVG basado en Cairo.\u0026#xa0;En CairoSVG versiones anteriores a 2.5.1, se presenta de denegaci\u00f3n de servicio de expresi\u00f3n regular (REDoS).\u0026#xa0;Cuando se procesan archivos SVG, el paquete de python CairoSVG utiliza dos expresiones regulares que son vulnerables a una Denegaci\u00f3n de Servicio de Expresiones Regulares (REDoS).\u0026#xa0;Si un atacante proporciona un SVG malicioso, puede hacer que cairosvg se atasque al procesar el archivo durante mucho tiempo.\u0026#xa0;Esto es corregido en la versi\u00f3n 2.5.1.\u0026#xa0;Consulte el aviso Referenced GitHub para obtener m\u00e1s informaci\u00f3n"
}
],
"id": "CVE-2021-21236",
"lastModified": "2024-11-21T05:47:50.170",
"metrics": {
"cvssMetricV2": [
{
"acInsufInfo": false,
"baseSeverity": "MEDIUM",
"cvssData": {
"accessComplexity": "MEDIUM",
"accessVector": "NETWORK",
"authentication": "NONE",
"availabilityImpact": "PARTIAL",
"baseScore": 4.3,
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"vectorString": "AV:N/AC:M/Au:N/C:N/I:N/A:P",
"version": "2.0"
},
"exploitabilityScore": 8.6,
"impactScore": 2.9,
"obtainAllPrivilege": false,
"obtainOtherPrivilege": false,
"obtainUserPrivilege": false,
"source": "nvd@nist.gov",
"type": "Primary",
"userInteractionRequired": true
}
],
"cvssMetricV31": [
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 5.7,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
},
"exploitabilityScore": 2.1,
"impactScore": 3.6,
"source": "security-advisories@github.com",
"type": "Secondary"
},
{
"cvssData": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 5.5,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
},
"exploitabilityScore": 1.8,
"impactScore": 3.6,
"source": "nvd@nist.gov",
"type": "Primary"
}
]
},
"published": "2021-01-06T17:15:23.733",
"references": [
{
"source": "security-advisories@github.com",
"tags": [
"Patch",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"source": "security-advisories@github.com",
"tags": [
"Release Notes",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
},
{
"source": "security-advisories@github.com",
"tags": [
"Exploit",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"source": "security-advisories@github.com",
"tags": [
"Product",
"Third Party Advisory"
],
"url": "https://pypi.org/project/CairoSVG/"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Patch",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Release Notes",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Exploit",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"source": "af854a3a-2127-422b-91ae-364da2661108",
"tags": [
"Product",
"Third Party Advisory"
],
"url": "https://pypi.org/project/CairoSVG/"
}
],
"sourceIdentifier": "security-advisories@github.com",
"vulnStatus": "Modified",
"weaknesses": [
{
"description": [
{
"lang": "en",
"value": "CWE-400"
}
],
"source": "security-advisories@github.com",
"type": "Secondary"
}
]
}
GHSA-HQ37-853P-G5CF
Vulnerability from github – Published: 2021-01-06 16:57 – Updated: 2024-09-13 17:42Doyensec Vulnerability Advisory
- Regular Expression Denial of Service (REDoS) in cairosvg
- Affected Product: CairoSVG v2.0.0+
- Vendor: https://github.com/Kozea
- Severity: Medium
- Vulnerability Class: Denial of Service
- Author(s): Ben Caller (Doyensec)
Summary
When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time.
Technical description
The vulnerable regular expressions are
https://github.com/Kozea/CairoSVG/blob/9c4a982b9a021280ad90e89707eacc1d114e4ac4/cairosvg/colors.py#L190-L191
The section between 'rgb(' and the final ')' contains multiple overlapping groups.
Since all three infinitely repeating groups accept spaces, a long string of spaces causes catastrophic backtracking when it is not followed by a closing parenthesis.
The complexity is cubic, so doubling the length of the malicious string of spaces makes processing take 8 times as long.
Reproduction steps
Create a malicious SVG of the form:
<svg width="1" height="1"><rect fill="rgb( ;"/></svg>
with the following code:
'<svg width="1" height="1"><rect fill="rgb(' + (' ' * 3456) + ';"/></svg>'
Note that there is no closing parenthesis before the semi-colon.
Run cairosvg e.g.:
cairosvg cairo-redos.svg -o x.png
and notice that it hangs at 100% CPU. Increasing the number of spaces increases the processing time with cubic complexity.
Remediation
Fix the regexes to avoid overlapping parts. Perhaps remove the [ \n\r\t]* groups from the regex, and use .strip() on the returned capture group.
Disclosure timeline
- 2020-12-30: Vulnerability disclosed via email to CourtBouillon
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "CairoSVG"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.5.1"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2021-21236"
],
"database_specific": {
"cwe_ids": [
"CWE-400"
],
"github_reviewed": true,
"github_reviewed_at": "2021-01-06T16:57:38Z",
"nvd_published_at": "2021-01-06T17:15:00Z",
"severity": "HIGH"
},
"details": "# Doyensec Vulnerability Advisory \n\n* Regular Expression Denial of Service (REDoS) in cairosvg\n* Affected Product: CairoSVG v2.0.0+\n* Vendor: https://github.com/Kozea\n* Severity: Medium\n* Vulnerability Class: Denial of Service\n* Author(s): Ben Caller ([Doyensec](https://doyensec.com))\n\n## Summary\n\nWhen processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS).\nIf an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time.\n\n## Technical description\n\nThe vulnerable regular expressions are\n\nhttps://github.com/Kozea/CairoSVG/blob/9c4a982b9a021280ad90e89707eacc1d114e4ac4/cairosvg/colors.py#L190-L191\n\nThe section between \u0027rgb(\u0027 and the final \u0027)\u0027 contains multiple overlapping groups.\n\nSince all three infinitely repeating groups accept spaces, a long string of spaces causes catastrophic backtracking when it is not followed by a closing parenthesis.\n\nThe complexity is cubic, so doubling the length of the malicious string of spaces makes processing take 8 times as long.\n\n## Reproduction steps\n\nCreate a malicious SVG of the form:\n\n \u003csvg width=\"1\" height=\"1\"\u003e\u003crect fill=\"rgb( ;\"/\u003e\u003c/svg\u003e\n\nwith the following code:\n\n \u0027\u003csvg width=\"1\" height=\"1\"\u003e\u003crect fill=\"rgb(\u0027 + (\u0027 \u0027 * 3456) + \u0027;\"/\u003e\u003c/svg\u003e\u0027\n\nNote that there is no closing parenthesis before the semi-colon.\n\nRun cairosvg e.g.:\n\n cairosvg cairo-redos.svg -o x.png\n\nand notice that it hangs at 100% CPU. Increasing the number of spaces increases the processing time with cubic complexity.\n\n## Remediation\n\nFix the regexes to avoid overlapping parts. Perhaps remove the [ \\n\\r\\t]* groups from the regex, and use .strip() on the returned capture group.\n\n## Disclosure timeline\n\n- 2020-12-30: Vulnerability disclosed via email to CourtBouillon",
"id": "GHSA-hq37-853p-g5cf",
"modified": "2024-09-13T17:42:15Z",
"published": "2021-01-06T16:57:50Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2021-21236"
},
{
"type": "WEB",
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"type": "PACKAGE",
"url": "https://github.com/Kozea/CairoSVG"
},
{
"type": "WEB",
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
},
{
"type": "WEB",
"url": "https://github.com/pypa/advisory-database/tree/main/vulns/cairosvg/PYSEC-2021-5.yaml"
},
{
"type": "WEB",
"url": "https://pypi.org/project/CairoSVG"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"type": "CVSS_V3"
},
{
"score": "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/E:P",
"type": "CVSS_V4"
}
],
"summary": "Regular Expression Denial of Service in CairoSVG"
}
GSD-2021-21236
Vulnerability from gsd - Updated: 2023-12-13 01:23{
"GSD": {
"alias": "CVE-2021-21236",
"description": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.",
"id": "GSD-2021-21236",
"references": [
"https://www.suse.com/security/cve/CVE-2021-21236.html",
"https://advisories.mageia.org/CVE-2021-21236.html",
"https://security.archlinux.org/CVE-2021-21236"
]
},
"gsd": {
"metadata": {
"exploitCode": "unknown",
"remediation": "unknown",
"reportConfidence": "confirmed",
"type": "vulnerability"
},
"osvSchema": {
"aliases": [
"CVE-2021-21236"
],
"details": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.",
"id": "GSD-2021-21236",
"modified": "2023-12-13T01:23:11.119844Z",
"schema_version": "1.4.0"
}
},
"namespaces": {
"cve.org": {
"CVE_data_meta": {
"ASSIGNER": "security-advisories@github.com",
"ID": "CVE-2021-21236",
"STATE": "PUBLIC",
"TITLE": "Regular Expression Denial of Service in CairoSVG"
},
"affects": {
"vendor": {
"vendor_data": [
{
"product": {
"product_data": [
{
"product_name": "CairoSVG",
"version": {
"version_data": [
{
"version_value": "\u003c 2.5.1"
}
]
}
}
]
},
"vendor_name": "Kozea"
}
]
}
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "eng",
"value": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information."
}
]
},
"impact": {
"cvss": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 5.7,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "LOW",
"scope": "UNCHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
}
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "eng",
"value": "CWE-400 Uncontrolled Resource Consumption"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf",
"refsource": "CONFIRM",
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"name": "https://pypi.org/project/CairoSVG/",
"refsource": "MISC",
"url": "https://pypi.org/project/CairoSVG/"
},
{
"name": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3",
"refsource": "MISC",
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"name": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1",
"refsource": "MISC",
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
}
]
},
"source": {
"advisory": "GHSA-hq37-853p-g5cf",
"discovery": "UNKNOWN"
}
},
"gitlab.com": {
"advisories": [
{
"affected_range": "\u003c2.5.1",
"affected_versions": "All versions before 2.5.1",
"cvss_v2": "AV:N/AC:M/Au:N/C:N/I:N/A:P",
"cvss_v3": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
"cwe_ids": [
"CWE-1035",
"CWE-400",
"CWE-937"
],
"date": "2021-01-13",
"description": "In CairoSVG before version, there is a regular expression denial of service (REDoS) vulnerability",
"fixed_versions": [
"2.5.1"
],
"identifier": "CVE-2021-21236",
"identifiers": [
"CVE-2021-21236",
"GHSA-hq37-853p-g5cf"
],
"not_impacted": "All versions starting from 2.5.1",
"package_slug": "pypi/CairoSVG",
"pubdate": "2021-01-06",
"solution": "Upgrade to version 2.5.1 or above.",
"title": "Uncontrolled Resource Consumption",
"urls": [
"https://nvd.nist.gov/vuln/detail/CVE-2021-21236"
],
"uuid": "82b99a5d-0d2e-4a42-af10-422ae0b0c78b"
}
]
},
"nvd.nist.gov": {
"configurations": {
"CVE_data_version": "4.0",
"nodes": [
{
"children": [],
"cpe_match": [
{
"cpe23Uri": "cpe:2.3:a:courtbouillon:cairosvg:*:*:*:*:*:*:*:*",
"cpe_name": [],
"versionEndExcluding": "2.5.1",
"vulnerable": true
}
],
"operator": "OR"
}
]
},
"cve": {
"CVE_data_meta": {
"ASSIGNER": "security-advisories@github.com",
"ID": "CVE-2021-21236"
},
"data_format": "MITRE",
"data_type": "CVE",
"data_version": "4.0",
"description": {
"description_data": [
{
"lang": "en",
"value": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information."
}
]
},
"problemtype": {
"problemtype_data": [
{
"description": [
{
"lang": "en",
"value": "CWE-400"
}
]
}
]
},
"references": {
"reference_data": [
{
"name": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3",
"refsource": "MISC",
"tags": [
"Patch",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"name": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf",
"refsource": "CONFIRM",
"tags": [
"Exploit",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"name": "https://pypi.org/project/CairoSVG/",
"refsource": "MISC",
"tags": [
"Product",
"Third Party Advisory"
],
"url": "https://pypi.org/project/CairoSVG/"
},
{
"name": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1",
"refsource": "MISC",
"tags": [
"Release Notes",
"Third Party Advisory"
],
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
}
]
}
},
"impact": {
"baseMetricV2": {
"acInsufInfo": false,
"cvssV2": {
"accessComplexity": "MEDIUM",
"accessVector": "NETWORK",
"authentication": "NONE",
"availabilityImpact": "PARTIAL",
"baseScore": 4.3,
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"vectorString": "AV:N/AC:M/Au:N/C:N/I:N/A:P",
"version": "2.0"
},
"exploitabilityScore": 8.6,
"impactScore": 2.9,
"obtainAllPrivilege": false,
"obtainOtherPrivilege": false,
"obtainUserPrivilege": false,
"severity": "MEDIUM",
"userInteractionRequired": true
},
"baseMetricV3": {
"cvssV3": {
"attackComplexity": "LOW",
"attackVector": "LOCAL",
"availabilityImpact": "HIGH",
"baseScore": 5.5,
"baseSeverity": "MEDIUM",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "REQUIRED",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
},
"exploitabilityScore": 1.8,
"impactScore": 3.6
}
},
"lastModifiedDate": "2021-01-13T15:43Z",
"publishedDate": "2021-01-06T17:15Z"
}
}
}
OPENSUSE-SU-2023:0260-1
Vulnerability from csaf_opensuse - Published: 2023-09-25 12:02 - Updated: 2023-09-25 12:02| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch | — |
Vendor Fix
|
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "Security update for python-CairoSVG",
"title": "Title of the patch"
},
{
"category": "description",
"text": "This update for python-CairoSVG fixes the following issues:\n\n- CVE-2023-27586: Don\u0027t allow fetching external files unless explicitly asked for. (boo#1209538)\n\n- Update to version 2.5.2\n\n * Fix marker path scale\n\n- Update to version 2.5.1 (boo#1180648, CVE-2021-21236):\n\n * Security fix: When processing SVG files, CairoSVG was using two\n regular expressions which are vulnerable to Regular Expression \n Denial of Service (REDoS). If an attacker provided a malicious \n SVG, it could make CairoSVG get stuck processing the file for a \n very long time.\n * Fix marker positions for unclosed paths\n * Follow hint when only output_width or output_height is set\n * Handle opacity on raster images\n * Don\u2019t crash when use tags reference unknown tags\n * Take care of the next letter when A/a is replaced by l\n * Fix misalignment in node.vertices\n\n- Updates for version 2.5.0.\n\n * Drop support of Python 3.5, add support of Python 3.9.\n * Add EPS export\n * Add background-color, negate-colors, and invert-images options\n * Improve support for font weights\n * Fix opacity of patterns and gradients\n * Support auto-start-reverse value for orient\n * Draw images contained in defs\n * Add Exif transposition support\n * Handle dominant-baseline\n * Support transform-origin\n",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-2023-260",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2023_0260-1.json"
},
{
"category": "self",
"summary": "URL for openSUSE-SU-2023:0260-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/2GIY4HBHI7WUBHUAMEZKWBMEPOUYNCTU/"
},
{
"category": "self",
"summary": "E-Mail link for openSUSE-SU-2023:0260-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/2GIY4HBHI7WUBHUAMEZKWBMEPOUYNCTU/"
},
{
"category": "self",
"summary": "SUSE Bug 1180648",
"url": "https://bugzilla.suse.com/1180648"
},
{
"category": "self",
"summary": "SUSE Bug 1209538",
"url": "https://bugzilla.suse.com/1209538"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2021-21236 page",
"url": "https://www.suse.com/security/cve/CVE-2021-21236/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2023-27586 page",
"url": "https://www.suse.com/security/cve/CVE-2023-27586/"
}
],
"title": "Security update for python-CairoSVG",
"tracking": {
"current_release_date": "2023-09-25T12:02:25Z",
"generator": {
"date": "2023-09-25T12:02:25Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2023:0260-1",
"initial_release_date": "2023-09-25T12:02:25Z",
"revision_history": [
{
"date": "2023-09-25T12:02:25Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"product": {
"name": "python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"product_id": "python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
}
}
],
"category": "architecture",
"name": "noarch"
},
{
"branches": [
{
"category": "product_name",
"name": "SUSE Package Hub 15 SP5",
"product": {
"name": "SUSE Package Hub 15 SP5",
"product_id": "SUSE Package Hub 15 SP5"
}
},
{
"category": "product_name",
"name": "openSUSE Leap 15.5",
"product": {
"name": "openSUSE Leap 15.5",
"product_id": "openSUSE Leap 15.5",
"product_identification_helper": {
"cpe": "cpe:/o:opensuse:leap:15.5"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python3-CairoSVG-2.5.2-bp155.3.3.1.noarch as component of SUSE Package Hub 15 SP5",
"product_id": "SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
},
"product_reference": "python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"relates_to_product_reference": "SUSE Package Hub 15 SP5"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python3-CairoSVG-2.5.2-bp155.3.3.1.noarch as component of openSUSE Leap 15.5",
"product_id": "openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
},
"product_reference": "python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"relates_to_product_reference": "openSUSE Leap 15.5"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2021-21236",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2021-21236"
}
],
"notes": [
{
"category": "general",
"text": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2021-21236",
"url": "https://www.suse.com/security/cve/CVE-2021-21236"
},
{
"category": "external",
"summary": "SUSE Bug 1180648 for CVE-2021-21236",
"url": "https://bugzilla.suse.com/1180648"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 5.5,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
},
"products": [
"SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2023-09-25T12:02:25Z",
"details": "moderate"
}
],
"title": "CVE-2021-21236"
},
{
"cve": "CVE-2023-27586",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2023-27586"
}
],
"notes": [
{
"category": "general",
"text": "CairoSVG is an SVG converter based on Cairo, a 2D graphics library. Prior to version 2.7.0, Cairo can send requests to external hosts when processing SVG files. A malicious actor could send a specially crafted SVG file that allows them to perform a server-side request forgery or denial of service. Version 2.7.0 disables CairoSVG\u0027s ability to access other files online by default.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2023-27586",
"url": "https://www.suse.com/security/cve/CVE-2023-27586"
},
{
"category": "external",
"summary": "SUSE Bug 1209538 for CVE-2023-27586",
"url": "https://bugzilla.suse.com/1209538"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 9.9,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L",
"version": "3.1"
},
"products": [
"SUSE Package Hub 15 SP5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch",
"openSUSE Leap 15.5:python3-CairoSVG-2.5.2-bp155.3.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2023-09-25T12:02:25Z",
"details": "critical"
}
],
"title": "CVE-2023-27586"
}
]
}
OPENSUSE-SU-2023:0272-1
Vulnerability from csaf_opensuse - Published: 2023-09-25 22:02 - Updated: 2023-09-25 22:02| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch | — |
Vendor Fix
|
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "Security update for python-CairoSVG",
"title": "Title of the patch"
},
{
"category": "description",
"text": "This update for python-CairoSVG fixes the following issues:\n\n- CVE-2023-27586: Don\u0027t allow fetching external files unless explicitly asked for. (boo#1209538)\n\n- Update to version 2.5.2\n\n * Fix marker path scale\n\n- Update to version 2.5.1 (boo#1180648, CVE-2021-21236):\n\n * Security fix: When processing SVG files, CairoSVG was using two\n regular expressions which are vulnerable to Regular Expression \n Denial of Service (REDoS). If an attacker provided a malicious \n SVG, it could make CairoSVG get stuck processing the file for a \n very long time.\n\n * Fix marker positions for unclosed paths\n * Follow hint when only output_width or output_height is set\n * Handle opacity on raster images\n * Don\u2019t crash when use tags reference unknown tags\n * Take care of the next letter when A/a is replaced by l\n * Fix misalignment in node.vertices\n\n- Updates for version 2.5.0.\n\n * Drop support of Python 3.5, add support of Python 3.9.\n * Add EPS export\n * Add background-color, negate-colors, and invert-images options\n * Improve support for font weights\n * Fix opacity of patterns and gradients\n * Support auto-start-reverse value for orient\n * Draw images contained in defs\n * Add Exif transposition support\n * Handle dominant-baseline\n * Support transform-origin\n",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-2023-272",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2023_0272-1.json"
},
{
"category": "self",
"summary": "URL for openSUSE-SU-2023:0272-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/74KEOEJKIQ5UHFG7M5KN7X37WT37PVYX/"
},
{
"category": "self",
"summary": "E-Mail link for openSUSE-SU-2023:0272-1",
"url": "https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/74KEOEJKIQ5UHFG7M5KN7X37WT37PVYX/"
},
{
"category": "self",
"summary": "SUSE Bug 1180648",
"url": "https://bugzilla.suse.com/1180648"
},
{
"category": "self",
"summary": "SUSE Bug 1209538",
"url": "https://bugzilla.suse.com/1209538"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2021-21236 page",
"url": "https://www.suse.com/security/cve/CVE-2021-21236/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2023-27586 page",
"url": "https://www.suse.com/security/cve/CVE-2023-27586/"
}
],
"title": "Security update for python-CairoSVG",
"tracking": {
"current_release_date": "2023-09-25T22:02:13Z",
"generator": {
"date": "2023-09-25T22:02:13Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2023:0272-1",
"initial_release_date": "2023-09-25T22:02:13Z",
"revision_history": [
{
"date": "2023-09-25T22:02:13Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"product": {
"name": "python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"product_id": "python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
}
}
],
"category": "architecture",
"name": "noarch"
},
{
"branches": [
{
"category": "product_name",
"name": "SUSE Package Hub 15 SP4",
"product": {
"name": "SUSE Package Hub 15 SP4",
"product_id": "SUSE Package Hub 15 SP4"
}
},
{
"category": "product_name",
"name": "openSUSE Leap 15.4",
"product": {
"name": "openSUSE Leap 15.4",
"product_id": "openSUSE Leap 15.4",
"product_identification_helper": {
"cpe": "cpe:/o:opensuse:leap:15.4"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python3-CairoSVG-2.5.2-bp154.2.3.1.noarch as component of SUSE Package Hub 15 SP4",
"product_id": "SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
},
"product_reference": "python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"relates_to_product_reference": "SUSE Package Hub 15 SP4"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python3-CairoSVG-2.5.2-bp154.2.3.1.noarch as component of openSUSE Leap 15.4",
"product_id": "openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
},
"product_reference": "python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"relates_to_product_reference": "openSUSE Leap 15.4"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2021-21236",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2021-21236"
}
],
"notes": [
{
"category": "general",
"text": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2021-21236",
"url": "https://www.suse.com/security/cve/CVE-2021-21236"
},
{
"category": "external",
"summary": "SUSE Bug 1180648 for CVE-2021-21236",
"url": "https://bugzilla.suse.com/1180648"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 5.5,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
},
"products": [
"SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2023-09-25T22:02:13Z",
"details": "moderate"
}
],
"title": "CVE-2021-21236"
},
{
"cve": "CVE-2023-27586",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2023-27586"
}
],
"notes": [
{
"category": "general",
"text": "CairoSVG is an SVG converter based on Cairo, a 2D graphics library. Prior to version 2.7.0, Cairo can send requests to external hosts when processing SVG files. A malicious actor could send a specially crafted SVG file that allows them to perform a server-side request forgery or denial of service. Version 2.7.0 disables CairoSVG\u0027s ability to access other files online by default.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2023-27586",
"url": "https://www.suse.com/security/cve/CVE-2023-27586"
},
{
"category": "external",
"summary": "SUSE Bug 1209538 for CVE-2023-27586",
"url": "https://bugzilla.suse.com/1209538"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 9.9,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L",
"version": "3.1"
},
"products": [
"SUSE Package Hub 15 SP4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch",
"openSUSE Leap 15.4:python3-CairoSVG-2.5.2-bp154.2.3.1.noarch"
]
}
],
"threats": [
{
"category": "impact",
"date": "2023-09-25T22:02:13Z",
"details": "critical"
}
],
"title": "CVE-2023-27586"
}
]
}
OPENSUSE-SU-2024:13218-1
Vulnerability from csaf_opensuse - Published: 2024-06-15 00:00 - Updated: 2024-06-15 00:00| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64 | — |
Vendor Fix
|
| Product | Identifier | Version | Remediation |
|---|---|---|---|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64 | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x | — |
Vendor Fix
|
|
| Unresolved product id: openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64 | — |
Vendor Fix
|
{
"document": {
"aggregate_severity": {
"namespace": "https://www.suse.com/support/security/rating/",
"text": "moderate"
},
"category": "csaf_security_advisory",
"csaf_version": "2.0",
"distribution": {
"text": "Copyright 2024 SUSE LLC. All rights reserved.",
"tlp": {
"label": "WHITE",
"url": "https://www.first.org/tlp/"
}
},
"lang": "en",
"notes": [
{
"category": "summary",
"text": "python310-CairoSVG-2.7.1-1.1 on GA media",
"title": "Title of the patch"
},
{
"category": "description",
"text": "These are all security issues fixed in the python310-CairoSVG-2.7.1-1.1 package on the GA media of openSUSE Tumbleweed.",
"title": "Description of the patch"
},
{
"category": "details",
"text": "openSUSE-Tumbleweed-2024-13218",
"title": "Patchnames"
},
{
"category": "legal_disclaimer",
"text": "CSAF 2.0 data is provided by SUSE under the Creative Commons License 4.0 with Attribution (CC-BY-4.0).",
"title": "Terms of use"
}
],
"publisher": {
"category": "vendor",
"contact_details": "https://www.suse.com/support/security/contact/",
"name": "SUSE Product Security Team",
"namespace": "https://www.suse.com/"
},
"references": [
{
"category": "external",
"summary": "SUSE ratings",
"url": "https://www.suse.com/support/security/rating/"
},
{
"category": "self",
"summary": "URL of this CSAF notice",
"url": "https://ftp.suse.com/pub/projects/security/csaf/opensuse-su-2024_13218-1.json"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2021-21236 page",
"url": "https://www.suse.com/security/cve/CVE-2021-21236/"
},
{
"category": "self",
"summary": "SUSE CVE CVE-2023-27586 page",
"url": "https://www.suse.com/security/cve/CVE-2023-27586/"
}
],
"title": "python310-CairoSVG-2.7.1-1.1 on GA media",
"tracking": {
"current_release_date": "2024-06-15T00:00:00Z",
"generator": {
"date": "2024-06-15T00:00:00Z",
"engine": {
"name": "cve-database.git:bin/generate-csaf.pl",
"version": "1"
}
},
"id": "openSUSE-SU-2024:13218-1",
"initial_release_date": "2024-06-15T00:00:00Z",
"revision_history": [
{
"date": "2024-06-15T00:00:00Z",
"number": "1",
"summary": "Current version"
}
],
"status": "final",
"version": "1"
}
},
"product_tree": {
"branches": [
{
"branches": [
{
"branches": [
{
"category": "product_version",
"name": "python310-CairoSVG-2.7.1-1.1.aarch64",
"product": {
"name": "python310-CairoSVG-2.7.1-1.1.aarch64",
"product_id": "python310-CairoSVG-2.7.1-1.1.aarch64"
}
},
{
"category": "product_version",
"name": "python311-CairoSVG-2.7.1-1.1.aarch64",
"product": {
"name": "python311-CairoSVG-2.7.1-1.1.aarch64",
"product_id": "python311-CairoSVG-2.7.1-1.1.aarch64"
}
},
{
"category": "product_version",
"name": "python39-CairoSVG-2.7.1-1.1.aarch64",
"product": {
"name": "python39-CairoSVG-2.7.1-1.1.aarch64",
"product_id": "python39-CairoSVG-2.7.1-1.1.aarch64"
}
}
],
"category": "architecture",
"name": "aarch64"
},
{
"branches": [
{
"category": "product_version",
"name": "python310-CairoSVG-2.7.1-1.1.ppc64le",
"product": {
"name": "python310-CairoSVG-2.7.1-1.1.ppc64le",
"product_id": "python310-CairoSVG-2.7.1-1.1.ppc64le"
}
},
{
"category": "product_version",
"name": "python311-CairoSVG-2.7.1-1.1.ppc64le",
"product": {
"name": "python311-CairoSVG-2.7.1-1.1.ppc64le",
"product_id": "python311-CairoSVG-2.7.1-1.1.ppc64le"
}
},
{
"category": "product_version",
"name": "python39-CairoSVG-2.7.1-1.1.ppc64le",
"product": {
"name": "python39-CairoSVG-2.7.1-1.1.ppc64le",
"product_id": "python39-CairoSVG-2.7.1-1.1.ppc64le"
}
}
],
"category": "architecture",
"name": "ppc64le"
},
{
"branches": [
{
"category": "product_version",
"name": "python310-CairoSVG-2.7.1-1.1.s390x",
"product": {
"name": "python310-CairoSVG-2.7.1-1.1.s390x",
"product_id": "python310-CairoSVG-2.7.1-1.1.s390x"
}
},
{
"category": "product_version",
"name": "python311-CairoSVG-2.7.1-1.1.s390x",
"product": {
"name": "python311-CairoSVG-2.7.1-1.1.s390x",
"product_id": "python311-CairoSVG-2.7.1-1.1.s390x"
}
},
{
"category": "product_version",
"name": "python39-CairoSVG-2.7.1-1.1.s390x",
"product": {
"name": "python39-CairoSVG-2.7.1-1.1.s390x",
"product_id": "python39-CairoSVG-2.7.1-1.1.s390x"
}
}
],
"category": "architecture",
"name": "s390x"
},
{
"branches": [
{
"category": "product_version",
"name": "python310-CairoSVG-2.7.1-1.1.x86_64",
"product": {
"name": "python310-CairoSVG-2.7.1-1.1.x86_64",
"product_id": "python310-CairoSVG-2.7.1-1.1.x86_64"
}
},
{
"category": "product_version",
"name": "python311-CairoSVG-2.7.1-1.1.x86_64",
"product": {
"name": "python311-CairoSVG-2.7.1-1.1.x86_64",
"product_id": "python311-CairoSVG-2.7.1-1.1.x86_64"
}
},
{
"category": "product_version",
"name": "python39-CairoSVG-2.7.1-1.1.x86_64",
"product": {
"name": "python39-CairoSVG-2.7.1-1.1.x86_64",
"product_id": "python39-CairoSVG-2.7.1-1.1.x86_64"
}
}
],
"category": "architecture",
"name": "x86_64"
},
{
"branches": [
{
"category": "product_name",
"name": "openSUSE Tumbleweed",
"product": {
"name": "openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed",
"product_identification_helper": {
"cpe": "cpe:/o:opensuse:tumbleweed"
}
}
}
],
"category": "product_family",
"name": "SUSE Linux Enterprise"
}
],
"category": "vendor",
"name": "SUSE"
}
],
"relationships": [
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-CairoSVG-2.7.1-1.1.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64"
},
"product_reference": "python310-CairoSVG-2.7.1-1.1.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-CairoSVG-2.7.1-1.1.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le"
},
"product_reference": "python310-CairoSVG-2.7.1-1.1.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-CairoSVG-2.7.1-1.1.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x"
},
"product_reference": "python310-CairoSVG-2.7.1-1.1.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python310-CairoSVG-2.7.1-1.1.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64"
},
"product_reference": "python310-CairoSVG-2.7.1-1.1.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-CairoSVG-2.7.1-1.1.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64"
},
"product_reference": "python311-CairoSVG-2.7.1-1.1.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-CairoSVG-2.7.1-1.1.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le"
},
"product_reference": "python311-CairoSVG-2.7.1-1.1.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-CairoSVG-2.7.1-1.1.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x"
},
"product_reference": "python311-CairoSVG-2.7.1-1.1.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python311-CairoSVG-2.7.1-1.1.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64"
},
"product_reference": "python311-CairoSVG-2.7.1-1.1.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-CairoSVG-2.7.1-1.1.aarch64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64"
},
"product_reference": "python39-CairoSVG-2.7.1-1.1.aarch64",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-CairoSVG-2.7.1-1.1.ppc64le as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le"
},
"product_reference": "python39-CairoSVG-2.7.1-1.1.ppc64le",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-CairoSVG-2.7.1-1.1.s390x as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x"
},
"product_reference": "python39-CairoSVG-2.7.1-1.1.s390x",
"relates_to_product_reference": "openSUSE Tumbleweed"
},
{
"category": "default_component_of",
"full_product_name": {
"name": "python39-CairoSVG-2.7.1-1.1.x86_64 as component of openSUSE Tumbleweed",
"product_id": "openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64"
},
"product_reference": "python39-CairoSVG-2.7.1-1.1.x86_64",
"relates_to_product_reference": "openSUSE Tumbleweed"
}
]
},
"vulnerabilities": [
{
"cve": "CVE-2021-21236",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2021-21236"
}
],
"notes": [
{
"category": "general",
"text": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2021-21236",
"url": "https://www.suse.com/security/cve/CVE-2021-21236"
},
{
"category": "external",
"summary": "SUSE Bug 1180648 for CVE-2021-21236",
"url": "https://bugzilla.suse.com/1180648"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 5.5,
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H",
"version": "3.1"
},
"products": [
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2024-06-15T00:00:00Z",
"details": "moderate"
}
],
"title": "CVE-2021-21236"
},
{
"cve": "CVE-2023-27586",
"ids": [
{
"system_name": "SUSE CVE Page",
"text": "https://www.suse.com/security/cve/CVE-2023-27586"
}
],
"notes": [
{
"category": "general",
"text": "CairoSVG is an SVG converter based on Cairo, a 2D graphics library. Prior to version 2.7.0, Cairo can send requests to external hosts when processing SVG files. A malicious actor could send a specially crafted SVG file that allows them to perform a server-side request forgery or denial of service. Version 2.7.0 disables CairoSVG\u0027s ability to access other files online by default.",
"title": "CVE description"
}
],
"product_status": {
"recommended": [
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64"
]
},
"references": [
{
"category": "external",
"summary": "CVE-2023-27586",
"url": "https://www.suse.com/security/cve/CVE-2023-27586"
},
{
"category": "external",
"summary": "SUSE Bug 1209538 for CVE-2023-27586",
"url": "https://bugzilla.suse.com/1209538"
}
],
"remediations": [
{
"category": "vendor_fix",
"details": "To install this SUSE Security Update use the SUSE recommended installation methods like YaST online_update or \"zypper patch\".\n",
"product_ids": [
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64"
]
}
],
"scores": [
{
"cvss_v3": {
"baseScore": 9.9,
"baseSeverity": "CRITICAL",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:H/A:L",
"version": "3.1"
},
"products": [
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python310-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python311-CairoSVG-2.7.1-1.1.x86_64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.aarch64",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.ppc64le",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.s390x",
"openSUSE Tumbleweed:python39-CairoSVG-2.7.1-1.1.x86_64"
]
}
],
"threats": [
{
"category": "impact",
"date": "2024-06-15T00:00:00Z",
"details": "critical"
}
],
"title": "CVE-2023-27586"
}
]
}
PYSEC-2021-5
Vulnerability from pysec - Published: 2021-01-06 17:15 - Updated: 2021-01-13 15:43CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.
| Name | purl | cairosvg | pkg:pypi/cairosvg |
|---|
{
"affected": [
{
"package": {
"ecosystem": "PyPI",
"name": "cairosvg",
"purl": "pkg:pypi/cairosvg"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "cfc9175e590531d90384aa88845052de53d94bf3"
}
],
"repo": "https://github.com/Kozea/CairoSVG",
"type": "GIT"
},
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.5.1"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"0.1",
"0.1.1",
"0.1.2",
"0.2",
"0.3",
"0.3.1",
"0.4",
"0.4.1",
"0.4.2",
"0.4.3",
"0.4.4",
"0.5",
"1.0",
"1.0.1",
"1.0.2",
"1.0.3",
"1.0.4",
"1.0.5",
"1.0.6",
"1.0.7",
"1.0.8",
"1.0.9",
"1.0.10",
"1.0.11",
"1.0.12",
"1.0.13",
"1.0.14",
"1.0.15",
"1.0.16",
"1.0.17",
"1.0.18",
"1.0.19",
"1.0.20",
"1.0.21",
"1.0.22",
"2.0.0rc1",
"2.0.0rc2",
"2.0.0rc3",
"2.0.0rc4",
"2.0.0rc5",
"2.0.0rc6",
"2.0.0",
"2.0.1",
"2.0.2",
"2.0.3",
"2.1.0",
"2.1.1",
"2.1.2",
"2.1.3",
"2.2.0",
"2.2.1",
"2.3.0",
"2.3.1",
"2.4.0",
"2.4.1",
"2.4.2",
"2.5.0"
]
}
],
"aliases": [
"CVE-2021-21236",
"GHSA-hq37-853p-g5cf"
],
"details": "CairoSVG is a Python (pypi) package. CairoSVG is an SVG converter based on Cairo. In CairoSVG before version 2.5.1, there is a regular expression denial of service (REDoS) vulnerability. When processing SVG files, the python package CairoSVG uses two regular expressions which are vulnerable to Regular Expression Denial of Service (REDoS). If an attacker provides a malicious SVG, it can make cairosvg get stuck processing the file for a very long time. This is fixed in version 2.5.1. See Referenced GitHub advisory for more information.",
"id": "PYSEC-2021-5",
"modified": "2021-01-13T15:43:00Z",
"published": "2021-01-06T17:15:00Z",
"references": [
{
"type": "FIX",
"url": "https://github.com/Kozea/CairoSVG/commit/cfc9175e590531d90384aa88845052de53d94bf3"
},
{
"type": "ADVISORY",
"url": "https://github.com/Kozea/CairoSVG/security/advisories/GHSA-hq37-853p-g5cf"
},
{
"type": "PACKAGE",
"url": "https://pypi.org/project/CairoSVG/"
},
{
"type": "WEB",
"url": "https://github.com/Kozea/CairoSVG/releases/tag/2.5.1"
}
]
}
Sightings
| Author | Source | Type | Date | Other |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.