<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Praisonai (Npm Package) (&gt;= 1.6.0, &lt;= 1.7.1) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/praisonai-npm-package--1.6.0--1.7.1/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Thu, 18 Jun 2026 14:48:13 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/praisonai-npm-package--1.6.0--1.7.1/feed.xml" rel="self" type="application/rss+xml"/><item><title>npm PraisonAI AgentOS Unauthenticated API Exposure</title><link>https://feed.craftedsignal.io/briefs/2026-06-npm-praisonai-unauthenticated-api/</link><pubDate>Thu, 18 Jun 2026 14:48:13 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-06-npm-praisonai-unauthenticated-api/</guid><description>The npm `praisonai` package's TypeScript `AgentOS` HTTP server defaults to `0.0.0.0` and exposes unauthenticated API endpoints (`/api/agents`, `/api/chat`), allowing attackers to disclose agent configurations and invoke agents without authorization, leading to potential data exfiltration, unauthorized actions, and resource consumption.</description><content:encoded><![CDATA[<p>The npm <code>praisonai</code> package, specifically versions <code>&gt;= 1.6.0</code> through <code>1.7.1</code>, contains a critical vulnerability in its TypeScript <code>AgentOS</code> HTTP server component. This server defaults to binding on <code>0.0.0.0</code> (all network interfaces) and fails to implement any authentication or authorization checks for sensitive API endpoints. Attackers who can reach a running <code>AgentOS</code> instance can unauthenticatedly enumerate agent names, roles, and partial instructions via <code>GET /api/agents</code>, and crucially, can invoke configured agents via <code>POST /api/chat</code>. This directly contradicts PraisonAI's own security documentation regarding hardened API servers and exposes organizations using the affected versions to significant risks, including unauthorized data access, manipulation of systems through agent actions, and resource exhaustion.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker identifies an internet-facing host running the <code>praisonai</code> <code>AgentOS</code> server (e.g., on default port 8000), which is listening on <code>0.0.0.0</code>.</li>
<li>Attacker sends an unauthenticated <code>GET</code> request to <code>/api/agents</code> (or a configured <code>apiPrefix</code>) to enumerate active agent names, roles, and up to 100 characters of their instructions.</li>
<li>The <code>AgentOS</code> server responds with sensitive metadata, such as an agent named &quot;finance-admin&quot; with instructions like &quot;poc SECRET: refund-wire-tool may alter customer balances&quot;.</li>
<li>Attacker crafts a malicious prompt or command based on the disclosed agent information and observed functionality.</li>
<li>Attacker sends an unauthenticated <code>POST</code> request to <code>/api/chat</code> (or <code>apiPrefix/chat</code>), containing the malicious input targeted at a selected agent.</li>
<li>The <code>AgentOS</code> server invokes the target agent's <code>chat</code> function with the attacker's input, triggering unauthorized actions within the agent's configured environment.</li>
<li>Depending on the agent's capabilities (e.g., access to tools, external APIs, credentials, file system), this leads to data exfiltration, system modification, or resource consumption.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>An attacker successfully exploiting this vulnerability can cause severe damage. The primary impact is unauthorized access and control over configured PraisonAI agents. This can lead to the compromise of sensitive data through <code>GET /api/agents</code> revealing internal workflows and specific instructions, or more critically, through <code>POST /api/chat</code> by inducing agents to exfiltrate data, interact with internal systems, or manipulate workflows. While the report does not claim arbitrary code execution by default, if agents are configured with access to tools (e.g., file system, shell execution, external APIs with credentials), unauthenticated invocation effectively becomes an entry point for those powerful capabilities, leading to potential complete system compromise or data destruction. All organizations deploying <code>praisonai</code> npm package versions <code>&gt;= 1.6.0, &lt;= 1.7.1</code> in an exposed manner are at risk.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Deploy the Sigma rules in this brief to your SIEM for webserver logs to detect unauthenticated access attempts to <code>/api/agents</code> and <code>/api/chat</code>.</li>
<li>Ensure your network perimeter blocks unsolicited inbound connections to <code>praisonai AgentOS</code> instances running on <code>0.0.0.0</code> and default ports (e.g., 8000) from untrusted networks.</li>
<li>Prioritize updating the <code>praisonai</code> npm package to a fixed version once released; if an immediate patch is unavailable, implement custom authentication middleware for affected <code>AgentOS</code> instances.</li>
<li>Monitor web server logs for <code>GET</code> requests to <code>/api/agents</code> and <code>POST</code> requests to <code>/api/chat</code> originating from unexpected source IPs or without expected authentication headers, as detected by the rules.</li>
</ul>
]]></content:encoded><category domain="severity">critical</category><category domain="type">advisory</category><category>api-abuse</category><category>unauthenticated-access</category><category>information-disclosure</category><category>server-side-request-forgery</category><category>web</category><category>node.js</category><category>npm</category></item></channel></rss>