CVE-2025-64513
📋 TL;DR
An authentication bypass vulnerability in Milvus Proxy allows unauthenticated attackers to gain full administrative access to Milvus clusters. This enables data theft, modification, or deletion, plus privileged administrative operations. Organizations using Milvus versions prior to 2.4.24, 2.5.21, or 2.6.5 are affected.
💻 Affected Systems
- Milvus
⚠️ Manual Verification Required
This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.
Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).
🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Complete compromise of Milvus cluster with data exfiltration, destruction, or ransomware deployment via administrative privileges.
Likely Case
Unauthorized data access and manipulation, potentially exposing sensitive AI/ML data and disrupting operations.
If Mitigated
Limited to authenticated attacks only if proper network segmentation and access controls are implemented.
🎯 Exploit Status
Exploitation involves manipulating the sourceID header; no authentication required.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.4.24, 2.5.21, or 2.6.5
Vendor Advisory: https://github.com/milvus-io/milvus/security/advisories/GHSA-mhjq-8c7m-3f7p
Restart Required: Yes
Instructions:
1. Identify current Milvus version. 2. Upgrade to 2.4.24, 2.5.21, or 2.6.5 based on your branch. 3. Restart Milvus services. 4. Verify upgrade completion.
🔧 Temporary Workarounds
Remove sourceID Header at Gateway
allStrip sourceID header from incoming requests before they reach Milvus Proxy to prevent exploitation.
# Example for nginx: add 'proxy_set_header sourceID "";' to location block
# Example for Apache: add 'RequestHeader unset sourceID' to config
🧯 If You Can't Patch
- Implement network segmentation to isolate Milvus from untrusted networks.
- Deploy WAF or API gateway rules to block requests containing sourceID header.
🔍 How to Verify
Check if Vulnerable:
Check Milvus version; if below 2.4.24, 2.5.21, or 2.6.5, system is vulnerable.
Check Version:
milvus version
Verify Fix Applied:
Confirm version is 2.4.24, 2.5.21, or 2.6.5 or higher; test authentication bypass attempts fail.
📡 Detection & Monitoring
Log Indicators:
- Unusual administrative operations from unauthenticated sources
- Requests with manipulated sourceID headers
Network Indicators:
- Unauthenticated requests to administrative endpoints
- Traffic patterns showing authentication bypass
SIEM Query:
source="milvus" AND (event="admin_operation" AND user="unauthenticated")