<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://cve.radiocsirt.org</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Thu, 08 Oct 2026 00:05:26 +0000</lastBuildDate>
    <item>
      <title>CVE-2025-58446 — xgrammar vulnerable to denial of service by huge enum grammar</title>
      <link>https://cve.radiocsirt.org/vuln/cve-2025-58446</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; mlc-ai xgrammar&lt;/p&gt;
&lt;p&gt;xgrammar is an open-source library for efficient, flexible, and portable structured generation. A grammar optimizer introduced in 0.1.23 processes large grammars (&amp;gt;100k characters) at very low rates, and can be used for DOS of model providers. This issue is fixed in version 0.1.24.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; mlc-ai xgrammar&lt;/p&gt;
&lt;p&gt;xgrammar is an open-source library for efficient, flexible, and portable structured generation. A grammar optimizer introduced in 0.1.23 processes large grammars (&amp;gt;100k characters) at very low rates, and can be used for DOS of model providers. This issue is fixed in version 0.1.24.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/cve-2025-58446</guid>
    </item>
    <item>
      <title>GHSA-9q5r-wfvf-rr7f — xgrammar vulnerable to denial of service by huge enum grammar</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-9q5r-wfvf-rr7f</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: xgrammar&lt;/p&gt;
&lt;p&gt;### Summary
Provided grammar, would fit in a context window of most of the models, but takes minutes to process in 0.1.23. In testing with 0.1.16 the parser worked fine so this seems to be a regression caused by Earley parser.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;Full reproducer provider in the POC section. The resulting grammar is around 70k tokens, and the grammar parsing itself (with the models I checked) was significantly longer than LLM processing itself, meaning this can be used to DOS model providers.&lt;/p&gt;
&lt;p&gt;### Patch&lt;/p&gt;
&lt;p&gt;This problem is caused by the grammar optimizer introduced in v0.1.23 being too slow. It only happens for very large grammars (&amp;gt;100k characters), like the below one. v0.1.24 solved this problem by optimizing the speed of the grammar optimizer and disable some slow optimization for large grammars.&lt;/p&gt;
&lt;p&gt;Thanks to @Seven-Streams&lt;/p&gt;
&lt;p&gt;### PoC
```
import string
import random&lt;/p&gt;
&lt;p&gt;def enum_schema(size=10000,str_len=10):
    enum =  {&amp;#34;enum&amp;#34;: [&amp;#34;&amp;#34;.join(random.choices(string.ascii_uppercase, k=str_len)) for _ in range(size)]}
    schema = {
        &amp;#34;definitions&amp;#34;: {
            &amp;#34;colorEnum&amp;#34;: enum
        },
        &amp;#34;type&amp;#34;: &amp;#34;object&amp;#34;,
        &amp;#34;properties&amp;#34;: {
            &amp;#34;color1&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;
            },
            &amp;#34;color2&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;
            },
            &amp;#34;color3&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;
            },
            &amp;#34;color4&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: xgrammar&lt;/p&gt;
&lt;p&gt;### Summary
Provided grammar, would fit in a context window of most of the models, but takes minutes to process in 0.1.23. In testing with 0.1.16 the parser worked fine so this seems to be a regression caused by Earley parser.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;Full reproducer provider in the POC section. The resulting grammar is around 70k tokens, and the grammar parsing itself (with the models I checked) was significantly longer than LLM processing itself, meaning this can be used to DOS model providers.&lt;/p&gt;
&lt;p&gt;### Patch&lt;/p&gt;
&lt;p&gt;This problem is caused by the grammar optimizer introduced in v0.1.23 being too slow. It only happens for very large grammars (&amp;gt;100k characters), like the below one. v0.1.24 solved this problem by optimizing the speed of the grammar optimizer and disable some slow optimization for large grammars.&lt;/p&gt;
&lt;p&gt;Thanks to @Seven-Streams&lt;/p&gt;
&lt;p&gt;### PoC
```
import string
import random&lt;/p&gt;
&lt;p&gt;def enum_schema(size=10000,str_len=10):
    enum =  {&amp;#34;enum&amp;#34;: [&amp;#34;&amp;#34;.join(random.choices(string.ascii_uppercase, k=str_len)) for _ in range(size)]}
    schema = {
        &amp;#34;definitions&amp;#34;: {
            &amp;#34;colorEnum&amp;#34;: enum
        },
        &amp;#34;type&amp;#34;: &amp;#34;object&amp;#34;,
        &amp;#34;properties&amp;#34;: {
            &amp;#34;color1&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;
            },
            &amp;#34;color2&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;
            },
            &amp;#34;color3&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;
            },
            &amp;#34;color4&amp;#34;: {
                &amp;#34;$ref&amp;#34;: &amp;#34;#/definitions/colorEnum&amp;#34;…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-9q5r-wfvf-rr7f</guid>
    </item>
  </channel>
</rss>
