CVE-2023-46004

7.2 HIGH

📋 TL;DR

CVE-2023-46004 is an arbitrary file upload vulnerability in Sourcecodester Best Courier Management System 1.0 that allows attackers to upload malicious files through the update_user function. This could lead to remote code execution or system compromise. All installations of version 1.0 are affected.

💻 Affected Systems

Products:
  • Sourcecodester Best Courier Management System
Versions: 1.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: All default installations are vulnerable. No special configuration required for exploitation.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise with remote code execution, data theft, and potential lateral movement within the network.

🟠

Likely Case

Webshell deployment leading to unauthorized access, data manipulation, and further exploitation of the server.

🟢

If Mitigated

File upload blocked or sanitized, preventing malicious file execution while maintaining legitimate functionality.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires authentication but is straightforward once authenticated. Public proof-of-concept demonstrates the vulnerability.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Not available

Vendor Advisory: Not available

Restart Required: No

Instructions:

No official patch available. Consider upgrading to a newer version if available or implementing workarounds.

🔧 Temporary Workarounds

Implement File Upload Restrictions

all

Restrict file uploads to specific extensions and implement server-side validation

Modify update_user function to validate file extensions and MIME types
Implement file type verification before saving uploads

Web Application Firewall Rules

all

Deploy WAF rules to block malicious file upload attempts

Configure WAF to block uploads of executable files (php, asp, jsp, etc.)
Set up file upload size limits

🧯 If You Can't Patch

  • Disable file upload functionality in the update_user feature
  • Implement network segmentation to isolate the vulnerable system from critical assets

🔍 How to Verify

Check if Vulnerable:

Attempt to upload a file with malicious extension (e.g., .php) through the update_user function and check if it's saved without validation.

Check Version:

Check system version in admin panel or configuration files

Verify Fix Applied:

Test file upload with various extensions to ensure only allowed file types are accepted and saved.

📡 Detection & Monitoring

Log Indicators:

  • Unusual file uploads with executable extensions
  • Multiple failed upload attempts
  • Successful uploads of non-standard file types

Network Indicators:

  • HTTP POST requests to update_user endpoint with file uploads
  • Traffic patterns showing file uploads to unusual paths

SIEM Query:

source="web_server" AND (uri="/update_user" OR uri="*update_user*") AND (file_extension="php" OR file_extension="asp" OR file_extension="jsp")

🔗 References

📤 Share & Export