CVE-2024-4084
📋 TL;DR
This SSRF vulnerability in mintplex-labs/anything-llm allows attackers to bypass IP filtering and access internal network resources by using alternative IP representations and localhost ports. It affects anyone running the vulnerable version of anything-llm, enabling internal network scanning and potential AWS metadata access.
💻 Affected Systems
- mintplex-labs/anything-llm
📦 What is this software?
Anythingllm by Mintplexlabs
⚠️ Risk & Real-World Impact
Worst Case
Attackers gain full access to internal network assets, compromise internal web services, access AWS metadata for cloud credentials, and pivot to other systems.
Likely Case
Internal network scanning, access to internal services on non-standard ports, and potential data exfiltration from internal systems.
If Mitigated
Limited to scanning accessible internal services without authentication, but no data compromise if services require authentication.
🎯 Exploit Status
Exploit details available in public bounty reports; SSRF attacks are well-understood and easily weaponized.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Not specified in CVE
Vendor Advisory: https://huntr.com/bounties/bf44517e-a07d-4f54-89b4-3b05fca2a008
Restart Required: Yes
Instructions:
1. Check for official patch from mintplex-labs/anything-llm repository. 2. Update to patched version. 3. Restart the application service.
🔧 Temporary Workarounds
Network Segmentation
allRestrict outbound network access from the vulnerable application to only necessary external services.
Web Application Firewall Rules
allImplement WAF rules to block SSRF patterns and alternative IP representations.
🧯 If You Can't Patch
- Implement strict outbound firewall rules to block all internal network access from the application
- Deploy the application in a isolated network segment with no access to sensitive internal resources
🔍 How to Verify
Check if Vulnerable:
Test if the application accepts URLs with alternative IP representations (like octal, hex, integer) or localhost with different ports.
Check Version:
Check package.json or application version endpoint if available
Verify Fix Applied:
Verify that the application rejects URLs with internal IPs in any representation and restricts protocols to HTTP/HTTPS only.
📡 Detection & Monitoring
Log Indicators:
- Unusual outbound requests to internal IPs
- Requests to localhost with non-standard ports
- URLs with alternative IP formats
Network Indicators:
- Outbound connections from application to internal network ranges
- Requests to AWS metadata endpoint from application
SIEM Query:
source="anything-llm" AND (url="*://192.*" OR url="*://10.*" OR url="*://172.*" OR url="*://127.*" OR url="*://localhost:*")