CVE-2025-62373·Python vulnerability
Pipecat is an open-source Python framework for building real-time voice and multimodal conversational agents. Versions 0.0.41 through 0.0.93 have a vulnerability in `LivekitFrameSerializer` – an optional, non-default, undocumented frame serializer class (now deprecated) intended for LiveKit integration. The class's `deserialize()` method uses Python's `pickle.loads()` on data received from WebSocket clients without any validation or sanitization. This means that a malicious WebSocket client can send a crafted pickle payload to execute arbitrary code on the Pipecat server. The vulnerable code resides in `src/pipecat/serializers/livekit.py` (around line 73), where untrusted WebSocket message data is passed directly into `pickle.loads()` for deserialization. If a Pipecat server is configured to use LivekitFrameSerializer and is listening on an external interface (e.g. 0.0.0.0), an attacker on the network (or the internet, if the service is exposed) could achieve remote code execution (RCE) on the server by sending a malicious pickle payload. Version 0.0.94 contains a fix. Users of Pipecat should avoid or replace unsafe deserialization and improve network security configuration. The best mitigation is to stop using the vulnerable LivekitFrameSerializer altogether. Those who require LiveKit functionality should upgrade to the latest Pipecat version and switch to the recommended `LiveKitTransport` or another secure method provided by the framework. Additionally, always follow secure coding practices: never trust client-supplied data, and avoid Python pickle (or similar unsafe deserialization) in network-facing components.
- Severity
- critical
- Software
- Python
- Fixed in
- 0.0.94
- Published
- 2026-04-23
Affected versions
From: 0.0.41
Until: 0.0.94
Fixed in: 0.0.94
How to fix this CVE
Upgrade Pipecat to version 0.0.94 or later to patch the unsafe pickle deserialization vulnerability in LivekitFrameSerializer. If you are currently using LivekitFrameSerializer for LiveKit integration, migrate to the secure LiveKitTransport class or another recommended transport method provided by the framework. Ensure your Pipecat service is not exposed on public interfaces (0.0.0.0) without network-level access controls.
sudo dnf upgrade pipecat python3-pipecat || sudo pip3 install --upgrade pipecat>=0.0.94Defensia detects this vulnerability
What an exploitation attempt looks like
Sample log line indicative of exploitation attempts:
POST /ws or WebSocket upgrade requests containing binary pickle protocol payloads (starting with bytes \x80\x03, \x80\x04) or __reduce__ method invocations in serialized objects; inspect WebSocket frame data for 'pickle', 'reduce', '__import__', or 'os.system' strings within binary payloadsWAF mitigation (if patching is not yet possible)
Add this rule to your WAF to block exploitation attempts while you schedule the patch.
Configure WAF rules to reject WebSocket connections to Pipecat endpoints if the service is exposed via a reverse proxy; block WebSocket frames containing pickle protocol signatures (bytes 0x80 followed by protocol version) or validate that only JSON-based serialization is accepted on frame endpointsHow to check if you are affected
- Check installed Pipecat version: pip3 show pipecat | grep Version
- Search your application code for LivekitFrameSerializer imports: grep -r 'LivekitFrameSerializer' /path/to/app/
- Review WebSocket listener configuration to identify if the service binds to 0.0.0.0 or public IPs: grep -r '0\.0\.0\.0' /path/to/app/ && netstat -tlnp | grep python
- Verify fix by confirming Pipecat version is >= 0.0.94 and confirming LivekitFrameSerializer is no longer used: pip3 show pipecat | grep Version && grep -c 'LivekitFrameSerializer' /path/to/app/ | grep -q '^0$' && echo 'Safe' || echo 'Still vulnerable'
FAQ
What is CVE-2025-62373?
CVE-2025-62373 is a critical remote code execution vulnerability in Pipecat's deprecated LivekitFrameSerializer class that deserializes untrusted WebSocket data using Python's pickle module without validation, allowing attackers to execute arbitrary code on exposed servers.
Is CVE-2025-62373 being actively exploited?
No, according to CISA's Known Exploited Vulnerabilities catalog, CVE-2025-62373 is not currently being actively exploited in the wild, and no public exploit code is available.
What versions of Pipecat are affected by CVE-2025-62373?
Pipecat versions 0.0.41 through 0.0.93 are vulnerable; version 0.0.94 and later contain the fix.
How do I check if my server is vulnerable to CVE-2025-62373?
Run 'pip3 show pipecat' to check your version (if < 0.0.94, you are vulnerable) and 'grep -r LivekitFrameSerializer /path/to/app/' to confirm if the vulnerable component is being used.
Does Defensia detect CVE-2025-62373?
Yes — Defensia's CVE advisory scanner compares installed Pipecat package versions against the NVD database. If Pipecat is installed on a monitored server, CVE-2025-62373 will appear in your dashboard with remediation steps.
Related Python CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2025-62373. Free for 1 server.
Get started free