CVE-2024-4084

7.5 HIGH

📋 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

Products:
  • mintplex-labs/anything-llm
Versions: Latest version at time of disclosure (specific version not specified in CVE)
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all deployments with the vulnerable code, regardless of configuration.

📦 What is this software?

⚠️ 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.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

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

all

Restrict outbound network access from the vulnerable application to only necessary external services.

Web Application Firewall Rules

all

Implement 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:*")

🔗 References

📤 Share & Export