CVE-2024-0439
📋 TL;DR
This CVE describes an improper privilege management vulnerability in Anything-LLM where managers can bypass UI restrictions and modify restricted settings using their authentication tokens via direct HTTP requests. This affects systems running vulnerable versions of Anything-LLM with manager accounts.
💻 Affected Systems
- Anything-LLM
📦 What is this software?
Anythingllm by Mintplexlabs
⚠️ Risk & Real-World Impact
Worst Case
Manager-level users could modify critical system settings, potentially disrupting operations, changing security configurations, or enabling further privilege escalation.
Likely Case
Accidental or intentional modification of restricted settings by managers, leading to configuration drift, operational issues, or minor security policy violations.
If Mitigated
No impact if proper server-side authorization checks are implemented to enforce role-based access controls.
🎯 Exploit Status
Exploitation involves crafting HTTP requests to restricted endpoints using valid manager authentication tokens.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in commit 7200a06ef07d92eef5f3c4c8be29824aa001d688
Vendor Advisory: https://github.com/mintplex-labs/anything-llm/commit/7200a06ef07d92eef5f3c4c8be29824aa001d688
Restart Required: Yes
Instructions:
1. Update Anything-LLM to version containing commit 7200a06ef07d92eef5f3c4c8be29824aa001d688
2. Restart the application
3. Verify server-side authorization checks are now enforced
🔧 Temporary Workarounds
Implement API Gateway Authorization
allAdd authorization layer at API gateway to enforce role-based access controls for all API endpoints.
Restrict Manager Token Permissions
allReview and reduce permissions associated with manager authentication tokens.
🧯 If You Can't Patch
- Implement network segmentation to restrict manager access to the application
- Deploy a web application firewall with custom rules to block unauthorized API calls to restricted endpoints
🔍 How to Verify
Check if Vulnerable:
Test if manager tokens can access/modify restricted settings via direct API calls that should be blocked.
Check Version:
Check git commit hash or version number against the fixed commit 7200a06ef07d92eef5f3c4c8be29824aa001d688
Verify Fix Applied:
Verify that manager tokens are now properly rejected when attempting to modify restricted settings via API.
📡 Detection & Monitoring
Log Indicators:
- Unauthorized API calls from manager accounts to restricted endpoints
- Failed authorization attempts for manager roles
Network Indicators:
- HTTP requests to restricted endpoints with manager authentication tokens
SIEM Query:
source="application_logs" AND (endpoint="/api/restricted/*" OR endpoint="/api/settings/*") AND user_role="manager" AND response_code=200
🔗 References
- https://github.com/mintplex-labs/anything-llm/commit/7200a06ef07d92eef5f3c4c8be29824aa001d688
- https://huntr.com/bounties/7fc1b78e-7faf-4f40-961d-61e53dac81ce
- https://github.com/mintplex-labs/anything-llm/commit/7200a06ef07d92eef5f3c4c8be29824aa001d688
- https://huntr.com/bounties/7fc1b78e-7faf-4f40-961d-61e53dac81ce