Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessDiscover AgentOS exposed on 0.0.0.0
-
DeliveryEnumerate agents via GET /api/agents
-
ExploitSend unauthenticated POST /api/chat
-
ExecutionAgent executes tools and reads context
-
ImpactExfiltrate private data or exhaust model budget
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK
2 techniques across 2 tactics: Collection, Discovery The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that an operator actually run AgentOS or the AgentApp alias and expose it on a network-reachable interface - which the default configuration encourages, since AgentOSConfig/AgentAppConfig default host to 0.0.0.0 (all interfaces) with no authentication fields. No special feature flag, user interaction, or credentials are needed: both no-auth and wrong-bearer requests to GET /api/agents and POST /api/chat succeed against the default configuration (PR:N, unauthenticated). The main factors that LIMIT real-world impact are: (1) the endpoint must be reachable (an instance kept on loopback or behind an authenticating proxy is not exposed), and (2) the severity of what the attacker can achieve scales with the deployed agents' capabilities - agents wired to tools, private context, memory, external API integrations, browser actions, or paid model calls enable data exfiltration, side effects, and budget exhaustion, whereas a minimal no-tool agent yields mainly metadata disclosure and invocation. |
| Impact | This is a genuine high-priority issue, not a CVSS-inflated paper risk. The vendor CVSS vector (AV:N/AC:L/PR:N/UI:N) is internally consistent with the advisory's mechanism: AgentOS/AgentApp registers GET /api/agents and POST /api/chat with no middleware, dependency, API-key, or bearer check, and defaults its bind host to 0.0.0.0, so a network-reachable, unauthenticated client can both enumerate agents and invoke agent.chat(). The vuln.today Decision label is act_now, which - combined with an incomplete-fix situation where the previously 'patched' v4.5.128 and the latest release v4.6.57 both still reproduce - raises urgency: operators who believed they were fixed by GHSA-pm96-6xpr-978x / CVE-2026-40151 are not. The main tempering factors are deployment-dependent: the advisory itself states the real impact scales with what the deployed agents are wired to (tools, private context, memory, API integrations, cost-bearing model calls); a bare no-tool demo agent would warrant a lower score, as the reporter acknowledges. Signals that are MISSING rather than conflicting: no EPSS score was provided (exploitation-probability cannot be weighed), and there is no CISA KEV listing, so there is no evidence of active exploitation - only a demonstrated, reproducible flaw. The confidentiality-focused CWE-200 tag understates the issue; the advisory assigns CWE-306 (missing authentication) and CWE-862 (missing authorization), reflecting unauthorized agent invocation beyond passive metadata disclosure. |
| Exploit ScenarioDerived | An operator deploys a PraisonAI AgentOS/AgentApp instance that, by default, binds to 0.0.0.0 with no authentication, exposing it on a reachable interface. An unauthenticated attacker calls GET /api/agents to enumerate agent names, roles, and instruction snippets, then issues POST /api/chat requests (with no Authorization header, or an arbitrary wrong bearer token, both of which succeed) to drive the agent - triggering its attached tools, memory reads, and API integrations. A public PoC reference exists: the GHSA advisory includes a local in-process FastAPI TestClient reproducer and a version sweep, though it is not verified as a working remote network exploit. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 23, 2026
Unauthenticated remote clients can enumerate the agents deployed on PraisonAI's AgentOS FastAPI surface and invoke them directly, because GET /api/agents and POST /api/chat are registered with no authentication and AgentOSConfig defaults the bind host to 0.0.0.0. This is an incomplete-fix exposure: the previously published patch for GHSA-pm96-6xpr-978x / CVE-2026-40151 (4.5.128) still accepts both no-credential and wrong-bearer requests, as do releases through 4.6.57 and current main, with the advisory's reproducer showing the chat route executing agent.chat() as an observable side effect. PraisonAI 4.6.59 is the version that closes the gap, and the issue is rated act_now because the default configuration puts an agent-control endpoint in reach of any network client, with consequences scaling to whatever tools, memory, private context, API integrations or paid model calls the deployed agents have. A public PoC reference exists in the advisory but is not verified as working exploit code, and no confirmed active exploitation is indicated in the available intelligence.
RemediationAI
Upgrade to praisonai 4.6.59, the first release that adds authentication fields to AgentOSConfig/AgentAppConfig, enables auth by default, defaults the bind host to 127.0.0.1, rejects no-auth and wrong-bearer requests on GET /api/agents and POST /api/chat, and fails closed on non-loopback binds unless auth is configured or an explicit unsafe development opt-out is set - details in https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-892r-p3jq-jp24. Do not treat 4.5.128 as a fix: that version is the published patch for CVE-2026-40151 and still serves unauthenticated agent invocation, so any deployment pinned there or on any release up to 4.6.57 must be moved. Where upgrading immediately is not possible, the exposure can be contained at deployment level, with the trade-off that the framework default remains unsafe if the wrapper is later removed: bind AgentOSConfig host to 127.0.0.1 instead of the 0.0.0.0 default, which limits access to local clients and breaks legitimate remote consumers; or place the service behind a proxy that enforces authentication and network access control for the /api and /api/chat paths, which only holds if every path, including GET /api/agents with its instruction snippets, is covered by the proxy rule and if direct access to the container port is blocked. Agents wired to tools, private context, memory, API integrations or cost-bearing model calls should be treated as already reachable until one of these controls is verified, since running the service on a reachable interface with the defaults is exactly the precondition for exploitation.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The affected component is the AgentOS deployment layer in the praisonai Python package (src/praisonai/praisonai/app/agentos.py, with configuration in src/praisonai-agents/praisonaiagents/app/config.py), a FastAPI application that wraps praisonaiagents agents behind a REST API. AgentOSConfig/AgentAppConfig declares name, host (default '0.0.0.0'), port and api_prefix with no authentication fields at all, and AgentOS._register_routes() attaches the metadata route GET /api/agents and the chat route POST /api/chat without middleware, dependency injection, API-key check, bearer-token check or fail-closed startup guard. The chat handler passes request.message straight into agent.chat(), so a request that carries no Authorization header and an identical request carrying a deliberately wrong bearer token both reach the same execution path - the route simply never inspects the header. The GHSA classifies this as CWE-200 (exposure of agent names, roles and instruction snippets through the metadata route) together with CWE-306 (missing authentication for a critical function) and CWE-862 (missing authorization) for the invocation path; our assessed vector is AV:N/AC:L/PR:N/UI:N with C:H/I:H/A:L, i.e. high confidentiality and integrity impact that depends on what the deployed agents can reach, and availability impact limited to abuse of downstream services such as model budget. The trigger is fully described in the source evidence: there is no auth gate to bypass, the flaw is the absence of one. Two entry points are confirmed reachable - the AgentApp alias and direct AgentOS import (a separate root-export ImportError in current main breaks 'from praisonai import AgentOS' but is explicitly not a mitigation, since 'from praisonai import AgentApp' and 'from praisonai.app import AgentOS' still work). The report exists because the same hardening previously applied to PraisonAI's generated deploy API (which returns 401/401/200 for no-auth/wrong-bearer/correct-bearer) was never applied to AgentOS.
Know when Praisonai gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Unauthenticated network invocation (AV:N/AC:L/PR:N/UI:N) yields high confidentiality and integrity via metadata disclosure and agent/tool side effects; availability only A:L as impact is budget/resource exhaustion, not guaranteed outage.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
PraisonAI is a multi-agent teams system. From version 4.2.1 to before version 4.6.59, PraisonAI's AgentOS FastAPI deployment surface remains unauthenticated in current main and in releases after the published patched version for GHSA-pm96-6xpr-978x / CVE-2026-40151. The chat route directly calls agent.chat(request.message). No-auth and wrong-bearer requests both execute the deployed agent. This is broader than passive metadata disclosure. In any deployment where AgentOS wraps agents with tools, private context, memory, API integrations, or cost-bearing model calls, an unauthenticated reachable client can drive those agents. This issue has been patched in version 4.6.59.
Technical POC Analysis
The vulnerable code is PraisonAI AgentOS FastAPI route registration in src/praisonai/praisonai/app/agentos.py.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
PraisonAI's AgentOS FastAPI surface exposes unauthenticated agent enumeration and invocation endpoints, allowing any network client to control deployed AI agents. This critical vulnerability affects all organizations using PraisonAI versions through 4.6.57 and current main, putting agent tools, memory, private context, API integrations, and paid model calls at risk. Leadership should prioritize immediate remediation due to the severe potential for data leakage, unauthorized actions, and financial loss.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
Remote code execution in PraisonAI before 1.6.78 allows attackers to run arbitrary Python on the host by manipulating th
PraisonAI's TypeScript MCP server (npm package `praisonai`, versions 1.5.0 through 1.7.1) exposes an HTTP JSON-RPC trans
WebSocket origin-validation bypass in PraisonAI's Browser Server (praisonai/browser/server.py) before 4.6.58 lets an att
PraisonAI's `praisonai serve` subsystem (agents and unified modes) accepts an `--api-key` CLI flag that is parsed but ne
System prompt extraction and unauthorized tool invocation in PraisonAI before 4.6.78 arise because the prompt-injection
Unauthenticated remote agent invocation in PraisonAI versions 4.6.34 through 4.6.57 allows any network-reachable caller
SSRF protection bypass in PraisonAI's praisonaiagents library (all versions before 1.6.58) lets low-privileged users rou
Server-side request forgery in PraisonAI's Crawl4AI/Chromium crawling backend (all versions before 1.6.78) lets low-priv
Authentication fail-open in PraisonAI's Recipe HTTP server allows unauthenticated remote attackers to invoke recipe exec
Authentication bypass in PraisonAI's AgentServer component exposes all routes - /publish, /events, /info, /health - to u
Arbitrary Python code execution in PraisonAI's workflow include feature allows an attacker who controls a local recipe d
Server-side request forgery in PraisonAI's web_crawl() function (versions 1.5.128-1.6.57) allows an attacker who can inf
EUVD-2026-108894
GHSA-892r-p3jq-jp24
NVD
CVE.org
EPSS
Exploit-DB