<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-09-28T10:46:31.368291+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/brew-jiratui-cve-2026-76098</id>
    <title>BREW-jiratui-CVE-2026-76098 — Mistune: Denial of Service — RecursionError via Excessive Emphasis Markers in Markdown</title>
    <updated>2026-09-28T10:46:31.424765+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> Homebrew: jiratui</p>
<p>## Summary
Mistune v3.3.2 is vulnerable to a Denial of Service (DoS) attack via uncontrolled recursion in the HTML rendering of deeply-nested emphasis tokens. By submitting Markdown containing approximately 1,000 consecutive asterisk characters, an attacker causes the Python process to crash with RecursionError.</p>
<p>## Details
The InlineParser's _process_emphasis_delimiters() creates deeply nested &lt;strong&gt; tokens from consecutive emphasis markers (every 2 asterisks add one nesting level). With 1,000 consecutive asterisks, approximately 500 levels of nesting are produced. The HTMLRenderer.render_token() method (src/mistune/renderers/html.py:40-57) renders these tokens recursively: when a token has children, line 48 calls self.render_tokens(token['children'], state), entering child rendering. Each nesting level produces ~2 stack frames, so 500 levels ≈ 1,000 frames, exceeding Python's default recursion limit (sys.getrecursionlimit() = 1000). The emphasis() and strong() methods (lines 80-84) wrap recursively rendered child content in &lt;em&gt; and &lt;strong&gt; tags, perpetuating the recursion. This vulnerability affects all mistune APIs including markdown() and html().</p>
<p>Core vulnerable code path:</p>
<p>```python
# src/mistune/renderers/html.py:40-57
def render_token(self, token: Dict[str, Any], state: BlockState) -&gt; str:
    func = self._get_method(token["type"])
    attrs = token.get("attrs")
    if "raw" in token:
        text = token["raw"]
    elif "children" in token:
        text = self.r…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/brew-jiratui-cve-2026-76098"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/cve-2026-76098</id>
    <title>CVE-2026-76098 — Mistune has Denial of Service — RecursionError via Excessive Emphasis Markers in Markdown</title>
    <updated>2026-09-28T10:46:31.424929+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> lepture mistune</p>
<p>Mistune is a Python Markdown parser with renderers and plugins. Versions 3.3.0 through 3.3.2 are vulnerable to DoS through deeply nested tokens. HTML rendering creates deeply nested emphasis tokens from consecutive asterisk characters, and recursive rendering in HTMLRenderer.render_token() can exceed Python's recursion limit and raise RecursionError, allowing crafted Markdown to crash a parsing process. This issue is fixed in version 3.3.3</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/cve-2026-76098"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-6m44-fpc8-c3rq</id>
    <title>GHSA-6m44-fpc8-c3rq — Mistune: Denial of Service — RecursionError via Excessive Emphasis Markers in Markdown</title>
    <updated>2026-09-28T10:46:31.424992+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> PyPI: mistune</p>
<p>## Summary
Mistune v3.3.2 is vulnerable to a Denial of Service (DoS) attack via uncontrolled recursion in the HTML rendering of deeply-nested emphasis tokens. By submitting Markdown containing approximately 1,000 consecutive asterisk characters, an attacker causes the Python process to crash with RecursionError.</p>
<p>## Details
The InlineParser's _process_emphasis_delimiters() creates deeply nested &lt;strong&gt; tokens from consecutive emphasis markers (every 2 asterisks add one nesting level). With 1,000 consecutive asterisks, approximately 500 levels of nesting are produced. The HTMLRenderer.render_token() method (src/mistune/renderers/html.py:40-57) renders these tokens recursively: when a token has children, line 48 calls self.render_tokens(token['children'], state), entering child rendering. Each nesting level produces ~2 stack frames, so 500 levels ≈ 1,000 frames, exceeding Python's default recursion limit (sys.getrecursionlimit() = 1000). The emphasis() and strong() methods (lines 80-84) wrap recursively rendered child content in &lt;em&gt; and &lt;strong&gt; tags, perpetuating the recursion. This vulnerability affects all mistune APIs including markdown() and html().</p>
<p>Core vulnerable code path:</p>
<p>```python
# src/mistune/renderers/html.py:40-57
def render_token(self, token: Dict[str, Any], state: BlockState) -&gt; str:
    func = self._get_method(token["type"])
    attrs = token.get("attrs")
    if "raw" in token:
        text = token["raw"]
    elif "children" in token:
        text = self.r…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-6m44-fpc8-c3rq"/>
  </entry>
</feed>
