CVE-2023-3692
📋 TL;DR
CVE-2023-3692 is an unrestricted file upload vulnerability in Admidio that allows attackers to upload malicious files to the server. This affects Admidio installations prior to version 4.2.10, potentially leading to remote code execution or server compromise.
💻 Affected Systems
- Admidio
📦 What is this software?
Admidio by Admidio
⚠️ Risk & Real-World Impact
Worst Case
Remote code execution leading to complete server takeover, data exfiltration, or deployment of ransomware.
Likely Case
Upload of web shells leading to unauthorized access, data manipulation, or lateral movement within the network.
If Mitigated
File uploads blocked or sanitized, preventing malicious file execution while maintaining legitimate upload functionality.
🎯 Exploit Status
Exploitation requires authenticated access but is straightforward once authenticated. Public proof-of-concept exists in the huntr.dev bounty report.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 4.2.10
Vendor Advisory: https://github.com/admidio/admidio/commit/d66585d14b1160712a8a9bfaf9769dd3da0e9a83
Restart Required: No
Instructions:
1. Backup your Admidio installation and database. 2. Download Admidio 4.2.10 or later from the official repository. 3. Replace all files with the new version, preserving your configuration files. 4. Run the update script if prompted.
🔧 Temporary Workarounds
Disable file upload functionality
allTemporarily disable all file upload features in Admidio configuration
Edit Admidio configuration to remove or comment out file upload settings
Web server file type restrictions
linuxConfigure web server to block execution of uploaded files in upload directories
For Apache: Add 'Options -ExecCGI' and 'RemoveHandler .php .php3 .php4 .php5 .php7 .phtml' to upload directory .htaccess
For Nginx: Add 'location ~ \.(php|php3|php4|php5|php7|phtml)$ { deny all; }' to upload directory config
🧯 If You Can't Patch
- Implement strict file type validation and whitelisting for all uploads
- Configure web application firewall to block malicious file upload patterns
🔍 How to Verify
Check if Vulnerable:
Check Admidio version in admin panel or by examining the version.php file. If version is below 4.2.10, the system is vulnerable.
Check Version:
Check Admidio admin panel or examine the file 'adm_program/system/serverconfig.php' for version information
Verify Fix Applied:
After patching, verify version is 4.2.10 or higher and test file upload functionality with various file types to ensure proper validation.
📡 Detection & Monitoring
Log Indicators:
- Multiple failed file upload attempts
- Uploads of unusual file types (.php, .phtml, .jsp)
- Files uploaded to non-standard directories
- Web server error logs showing execution attempts in upload directories
Network Indicators:
- POST requests to upload endpoints with suspicious file extensions
- Unusual traffic patterns to uploaded files
SIEM Query:
source="web_server_logs" AND (uri="/admidio/upload*" OR uri="*.php" OR uri="*.phtml") AND status=200