CVE-2025-34449
📋 TL;DR
A buffer overflow vulnerability in scrcpy allows a compromised Android device to send crafted messages that cause memory corruption on the host system. This could lead to denial-of-service or potential remote code execution. All users running scrcpy versions up to 3.3.3 are affected.
💻 Affected Systems
- Genymobile scrcpy
📦 What is this software?
Scrcpy by Genymotion
⚠️ Risk & Real-World Impact
Worst Case
Remote code execution on the host system, potentially allowing full compromise of the computer running scrcpy.
Likely Case
Denial-of-service (scrcpy crash) and potential memory corruption leading to unstable system behavior.
If Mitigated
Limited impact if scrcpy is only used with trusted devices and network segmentation is in place.
🎯 Exploit Status
Exploitation requires a compromised Android device that can send crafted messages to scrcpy
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Versions after commit 3e40b24
Vendor Advisory: https://github.com/Genymobile/scrcpy/commit/3e40b24
Restart Required: Yes
Instructions:
1. Update scrcpy to latest version from official repository. 2. Rebuild from source if using compiled version. 3. Restart scrcpy application.
🔧 Temporary Workarounds
Disable network ADB
allOnly use USB connection for scrcpy to prevent network-based attacks
adb usb
Use trusted devices only
allOnly connect scrcpy to verified, trusted Android devices
🧯 If You Can't Patch
- Discontinue use of scrcpy until patched
- Isolate scrcpy usage to separate network segment with no other critical systems
🔍 How to Verify
Check if Vulnerable:
Check scrcpy version with 'scrcpy --version' and verify it's 3.3.3 or earlier
Check Version:
scrcpy --version
Verify Fix Applied:
Verify scrcpy version is newer than 3.3.3 or check git commit includes 3e40b24
📡 Detection & Monitoring
Log Indicators:
- scrcpy crash logs
- memory access violation errors in system logs
Network Indicators:
- Unusual ADB traffic patterns from Android devices
- Large or malformed data packets to scrcpy port
SIEM Query:
process_name='scrcpy' AND (event_type='crash' OR error_message CONTAINS 'memory' OR error_message CONTAINS 'buffer')
🔗 References
- https://github.com/Genymobile/scrcpy/commit/3e40b24
- https://github.com/Genymobile/scrcpy/issues/6415
- https://github.com/marlinkcyber/advisories/blob/main/advisories/MCSAID-2025-003-scrcpy-global-buffer-overflow.md
- https://www.vulncheck.com/advisories/genymobile-scrcpy-global-buffer-overflow
- https://github.com/marlinkcyber/advisories/blob/main/advisories/MCSAID-2025-003-scrcpy-global-buffer-overflow.md