Skip to main content

Pipecat EUVDEUVD-2026-101601

| CVE-2026-102682 MEDIUM
Insufficient Verification of Data Authenticity (CWE-345)
2026-10-14 security-advisories@github.com GHSA-hqm2-cfx2-2vgh
5.6
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

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

  1. Access
    Discover exposed dev-runner port
  2. Delivery
    Send unauthenticated POST to /start or /daily
  3. Exploit
    Trigger bot session and Daily room creation
  4. Execution
    Receive room URL and join token
  5. Impact
    Exhaust compute and third-party Daily quota

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A08:2025 - Software or Data Integrity Failures
ASVS 5.0
V15 - Secure Coding and Architecture Data authenticity verification
Exploitation Conditions

Exploitation requires the operator to have deliberately exposed the built-in development runner beyond its default localhost binding - specifically via the --host 0.0.0.0 flag, a published/forwarded port, or a public tunnel (e.g. ngrok) placed in front of it WITHOUT any access controls. Against a default install the endpoints (/start, /daily, /daily-dialin-webhook) are only reachable from the local machine and cannot be attacked remotely. The principal limiting factors are therefore: localhost-only default binding, the need for operator misconfiguration to expose the service, and that the affected component is explicitly a development runner not intended for production (the authenticated dispatcher / managed runtime path is unaffected). No end-user interaction or attacker authentication is needed once the port is exposed.

Impact

This is a genuine-but-moderate issue best characterized as a secure-by-default framework shipping an insecure-if-misconfigured development tool. The CVSS 3.1 vector (AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L, base 5.6) correctly reflects the key tension: the endpoint is unauthenticated (PR:N) and network-reachable (AV:N), but AC:H captures that exploitation is not possible against a default install - the runner binds to localhost and only becomes reachable if an operator intentionally exposes it via --host 0.0.0.0, a published port, or an unauthenticated tunnel. All three impact metrics are Low, consistent with the real harm (quota/resource abuse and disclosure of a Daily room URL and join token) rather than code execution or full data compromise. No EPSS score was provided and the vulnerability is NOT in CISA KEV; exploitation status is 'no public exploit identified at time of analysis.' CWE-345 (insufficient verification of data authenticity) aligns with the unauthenticated-endpoint root cause. The vendor's own fix is notable and should temper severity: version 1.6.0 does NOT change endpoint behavior (unauthenticated access remains 'by design' for the dev runner) and instead adds a warning banner and documentation directing production users to an authenticated dispatcher. This signals the vendor views the flaw as operator misuse of a dev tool rather than a code defect. Net: real but low-priority for most organizations - meaningful only where teams have exposed the development runner to untrusted networks.

Exploit ScenarioDerived

A developer runs the pipecat-ai development runner and, to test from another device or share a demo, launches it with --host 0.0.0.0 or behind a public tunnel without adding access controls. An unauthenticated attacker who discovers the exposed port sends POST requests to /start or /daily to spin up bot sessions and Daily rooms, burning the victim's compute and third-party Daily API quota and, depending on configuration, receiving a usable room URL and join token. No public exploit code is required - the endpoints are plain HTTP and need no authentication once reachable.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 14, 2026

Unauthenticated HTTP endpoints in the Pipecat development runner (/start, /daily, and /daily-dialin-webhook) allow an unauthenticated network caller to spin up bot sessions and Daily rooms when the runner has been deliberately exposed beyond its default localhost binding. Only deployments of the pipecat-ai Python package between versions 0.0.98 and 1.6.0 that have been misconfigured with --host 0.0.0.0, a published container port, or a public tunnel lacking access controls are reachable; the default localhost-only install is not remotely attackable. Per the CVSS vector (PR:N), no attacker authentication is required once the port is exposed, and the impact is limited to low confidentiality, integrity, and availability effects such as consumption of local resources and third-party Daily quotas and, depending on configuration, disclosure of a room URL and join token. No public exploit code has been identified at time of analysis and the issue is not in CISA KEV; vendor-released patch: 1.6.0.

RemediationAI

Vendor-released patch: upgrade pipecat-ai to 1.6.0, which ships the fix commit acaac3e49f50968f3ffb645a42ecc48d71c4e723 and the associated release (https://github.com/pipecat-ai/pipecat/releases/tag/v1.6.0); note that 1.6.0 primarily adds a prominent development-runner banner and documentation clarifying the unauthenticated boundary, so upgrading alone does not add authentication to the endpoints. Because the endpoint behavior remains by design, the effective mitigations are deployment controls: keep the runner bound to its default localhost address and never run it with --host 0.0.0.0; do not publish or forward its port in container or orchestrator configuration; and do not place a public tunnel (for example ngrok) in front of it, since a tunnel with no access controls reproduces exactly the precondition this advisory describes. Where the runner must be reachable for testing, restrict it behind an authenticating reverse proxy, IP allowlisting, or a VPN, accepting the added operational complexity and risk of blocking legitimate local tooling. For any production or shared deployment, replace the development runner with the authenticated dispatcher or managed runtime path documented at https://docs.pipecat.ai/pipecat/deployment/overview, which is unaffected by this issue. Rotate Daily API keys or quotas if a runner environment was exposed to untrusted traffic, as tokens and room URLs may have been issued to unauthorized callers. Full details are in the vendor advisory at https://github.com/pipecat-ai/pipecat/security/advisories/GHSA-hqm2-cfx2-2vgh.

Affected VersionsENISA

pipecat 0.0.98, < 1.6.0

Affected Packages

pypi pipecat-ai fix: 1.6.0
euvd pipecat fix: 1.6.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in pypi, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Pipecat is an open-source Python framework for real-time voice and multimodal conversational agents, and the flaw sits in the built-in development runner (src/pipecat/runner/run.py) rather than in the framework's core pipeline or transport layer. The root cause class is CWE-345, Insufficient Verification of Data Authenticity: the runner's HTTP endpoints (/start, /daily, /daily-dialin-webhook) accept requests without any authentication or authorization check, so the service cannot distinguish a trusted local developer from an arbitrary network caller. Because the runner is explicitly a local development convenience that binds to 127.0.0.1 by default, the missing authenticity check only becomes remotely reachable when an operator changes the bind address (--host 0.0.0.0), publishes the port, or fronts it with a tunnel - making reachability a function of operator configuration rather than a defect in the default posture. The upstream fix (commit acaac3e49f50968f3ffb645a42ecc48d71c4e723, tied to PR #5060 and the v1.6.0 release) does not add authentication; it adds a bordered startup banner declaring 'PIPECAT DEVELOPMENT RUNNER / For development purposes only' with a link to the deployment documentation, and the endpoint behavior remains by design. The CVSS vector AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L reflects that the attack is network-reachable with no privileges or user interaction, but requires the non-default exposure precondition, and that consequences are bounded to low-level C/I/A effects. The authenticated dispatcher and managed runtime deployment paths are unaffected.

Know when Python 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) PRIMARY 5.6 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L
vuln.today AI 5.6 MEDIUM

Unauthenticated network endpoint (PR:N/AV:N) but AC:H because exploitation depends on operator-controlled non-default network exposure; impacts limited to token/URL disclosure, session creation, and quota exhaustion (C/I/A:L).

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

Primary rating from Vendor (github).

CVSS VectorVendor: github

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

Lifecycle Timeline

1
Patch available
Oct 14, 2026 - 20:34 EUVD

DescriptionCVE.org

Pipecat is an open-source Python framework for building real-time voice and multimodal conversational agents. From 0.0.98 until 1.6.0, the pipecat-ai package's built-in development runner exposes unauthenticated endpoints including /start, /daily, and /daily-dialin-webhook that can create bot sessions and Daily rooms. The runner binds to localhost by default and is intended only for local development, so exploitation requires an operator to expose it to untrusted traffic through --host 0.0.0.0, a published port, or a tunnel without access controls. An unauthenticated caller can consume local resources and third-party quotas and, depending on configuration, receive a room URL and join token. Version 1.6.0 adds a prominent development-runner banner and documentation that clarifies the unauthenticated boundary and directs production deployments to an authenticated dispatcher or managed runtime, while the endpoint behavior remains by design. This issue is fixed in version 1.6.0.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 1 pypi packages depend on pipecat-ai (1 direct, 0 indirect)

Ecosystem-wide dependent count for version 0.0.98.

Threat Intelligence Overview

EPSS Score
0.2%
Top 87% exploitable
Prevalence
Low
niche open-source Python voice-agent framework, mostly developer/early-adopter use
Threat Intel
1
1 source
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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
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
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

More in Python

View all
CVE-2025-24016 CRITICAL POC
9.9 Feb 10

Wazuh SIEM platform versions 4.4.0 through 4.9.0 contain an unsafe deserialization vulnerability in the DistributedAPI t

CVE-2025-27520 CRITICAL POC
9.8 Apr 04

BentoML version 1.4.2 and earlier contains an unauthenticated remote code execution vulnerability through insecure deser

CVE-2025-2945 CRITICAL POC
9.9 Apr 03

pgAdmin 4 contains critical remote code execution vulnerabilities in the Query Tool download and Cloud Deployment endpoi

CVE-2013-5093 MEDIUM POC
6.8 Sep 27

The renderLocalView function in render/views.py in graphite-web in Graphite 0.9.5 through 0.9.10 uses the pickle Python

CVE-2025-32375 CRITICAL POC
9.8 Apr 09

BentoML is a Python library for building online serving systems optimized for AI apps and model inference. Rated critica

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2024-21644 HIGH POC
7.5 Jan 08

pyLoad download manager version prior to 0.5.0b3.dev77 exposes the Flask SECRET_KEY through an unauthenticated endpoint.

CVE-2026-33017 CRITICAL POC
9.3 Mar 17

Langflow (a visual LLM pipeline builder) contains a critical unauthenticated code execution vulnerability (CVE-2026-3301

CVE-2017-9462 HIGH POC
8.8 Jun 06

In Mercurial before 4.1.3, "hg serve --stdio" allows remote authenticated users to launch the Python debugger, and conse

CVE-2026-49869 CRITICAL POC
10.0 Jun 26

Unauthenticated remote code execution affects Kestra OSS (the open-source event-driven orchestration platform) prior to

CVE-2026-39987 CRITICAL POC
9.3 Apr 08

Unauthenticated remote code execution in Marimo ≤0.20.4 allows attackers to execute arbitrary system commands via the `/

CVE-2024-21645 MEDIUM POC
5.3 Jan 08

pyLoad is the free and open-source Download Manager written in pure Python. Rated medium severity (CVSS 5.3), this vulne

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