Skip to main content

PraisonAI CVE-2026-55536

| EUVDEUVD-2026-65545 CRITICAL
Improper Access Control (CWE-284)
2026-08-25 GitHub_M GHSA-6g6r-q6gw-w8fg
9.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach browser server WebSocket port
  2. Delivery
    Forge chrome-extension Origin with 33+ chars
  3. Exploit
    Bypass unanchored re.match() gate
  4. Execution
    Send start_session with attacker goal
  5. Persist
    Broadcast start_automation to connected extension
  6. Impact
    Browser exfiltrates cookies and screenshots

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK

1 technique across 1 tactic: Defense Evasion

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires the PraisonAI Browser Server to be running and reachable by the attacker (default listener 127.0.0.1:8765), plus at least one Chrome extension actively connected to that server for the start_session/start_automation payload to have an effect. No authentication is needed once reachable - the only gate is the forgeable Origin header, which any non-browser WebSocket client can set to 'chrome-extension://' + 32 alphanumerics + arbitrary trailing characters. Limiting factors: the default loopback bind means remote exploitation requires the operator to have exposed the port (or the attacker to have local/adjacent access or a browser-based cross-origin path), and impact is contingent on a live connected extension; genuine browsers cannot forge the Origin header, so exploitation needs a scripted client.

Impact

Multiple signals point to genuine severity: the supplied CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N, C:H/I:H) yields 9.1, the flaw is trivially exploitable (a one-line Origin forgery), and a PoC is public. However, these must be weighed against a key limiting factor the vector does not capture: the server binds to 127.0.0.1:8765 by default, so 'network' reachability presupposes the operator exposed the port or an attacker already has local/co-resident code execution or can leverage a browser-driven cross-origin vector - this tempers the raw AV:N. There is no EPSS score, no KEV listing, and no SSVC data in the input, so exploitation-probability and automatability cannot be quantified from the provided sources. The absence of KEV suggests no confirmed in-the-wild use, but the low exploitation complexity and high impact (session-cookie theft, arbitrary browser actions) mean any operator running the browser server on an accessible interface should treat this as an urgent patch. On balance this is a real priority for exposed deployments rather than a high-CVSS-but-low-real-risk finding, with the localhost default being the primary risk reducer for typical installs.

Exploit ScenarioDerived

An attacker who can reach the browser server's WebSocket port opens a raw (non-browser) WebSocket client and sets the Origin header to 'chrome-extension://' followed by 32 alphanumeric characters plus any trailing bytes, satisfying the unanchored re.match() and passing websocket.accept(). They then send a start_session command with an attacker-chosen goal, which broadcasts start_automation to every connected Chrome extension so the victim's browser silently performs the goal - exfiltrating cookies or capturing screenshots. A published PoC in the advisory demonstrates the regex bypass and low attack complexity.

Act Now Prioritize within 24-48h. Why: CRITICAL severity + public POC available.
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 25, 2026

WebSocket origin-validation bypass in PraisonAI's Browser Server (praisonai/browser/server.py) before 4.6.58 lets an attacker forge a Chrome-extension Origin header and drive connected browser extensions. The check uses re.match() against the unanchored pattern chrome-extension://[a-z0-9]{32}, so any Origin with 32+ trailing characters is accepted before websocket.accept(), after which start_session commands trigger arbitrary browser automation, cookie theft, and screenshot capture. This is a patch bypass of CVE-2026-40289 (GHSA-8x8f-54wf-vv92); a working PoC is published in the advisory, though it is not in CISA KEV - no public exploit weaponization beyond the advisory PoC is identified.

RemediationAI

Vendor-released patch: upgrade PraisonAI to 4.6.58 or later (pip install --upgrade 'praisonai>=4.6.58'), which is the definitive fix per GHSA-6g6r-q6gw-w8fg and release v4.6.58. If immediate upgrade is not possible, apply compensating controls: ensure the browser server binds only to loopback (127.0.0.1) and is not exposed on 0.0.0.0 or a routable interface - trade-off is none for local-only use but breaks any intentional remote extension pairing; add a host firewall rule blocking inbound access to TCP 8765 from all non-local sources; and where feasible, disable or do not launch the browser server (python -m praisonai browser / BrowserServer().start()) until patched, accepting loss of browser-automation functionality. Because the flawed regex is the only gate, do not rely on the Origin check itself as a control until 4.6.58 is applied. Advisory and fix references: https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-6g6r-q6gw-w8fg and https://github.com/MervinPraison/PraisonAI/releases/tag/v4.6.58.

Affected VersionsENISA

PraisonAI < 4.6.58

Affected Packages

pypi praisonai fix: 4.6.58

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 PraisonAI's Browser Server, a WebSocket service (default 127.0.0.1:8765) that bridges a Chrome extension to a BrowserAgent for automated browsing. Its only connection gate is an HTTP Origin-header check intended to allow only the paired Chrome extension. The root cause is CWE-284 (Improper Access Control) manifesting as an anchoring bug: Python's re.match() anchors only at the string start, not the end, so chrome-extension://[a-z0-9]{32} matches any Origin whose first 32 post-scheme characters are alphanumeric regardless of trailing bytes. re.fullmatch() or a trailing $ is required to enforce exact length. Because Origin headers are freely set by any non-browser WebSocket client, and _handle_connection() has no bearer token, API key, or extension-ID allowlist, the regex is the sole authentication boundary.

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

Vendor (GitHub_M) PRIMARY 9.1 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
vuln.today AI 9.1 CRITICAL

Forgeable Origin is the sole gate (PR:N, AC:L, UI:N); AV:N reflects the network-service intent though default loopback bind limits real reach; cookie theft and browser control give C:H/I:H, no availability impact.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

2
Patch available
Aug 25, 2026 - 17:17 EUVD
CVE Published
Aug 25, 2026 - 15:21 cve.org
CRITICAL 9.1

DescriptionCVE.org

PraisonAI is a multi-agent teams system. Prior to praisonai 4.6.58, Browser Server _handle_connection() checks Chrome extension origins with re.match() and the unanchored expression chrome-extension://[a-z0-9]{32}. Extra trailing characters pass before websocket.accept(), allowing start_session commands and unauthorized browser automation. This issue is fixed in version 4.6.58.

Executive ViewAI

Why It Matters

PraisonAI's Browser Server (versions before 4.6.58) contains a critical WebSocket validation flaw that permits attackers to forge authentication headers and hijack connected browser extensions, enabling unauthorized session theft, cookie exfiltration, and screenshot capture. Organizations using PraisonAI's browser automation features face immediate risk of account compromise and sensitive data breach.

Business Impact: Severe
Compensating Controls

No vendor-released patch identified at time of analysis. Implement network segmentation to restrict WebSocket access to trusted networks only, disable PraisonAI browser extension functionality if not business-critical, deploy a reverse proxy with strict origin header validation before forwarding requests to PraisonAI, isolate affected systems from direct internet exposure, and establish continuous monitoring of WebSocket connection logs for suspicious patterns matching the published exploit technique.

Threat Intelligence Overview

EPSS Score
0.3%
Top 79% exploitable
Prevalence
Low
niche open-source multi-agent AI framework, limited production deployment footprint
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Data Quality
5 sources
Confidence: Medium

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.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity + public POC available
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Out-of-Cycle
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
Yes
Human Impact
Very High

Priority Score

66
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

CVE-2026-57139 CRITICAL POC
9.8 Sep 15

PraisonAI's TypeScript MCP server (npm package `praisonai`, versions 1.5.0 through 1.7.1) exposes an HTTP JSON-RPC trans

CVE-2026-55541 HIGH POC
8.8 Aug 25

PraisonAI's `praisonai serve` subsystem (agents and unified modes) accepts an `--api-key` CLI flag that is parsed but ne

CVE-2026-55534 HIGH POC
8.6 Aug 25

Unauthenticated remote agent invocation in PraisonAI versions 4.6.34 through 4.6.57 allows any network-reachable caller

CVE-2026-55526 HIGH POC
8.5 Aug 25

SSRF protection bypass in PraisonAI's praisonaiagents library (all versions before 1.6.58) lets low-privileged users rou

CVE-2026-55533 HIGH POC
8.2 Aug 25

Authentication fail-open in PraisonAI's Recipe HTTP server allows unauthenticated remote attackers to invoke recipe exec

CVE-2026-55528 HIGH POC
8.2 Aug 25

Authentication bypass in PraisonAI's AgentServer component exposes all routes - /publish, /events, /info, /health - to u

CVE-2026-55522 HIGH POC
7.8 Aug 05

Arbitrary Python code execution in PraisonAI's workflow include feature allows an attacker who controls a local recipe d

CVE-2026-55523 HIGH POC
7.7 Aug 05

Server-side request forgery in PraisonAI's web_crawl() function (versions 1.5.128-1.6.57) allows an attacker who can inf

CVE-2026-55532 HIGH POC
7.6 Aug 25

Cross-site request forgery against the PraisonAI MCP HTTP-stream transport allows unauthenticated remote attackers to ex

CVE-2026-44338 HIGH POC
7.3 May 08

Remote unauthenticated access to PraisonAI's legacy Flask API server allows attackers to execute configured agent workfl

CVE-2026-55527 HIGH POC
7.1 Aug 25

Path traversal in praisonaiagents prior to 1.6.58 allows a low-privileged caller to write arbitrary JSON files to any pr

CVE-2026-55535 MEDIUM POC
6.8 Aug 25

Server-Side Request Forgery in PraisonAI before version 4.6.58 allows unauthenticated remote attackers to force the appl

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy