CVE-2024-46441
📋 TL;DR
This vulnerability allows attackers to upload arbitrary files, including malicious PHP scripts, to YPay 1.2.0 payment software. Attackers can achieve remote code execution by exploiting insufficient file extension validation in ZIP archive uploads. All YPay 1.2.0 installations with the vulnerable upload functionality accessible are affected.
💻 Affected Systems
- YPay
⚠️ 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
Complete system compromise with attacker gaining full control over the web server, accessing sensitive payment data, and using the server as a pivot point for further attacks.
Likely Case
Webshell deployment leading to data theft, defacement, or cryptocurrency mining malware installation.
If Mitigated
Limited impact with proper file upload restrictions, though some denial-of-service potential remains.
🎯 Exploit Status
Exploit requires admin access or ability to call vulnerable endpoint. GitHub issue shows proof-of-concept details.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Unknown
Vendor Advisory: https://github.com/kacins/YPay/issues/4
Restart Required: No
Instructions:
1. Monitor GitHub repository for official patch. 2. Apply patch when available. 3. Test functionality after patching.
🔧 Temporary Workarounds
Disable ZIP upload functionality
allRemove or restrict access to themePutFile endpoint in app/admin/controller/ypay/Home.php
# Comment out or remove themePutFile function calls in Home.php
Implement file extension validation
allAdd strict file extension whitelisting to Upload.php before processing ZIP contents
# Add extension validation logic to app/common/util/Upload.php
🧯 If You Can't Patch
- Restrict admin panel access to trusted IP addresses only
- Implement web application firewall rules to block suspicious file upload patterns
🔍 How to Verify
Check if Vulnerable:
Check if YPay version is 1.2.0 and review Upload.php for missing file extension validation in ZIP processing.
Check Version:
Check YPay configuration files or admin panel for version information
Verify Fix Applied:
Test ZIP upload with malicious file extensions - they should be rejected.
📡 Detection & Monitoring
Log Indicators:
- Unusual ZIP file uploads to themePutFile endpoint
- PHP file creation in unexpected directories
Network Indicators:
- POST requests to /admin/ypay/home/themeputfile with ZIP files
SIEM Query:
source="web_logs" AND uri="/admin/ypay/home/themeputfile" AND file_extension="zip"