CVE-2025-8091
Executive Summary
CVE-2025-8091 is an information exposure vulnerability in the EventON Lite WordPress plugin (versions ≤ 2.4.6). The flaw resides in the add_single_eventon and add_eventon shortcodes, which fail to enforce proper access controls on which posts can be included in the shortcode output. This allows unauthenticated attackers to extract sensitive content from password-protected, private, or draft posts. The vulnerability has a CVSS score of 4.3 (Medium) and is currently unpatched by the vendor. No public exploit code or proof-of-concept is available, but the attack vector is straightforward via crafted HTTP requests.
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.
No signup required
Supply Chain & Package Security
This vulnerability affects the WordPress plugin ecosystem. Since EventON Lite is distributed via the official WordPress plugin repository, any site running version 2.4.6 or earlier is at risk. There is no known compromise of the plugin’s update channel, but the lack of a patch increases supply chain risk for organizations relying on this plugin.
CVSS Breakdown & Threat Level
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
- Base Score: 4.3 (Medium)
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: None
- Scope: Unchanged
- Confidentiality Impact: Low (partial disclosure of protected posts)
- Integrity Impact: None
- Availability Impact: None
Threat Level: Medium. While the confidentiality impact is limited, the ease of exploitation (no authentication, low complexity) makes it a viable target for information gathering.
Deep Dive & Mechanics
The vulnerability exists in the class-shortcodes.php file of the EventON Lite plugin. The add_single_eventon and add_eventon shortcodes use WP_Query to fetch posts but do not filter out non-public post statuses (e.g., private, draft, password). The shortcode parameters allow an attacker to specify post IDs or categories, and the plugin returns the post content without checking the user’s capabilities.
Root Cause: The plugin uses get_posts() or WP_Query with post_status set to any or without explicitly excluding protected statuses. This bypasses WordPress’s built-in access controls for password-protected and private posts.
Attack Flow:
- Attacker identifies a WordPress site using EventON Lite ≤ 2.4.6.
- Attacker crafts a URL with the shortcode
[add_single_eventon id=X]or[add_eventon]with manipulated parameters. - The plugin executes the query and returns the post content, including protected data.
- Attacker extracts sensitive information (e.g., draft content, password-protected posts).
Vulnerable vs. Patched Code
Vulnerable Code (EventON Lite ≤ 2.4.6):
// In class-shortcodes.php
function add_single_eventon($atts) {
$args = shortcode_atts(array('id' => ''), $atts);
$post = get_post($args['id']);
// No check for post_status or password protection
return apply_filters('the_content', $post->post_content);
}
Patched Code (Hypothetical fix):
function add_single_eventon($atts) {
$args = shortcode_atts(array('id' => ''), $atts);
$post = get_post($args['id']);
// Check if post is accessible
if ($post && ($post->post_status == 'publish' || current_user_can('read_post', $post->ID))) {
return apply_filters('the_content', $post->post_content);
}
return '';
}
Exploitation & Lab Setup
Red Team (Exploitation)
Prerequisites:
- WordPress site with EventON Lite ≤ 2.4.6 installed and active.
- At least one private, draft, or password-protected post.
Exploitation Steps:
- Enumerate post IDs (e.g., via sitemap or brute force).
- Send a GET request with the shortcode:
WhereGET /?add_single_eventon=1&id=123 HTTP/1.1 Host: target-site.com123is the ID of a private/draft post. - The response will contain the post content.
Example cURL command:
curl "http://target-site.com/?add_single_eventon=1&id=123"
Blue Team (Detection & Hardening)
Detection:
- Monitor for unusual shortcode parameters in HTTP requests (e.g.,
add_single_eventon,add_eventonwithidparameter). - Look for requests to
/wp-admin/admin-ajax.phpwith actioneventonand suspicious post IDs.
Hardening:
- Disable the plugin until a patch is available.
- Use a Web Application Firewall (WAF) to block requests containing
add_single_eventonoradd_eventonshortcodes. - Restrict access to the plugin’s shortcodes via WordPress filters.
Indicators of Compromise (IOCs)
- HTTP Requests: GET/POST requests containing
add_single_eventonoradd_eventonshortcodes withidparameter. - Log Entries: WordPress debug logs showing
WP_Querywithpost_statusset toanyorprivate. - File Changes: Unauthorized modifications to
class-shortcodes.php(if attacker patches locally). - Network Traffic: Outbound connections from the WordPress server to unknown IPs (if data exfiltration occurs).
Detection Engineering
YARA Rule
rule CVE_2025_8091_EventON_Lite_InfoExposure {
meta:
description = "Detects vulnerable EventON Lite plugin files"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-8091"
strings:
$vuln_func = "add_single_eventon" nocase
$vuln_func2 = "add_eventon" nocase
$unsafe_query = "get_post(" nocase
condition:
all of ($vuln_func*) and $unsafe_query
}
Sigma Rule
title: CVE-2025-8091 EventON Lite Information Exposure
id: 8a4b3c2d-1e5f-6a7b-8c9d-0e1f2a3b4c5d
status: experimental
description: Detects exploitation attempts of CVE-2025-8091 via shortcode parameters
author: Valters IT
logsource:
category: webserver
product: apache
service: access_combined
detection:
selection:
cs-uri-query|contains:
- "add_single_eventon"
- "add_eventon"
condition: selection
falsepositives:
- Legitimate use of the shortcode by authorized users
level: medium
Suricata Rule
alert http any any -> any any (msg:"CVE-2025-8091 EventON Lite Information Exposure Attempt"; flow:to_server; content:"add_single_eventon"; http_uri; nocase; content:"id="; http_uri; distance:0; classtype:attempted-recon; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Disable the plugin until a patch is released.
- Manually patch the vulnerable code by adding access checks (see patched code example).
- Use a WAF to block shortcode-based attacks.
Long-term:
- Monitor the WordPress plugin repository for an official update.
- Consider replacing EventON Lite with an alternative event management plugin that is actively maintained.
- Implement regular security audits for all WordPress plugins.
Workaround:
Add the following code to your theme’s functions.php to block the vulnerable shortcodes:
add_shortcode('add_single_eventon', '__return_empty_string');
add_shortcode('add_eventon', '__return_empty_string');
Valters IT
Securing Digital Frontiers
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.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.