CVE-2024-11404
📋 TL;DR
This vulnerability in django Filer allows attackers to upload malicious files and execute stored cross-site scripting (XSS) attacks. It affects websites using django Filer versions from 3.0 up to (but not including) 3.3, potentially compromising user data and website integrity.
💻 Affected Systems
- django Filer
⚠️ 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
Attackers could upload malicious scripts, execute persistent XSS attacks to steal session cookies, deface websites, or redirect users to malicious sites, potentially leading to full account compromise.
Likely Case
Attackers upload malicious files containing JavaScript that executes when viewed by other users, allowing session hijacking, data theft, or limited website manipulation.
If Mitigated
With proper file type validation and content security policies, impact is limited to unsuccessful upload attempts or blocked script execution.
🎯 Exploit Status
Exploitation requires file upload access, which typically requires some level of authentication, but could be combined with other vulnerabilities or misconfigurations.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 3.3.0
Vendor Advisory: https://www.django-cms.org/en/blog/2024/11/19/security-updates-for-django-filer-and-django-cms-attributes-field/
Restart Required: Yes
Instructions:
1. Update django-filer package: pip install django-filer==3.3.0
2. Restart your Django application server
3. Verify the update with: pip show django-filer
🔧 Temporary Workarounds
Implement file type validation
allAdd server-side validation to restrict uploaded file types to safe extensions only
# Add to Django settings or file upload handler
ALLOWED_EXTENSIONS = ['jpg', 'png', 'pdf', 'txt']
Enable Content Security Policy
allImplement CSP headers to prevent execution of inline scripts
# Add to Django middleware or web server config
Content-Security-Policy: script-src 'self'
🧯 If You Can't Patch
- Disable file upload functionality in django Filer if not essential
- Implement web application firewall rules to block suspicious file uploads and script tags
🔍 How to Verify
Check if Vulnerable:
Check django-filer version: pip show django-filer | grep Version
Check Version:
pip show django-filer | grep Version
Verify Fix Applied:
Confirm version is 3.3.0 or higher: pip show django-filer | grep Version
📡 Detection & Monitoring
Log Indicators:
- Unusual file uploads with script extensions (.js, .html)
- Multiple failed upload attempts with suspicious filenames
- User agents attempting to upload executable content
Network Indicators:
- POST requests to file upload endpoints with script content
- Base64 encoded payloads in upload requests
SIEM Query:
source="web_logs" AND (uri_path="/filer/upload/" OR uri_path="/admin/filer/") AND (file_extension="js" OR file_extension="html" OR file_extension="htm")
🔗 References
- https://iltosec.com/blog/post/cve-2024-11404-medium-severity-file-upload-vulnerabilities-in-django-filer-323/
- https://pypi.org/project/django-filer/
- https://www.django-cms.org/en/blog/2024/11/19/security-updates-for-django-filer-and-django-cms-attributes-field/
- https://www.usom.gov.tr/bildirim/tr-24-1864