<?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://vulnerability.circl.lu</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, 01 Oct 2026 20:35:53 +0000</lastBuildDate>
    <item>
      <title>CVE-2026-55528 — praisonaiagents: AgentServer declares auth_token but never enforces it on any route (CWE-862)</title>
      <link>https://vulnerability.circl.lu/vuln/cve-2026-55528</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; MervinPraison PraisonAI, MervinPraison praisonaiagents&lt;/p&gt;
&lt;p&gt;PraisonAI is a multi-agent teams system. Prior to praisonaiagents 1.6.58, AgentServer exposes ServerConfig.auth_token but AgentServer._create_app does not check it on any route. A remote caller can subscribe, publish, and perform other actions without a valid bearer token or X-Auth-Token even when authentication is configured. This issue is fixed in version 1.6.58.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; MervinPraison PraisonAI, MervinPraison praisonaiagents&lt;/p&gt;
&lt;p&gt;PraisonAI is a multi-agent teams system. Prior to praisonaiagents 1.6.58, AgentServer exposes ServerConfig.auth_token but AgentServer._create_app does not check it on any route. A remote caller can subscribe, publish, and perform other actions without a valid bearer token or X-Auth-Token even when authentication is configured. This issue is fixed in version 1.6.58.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/cve-2026-55528</guid>
    </item>
    <item>
      <title>PYSEC-2026-3899 — praisonaiagents: AgentServer declares auth_token but never enforces it on any route</title>
      <link>https://vulnerability.circl.lu/vuln/pysec-2026-3899</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: praisonaiagents&lt;/p&gt;
&lt;p&gt;**Researcher:** Kai Aizen — SnailSploit (@SnailSploit), Adversarial &amp;amp; Offensive Security Research
**Target:** https://github.com/MervinPraison/PraisonAI&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;p&gt;**Package:** `praisonaiagents` on PyPI
**Affected version (empirically tested):** 1.6.48
**Component:** `praisonaiagents.server.AgentServer` (the bundled HTTP / SSE server)&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;p&gt;## TL;DR&lt;/p&gt;
&lt;p&gt;`AgentServer.ServerConfig` advertises an `auth_token: Optional[str] = None` field that operators set when they want to lock down the server. The `GET /info` endpoint even displays it back as `&amp;#34;auth_token&amp;#34;: &amp;#34;***&amp;#34;` — strongly implying the value is wired into request authentication.&lt;/p&gt;
&lt;p&gt;It isn&amp;#39;t. `AgentServer._create_app` never reads `auth_token`, never adds an authentication middleware, and never decorates any route with a dependency that checks it. Every route — `/info`, `/publish`, `/events`, `/health` — accepts unauthenticated requests regardless of whether `auth_token` is configured.&lt;/p&gt;
&lt;p&gt;The same package contains a *sibling* server, `praisonaiagents.ui.a2a.A2A`, written by the same developer, which implements the bearer-token pattern correctly via FastAPI&amp;#39;s `Depends(_verify_auth)`. This rules out the &amp;#34;auth is not yet implemented; operators are expected to add it&amp;#34; reading: the developer knew the pattern but did not apply it to `AgentServer`.&lt;/p&gt;
&lt;p&gt;## Root cause&lt;/p&gt;
&lt;p&gt;```
   Expected behavior when setting ServerConfig(auth_token=&amp;#34;…&amp;#34;):
     &amp;#34;Only requests with a matching Authorization header will be
      accepted on /publish, /events, /info.&amp;#34;&lt;/p&gt;
&lt;p&gt;Ac…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; PyPI: praisonaiagents&lt;/p&gt;
&lt;p&gt;**Researcher:** Kai Aizen — SnailSploit (@SnailSploit), Adversarial &amp;amp; Offensive Security Research
**Target:** https://github.com/MervinPraison/PraisonAI&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;p&gt;**Package:** `praisonaiagents` on PyPI
**Affected version (empirically tested):** 1.6.48
**Component:** `praisonaiagents.server.AgentServer` (the bundled HTTP / SSE server)&lt;/p&gt;
&lt;p&gt;---&lt;/p&gt;
&lt;p&gt;## TL;DR&lt;/p&gt;
&lt;p&gt;`AgentServer.ServerConfig` advertises an `auth_token: Optional[str] = None` field that operators set when they want to lock down the server. The `GET /info` endpoint even displays it back as `&amp;#34;auth_token&amp;#34;: &amp;#34;***&amp;#34;` — strongly implying the value is wired into request authentication.&lt;/p&gt;
&lt;p&gt;It isn&amp;#39;t. `AgentServer._create_app` never reads `auth_token`, never adds an authentication middleware, and never decorates any route with a dependency that checks it. Every route — `/info`, `/publish`, `/events`, `/health` — accepts unauthenticated requests regardless of whether `auth_token` is configured.&lt;/p&gt;
&lt;p&gt;The same package contains a *sibling* server, `praisonaiagents.ui.a2a.A2A`, written by the same developer, which implements the bearer-token pattern correctly via FastAPI&amp;#39;s `Depends(_verify_auth)`. This rules out the &amp;#34;auth is not yet implemented; operators are expected to add it&amp;#34; reading: the developer knew the pattern but did not apply it to `AgentServer`.&lt;/p&gt;
&lt;p&gt;## Root cause&lt;/p&gt;
&lt;p&gt;```
   Expected behavior when setting ServerConfig(auth_token=&amp;#34;…&amp;#34;):
     &amp;#34;Only requests with a matching Authorization header will be
      accepted on /publish, /events, /info.&amp;#34;&lt;/p&gt;
&lt;p&gt;Ac…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/pysec-2026-3899</guid>
    </item>
  </channel>
</rss>
