CVE-2024-51156

4.7 MEDIUM

📋 TL;DR

This CSRF vulnerability in 07FLYCMS V1.3.9 allows attackers to trick authenticated administrators into performing unintended actions by visiting malicious web pages. Attackers could delete system notification user records without the admin's knowledge. Only administrators with access to the vulnerable admin interface are affected.

💻 Affected Systems

Products:
  • 07FLYCMS
Versions: V1.3.9
Operating Systems: All operating systems running 07FLYCMS
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with the admin interface accessible and administrators logged in. The vulnerability is in the SysNotifyUser deletion functionality.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers could delete critical system notification configurations, potentially disrupting administrative communications and system monitoring capabilities.

🟠

Likely Case

Attackers delete notification user records, causing administrators to miss important system alerts and notifications.

🟢

If Mitigated

With proper CSRF protections, no unauthorized actions can be performed even if administrators visit malicious pages.

🌐 Internet-Facing: HIGH - The vulnerable admin interface is accessible via internet (erp.07fly.net:80), making it directly exposed to CSRF attacks from any malicious website.
🏢 Internal Only: MEDIUM - If the admin interface is restricted to internal networks only, risk is reduced but still present from internal malicious actors or compromised internal systems.

🎯 Exploit Status

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

CSRF attacks are well-understood and easy to weaponize. The GitHub reference shows the vulnerable endpoint, making exploitation straightforward for attackers with basic web knowledge.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: No vendor advisory found

Restart Required: No

Instructions:

No official patch available. Check the 07FLYCMS GitHub repository or vendor website for security updates. Consider implementing CSRF tokens in all admin forms and endpoints.

🔧 Temporary Workarounds

Implement CSRF Protection

all

Add CSRF tokens to all admin forms and validate them on the server side

Implement anti-CSRF tokens in PHP: session_start(); $token = bin2hex(random_bytes(32)); $_SESSION['csrf_token'] = $token;
Add to forms: <input type="hidden" name="csrf_token" value="<?php echo $token; ?>">
Validate on submission: if(!hash_equals($_SESSION['csrf_token'], $_POST['csrf_token'])) { die('CSRF validation failed'); }

Restrict Admin Interface Access

linux

Limit admin interface access to specific IP addresses or VPN-only connections

Apache: Require ip 192.168.1.0/24
Nginx: allow 192.168.1.0/24; deny all;
Firewall rule: iptables -A INPUT -p tcp --dport 80 -s 192.168.1.0/24 -j ACCEPT

🧯 If You Can't Patch

  • Implement SameSite cookies and require re-authentication for sensitive actions
  • Use Content Security Policy headers to restrict form submissions to same-origin only

🔍 How to Verify

Check if Vulnerable:

Check if the admin interface at /admin/SysNotifyUser/del.html?id=93 accepts POST requests without CSRF token validation. Test by creating a simple HTML form that submits to this endpoint and see if it works when an admin is logged in.

Check Version:

Check 07FLYCMS version in admin dashboard or configuration files. Look for version information in /config/ or /application/config/ directories.

Verify Fix Applied:

Test that the vulnerable endpoint now requires a valid CSRF token and rejects requests without proper tokens. Verify that SameSite cookie attributes are set and forms include anti-CSRF tokens.

📡 Detection & Monitoring

Log Indicators:

  • Multiple DELETE requests to /admin/SysNotifyUser/del.html from same session without corresponding form submissions
  • Admin actions occurring without preceding form POST requests in logs
  • Referer headers missing or pointing to external domains for admin actions

Network Indicators:

  • HTTP POST requests to admin endpoints with missing or invalid CSRF tokens
  • Admin interface requests originating from unexpected referrers or IP addresses

SIEM Query:

source="web_server" AND (uri="/admin/SysNotifyUser/del.html" AND method="POST") AND NOT (referer CONTAINS "erp.07fly.net")

🔗 References

📤 Share & Export