Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessNetwork scan identifies exposed PraisonAI service
-
DeliveryAttacker connects to /ws WebSocket without Origin header
-
ExploitSend start_session message to server
-
ExecutionServer routes command to idle browser-extension client
-
PersistHijacked session streams automation outputs to attacker
-
ImpactExfiltrate sensitive data or inject malicious commands
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Authentication required for critical functions
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | PraisonAI versions below 4.5.139 and praisonaiagents below 1.5.140 with browser bridge enabled (praisonai browser start). Server must bind to 0.0.0.0 (default). Unauthenticated remote attacker omits Origin header in WebSocket connection to /ws endpoint. No victim interaction required. |
| Impact | This vulnerability presents critical real-world risk despite lacking confirmed active exploitation signals. The CVSS 9.1 score accurately reflects severe technical impact: network-accessible (AV:N), trivial exploitation complexity (AC:L), zero authentication barriers (PR:N), high confidentiality and integrity impact (C:H/I:H) from session hijacking and data exfiltration. EPSS data not provided, but the low technical barrier suggests high automatable exploitation potential per SSVC framework-any attacker with network access and basic WebSocket knowledge can exploit this. The absence of public exploit code (POC=not indicated, KEV=not listed) provides temporary risk reduction, but the detailed GitHub security advisory effectively serves as exploitation documentation. Most concerning: the default 0.0.0.0 binding means cloud deployments, containerized instances, or development environments on shared networks are immediately vulnerable. Organizations using PraisonAI for browser automation involving sensitive workflows (credential entry, data scraping, authenticated sessions) face immediate compromise risk. This is a legitimate critical-priority issue, not a theoretical high-CVSS scenario-the attack requires minimal sophistication and enables direct session control. |
| Exploit ScenarioDerived | A remote attacker on the same network or internet-facing deployment identifies the PraisonAI browser bridge listening on default port (network scan or service fingerprinting). Using a simple Python WebSocket client or curl, the attacker establishes a connection to the /ws endpoint without including an Origin header, bypassing the conditional validation. The attacker sends a start_session message with arbitrary parameters, which the server routes to the first idle browser-extension WebSocket, effectively hijacking that legitimate user's automation session. All subsequent browser actions-page navigation, form inputs, scraped data, authentication credentials entered via automation-stream back to the attacker's WebSocket connection, enabling real-time monitoring and control of the victim's browser session without any authentication challenge. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 14, 2026
Unauthenticated remote session hijacking in PraisonAI's browser bridge (versions <4.5.139) and praisonaiagents (<1.5.140) allows network attackers to control browser automation sessions without authentication. The /ws WebSocket endpoint accepts connections from any client omitting the Origin header, enabling attackers to send start_session commands that hijack idle browser-extension sessions and receive all automation outputs. With CVSS 9.1 (Critical) scoring driven by network attack vector, low complexity, and no authentication requirement (AV:N/AC:L/PR:N), this represents a severe risk in any deployment where the default 0.0.0.0 binding exposes the service to untrusted networks. No public exploit identified at time of analysis, though exploitation requires only basic WebSocket client capabilities.
RemediationAI
Immediately upgrade to patched versions: PraisonAI 4.5.139 or later, and praisonaiagents 1.5.140 or later. Users can update via Python package managers with 'pip install --upgrade praisonai praisonaiagents'. If immediate patching is not feasible, implement network-level controls to restrict WebSocket endpoint access: bind the browser bridge to localhost (127.0.0.1) instead of 0.0.0.0, deploy firewall rules blocking external access to the WebSocket port, or place the service behind authenticated reverse proxy with mandatory authentication. Do not rely on Origin header validation as a security control in the vulnerable versions. For production deployments, review network architecture to ensure the browser bridge is not exposed to untrusted networks, and audit logs for unexpected WebSocket connections or start_session messages from unauthorized sources. Complete remediation guidance and affected version ranges are detailed in the GitHub security advisory at https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-8x8f-54wf-vv92.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in pypi
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
PraisonAI is a multi-agent automation framework that includes a browser bridge component facilitating communication between a server and browser-extension clients via WebSockets. The vulnerability stems from CWE-306 (Missing Authentication for Critical Function) in the WebSocket endpoint implementation. The server's Origin header validation is conditional-it only checks the header when present, allowing non-browser clients (curl, Python websocket libraries, custom scripts) to bypass the control entirely by omitting the header. The affected CPE strings identify two distinct packages: mervinpraison:praisonai (main framework) and mervinpraison:praisonaiagents (agents library), both requiring patches. The 0.0.0.0 default binding exposes the service to all network interfaces rather than localhost-only, amplifying the attack surface. The session-routing logic lacks any cryptographic authentication or session tokens, instead relying solely on the flawed Origin check to determine legitimate clients.
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:N
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
2DescriptionGitHub Advisory
PraisonAI is a multi-agent teams system. In versions below 4.5.139 of PraisonAI and 1.5.140 of praisonaiagents, the browser bridge (praisonai browser start) is vulnerable to unauthenticated remote session hijacking due to missing authentication and a bypassable origin check on its /ws WebSocket endpoint. The server binds to 0.0.0.0 by default and only validates the Origin header when one is present, meaning any non-browser client that omits the header is accepted without restriction. An unauthenticated network attacker can connect, send a start_session message, and the server will route it to the first idle browser-extension WebSocket (effectively hijacking that session) and then broadcast all resulting automation actions and outputs back to the attacker. This enables unauthorized remote control of connected browser automation sessions, leakage of sensitive page context and automation results, and misuse of model-backed browser actions in any environment where the bridge is network-reachable. This issue has been fixed in versions 4.5.139 of PraisonAI and 1.5.140 of praisonaiagents.
Executive ViewAI
PraisonAI's browser bridge (versions before 4.5.139) and praisonaiagents (before 1.5.140) contain a critical unauthenticated remote session hijacking vulnerability that allows attackers to take control of browser automation sessions and extract all outputs without any credentials. Any organization running these products on network-accessible systems faces immediate risk of unauthorized browser automation abuse, data exfiltration through automated workflows, and potential lateral movement into systems accessed by the browser.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Restrict network binding from 0.0.0.0 to 127.0.0.1 or internal trusted subnets only; (2) Implement firewall rules blocking external access to WebSocket endpoints; (3) Deploy a reverse proxy or WAF with mandatory Origin header validation and authentication; (4) Disable the browser bridge service until patched if not operationally critical; (5) Monitor WebSocket connections for suspicious session takeover attempts.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
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
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
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
Cross-site request forgery against the PraisonAI MCP HTTP-stream transport allows unauthenticated remote attackers to ex
Remote unauthenticated access to PraisonAI's legacy Flask API server allows attackers to execute configured agent workfl
Path traversal in praisonaiagents prior to 1.6.58 allows a low-privileged caller to write arbitrary JSON files to any pr
EUVD-2026-22211
GHSA-8x8f-54wf-vv92
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB