CVE-2024-46441

8.8 HIGH

📋 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

Products:
  • YPay
Versions: 1.2.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires admin panel access or ability to trigger themePutFile functionality.

⚠️ 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.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. 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.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

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

all

Remove 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

all

Add 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"

🔗 References

📤 Share & Export