CVE-2024-22601

8.8 HIGH

📋 TL;DR

FlyCms v1.0 contains a Cross-Site Request Forgery (CSRF) vulnerability in the /system/score/scorerule_save endpoint. This allows attackers to trick authenticated administrators into performing unauthorized actions by visiting a malicious webpage. Any organization using FlyCms v1.0 with administrative interfaces exposed is affected.

💻 Affected Systems

Products:
  • FlyCms
Versions: v1.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Requires administrative access to exploit; affects the scoring rule management functionality specifically.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete system compromise through administrative account takeover, data manipulation, or privilege escalation leading to full control of the CMS.

🟠

Likely Case

Unauthorized modification of scoring rules, configuration changes, or injection of malicious content that affects site functionality.

🟢

If Mitigated

Limited impact with proper CSRF protections, though some configuration changes may still occur if other vulnerabilities exist.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

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

Exploitation requires the victim to be authenticated as an administrator and visit a malicious page; CSRF attacks are well-understood and easy to weaponize.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: None provided in references

Restart Required: No

Instructions:

No official patch available; implement CSRF tokens in /system/score/scorerule_save endpoint and validate all POST requests.

🔧 Temporary Workarounds

Implement CSRF Protection

all

Add CSRF tokens to forms and validate them server-side for the affected endpoint.

Modify PHP files to include CSRF token generation and validation in /system/score/scorerule_save handling.

Restrict Access

linux

Limit access to the administrative interface using IP whitelisting or network segmentation.

Configure web server (e.g., Apache .htaccess or Nginx config) to allow only trusted IPs to /system/score/ paths.

🧯 If You Can't Patch

  • Disable the scoring rule functionality if not needed by removing or blocking access to /system/score/scorerule_save.
  • Use browser extensions or settings that block cross-site requests and enforce same-origin policies for administrative sessions.

🔍 How to Verify

Check if Vulnerable:

Test if POST requests to /system/score/scorerule_save lack CSRF token validation by attempting a request without proper tokens.

Check Version:

Check FlyCms version in configuration files or admin panel; typically in config files like config.php.

Verify Fix Applied:

Verify that CSRF tokens are required and validated for all POST requests to the endpoint; test with invalid tokens to ensure rejection.

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to /system/score/scorerule_save from unexpected IPs or without referrer headers.

Network Indicators:

  • Traffic patterns showing CSRF attack vectors, such as requests from malicious domains to the endpoint.

SIEM Query:

source="web_logs" AND uri="/system/score/scorerule_save" AND method="POST" AND (NOT referrer CONTAINS "expected-domain")

🔗 References

📤 Share & Export