Skip to main content
Mallory
CriticalPublic exploit

Unauthenticated Account Takeover in WordPress Kirki Plugin Password Reset API

IdentifiersCVE-2026-8206CWE-640

CVE-2026-8206 is a critical privilege escalation vulnerability in the Kirki – Freeform Page Builder, Website Builder & Customizer plugin for WordPress affecting versions 6.0.0 through 6.0.6. The flaw is in the plugin’s password reset workflow exposed through its custom REST API, specifically the forgot-password handling described as handle_forgot_password(). When a password reset request includes a valid username, the plugin resolves the target account by username but improperly accepts and uses an arbitrary email address supplied in the same request without verifying that it matches the account’s registered email. As a result, the application generates a valid password reset token for the victim account and sends the reset link to an attacker-controlled mailbox. The issue is exposed through an unauthenticated REST endpoint used for frontend account management, enabling remote exploitation against arbitrary registered users, including administrators.

Share:
For your environment

Are you exposed to this one?

Mallory correlates every CVE against your assets, your vendors, and active adversary campaigns. Know which vulnerabilities matter for you, not just which ones are loud.

ANALYST BRIEF

Impact, mitigation & remediation

What it means. What to do now. Patch path, mitigations, and the assume-compromise checklist.

Impact

What an attacker gets, and what they’ve been doing with it.

Successful exploitation allows unauthenticated takeover of arbitrary WordPress user accounts, including administrator accounts. Once an attacker resets the victim’s password, they can authenticate as that user and inherit the account’s privileges. In the case of administrator compromise, this can lead to full site compromise, including installation of malicious plugins, creation of rogue administrator accounts, modification of site content, deployment of web shells or backdoors, and access to site data and connected resources. The content also indicates active exploitation in the wild.

Mitigation

If you can’t patch tonight, do this now.

Until patching is completed, disable the Kirki plugin if feasible, restrict exposure of the vulnerable functionality where possible, and monitor for suspicious password reset activity and unauthorized account changes, especially creation of new administrator accounts or unexpected password resets. Use protective controls such as a WAF or equivalent filtering to block malicious requests to the vulnerable REST API endpoints if such coverage is available.

Remediation

Patch, then assume compromise.

Upgrade the Kirki plugin to version 6.0.7 or later. The fix validates that the supplied email address matches the target user’s registered email before generating a reset key and ensures reset emails are sent only to the legitimate account email address. If immediate patching is not possible, disable the plugin until it can be updated.
PUBLIC EXPLOITS

Exploits

2 valid exploits after Mallory filtered fakes, detection scripts, and README-only repos.

VALID 2 / 2 TOTALView more in app
CVE-2026-8206MaturityPoCVerified exploit

Repository contains a single Python exploit script and a README. The script is a multithreaded mass-exploitation tool targeting CVE-2026-8206 in the Kirki WordPress plugin (versions 6.0.6 and earlier). Its workflow is: normalize target URLs; detect Kirki installation/version by requesting plugin readme.txt or kirki.min.css under both 'kirki' and 'kirki-test' plugin directories; enumerate usernames (per README via /wp-json/wp/v2/users, with fallback to 'admin'); harvest nonce-like values from multiple public pages using many regex patterns; then submit POST requests to the vulnerable REST endpoint /wp-json/KirkiComponentLibrary/v1/kirki-forgot-password using the chosen username and an attacker-controlled email address. Successful exploitation is determined by a positive HTTP/application response indicating the email was sent, and successful targets are appended to res.txt. The code disables TLS verification warnings, uses requests plus ThreadPoolExecutor for concurrency, and is intended for bulk scanning/exploitation from a supplied targets file. This is a real exploit rather than a detector: its end goal is account takeover by rerouting password reset emails to the operator's mailbox.

Jenderal92Disclosed Jun 2, 2026pythonmarkdownweb
CVE-2026-8206-Poc-MaturityPoCVerified exploit

This repository contains a single Python exploit script, CVE-2026-8206.py, implementing an automated web attack against a WordPress Kirki forgot-password workflow. The script defines a KirkiAutoExploit class with three main stages: (1) build a list of likely public pages that may expose a nonce, (2) fetch those pages and regex-scrape an X-WP-ELEMENT-NONCE or generic nonce value from HTML/JavaScript, and (3) submit a crafted POST request to the Kirki REST endpoint /wp-json/KirkiComponentLibrary/v1/kirki-forgot-password. The POST body includes a target username and an attacker-controlled email address, plus a JSON-encoded email body referencing a reset_link token, with the apparent goal of redirecting the password reset email to the attacker. The script is operational rather than a mere PoC because it performs the full attack flow automatically, including nonce discovery, request construction, and response handling. It is not a framework module and has a single obvious entry point under the __main__ block, taking target URL, victim username, and attacker email as command-line arguments. No shellcode or post-exploitation payload is present; the exploit capability is account takeover via password reset abuse on exposed vulnerable Kirki versions.

O99099ODisclosed Jun 1, 2026pythonweb
EXPOSURE SURFACE

Affected products & vendors

Products and vendors Mallory has correlated with this vulnerability. Open in Mallory to drill down to specific CPE configurations and version ranges.

VendorProductType
ThemeumKirkiapplication

Vendor-confirmed product mapping. Mallory continuously reconciles this list against your asset inventory.

ACTIVITY FEED

Recent activity

37 sources tracked across advisories, community write-ups, and news. New activity surfaces here as Mallory finds it.

What this page doesn’t show

The version that knows your environment.

This page is what’s public. Mallory adds the parts that aren’t: which of your assets are affected, which adversaries are exploiting it right now, which detections to deploy, and what to do tonight.
Exposure mapping

Query your assets running an affected version, and investigate the blast radius.

Threat actor evidence

Every observed campaign linking this CVE to a named adversary.

Associated malware

Malware families riding this exploit, with evidence and IOCs.

Detection signatures

YARA, Sigma, Snort, and vendor rules, auto-deployed to your SIEM.

Vendor-by-vendor mapping

Cross-references every affected SKU, including bundled OEM variants.

Social activity32

Community discussion across Reddit, Mastodon, and other social sources.