OCTOBER 9, 2026
Live Feed
Back to database
Case File

CVE-2026-89426

HIGH · CVSS 8.8 EPSS 0.47% Public Exploit

Source: NVD + CISA KEV + EPSS · Published 2026-09-25 · Last synced 2026-10-09

CyberRota Analysis

AI-Generated

The Knit Pay plugin for WordPress is vulnerable to privilege escalation, allowing authenticated users with Subscriber-level access and above to elevate their privileges to administrator. This vulnerability arises from the `maybe_update_user_role()` function, which improperly processes user role assignments from an attacker-controlled Gravity Forms entry, enabling exploitation without valid payment verification. WordPress site administrators using this plugin should prioritize patching to mitigate the risk of unauthorized access and potential system compromise.

Public Exploit Signal

A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.

Detected Signals
exploit

Note: these links are listed for security research and verification purposes only.

CVE
CVE-2026-89426
Severity
HIGH
CVSS
8.8
EPSS
0.47%
WordPress

Original NVD Description

The Knit Pay – Cashfree, Instamojo, Razorpay, PayPal and more plugin for WordPress is vulnerable to Privilege Escalation in all versions up to, and including, 9.6.1.0. This is due to the `maybe_update_user_role()` function reading the target role directly from an attacker-controlled Gravity Forms entry field — configured via the feed's `user_role_field_id` — and passing it to `WP_User::set_role()` without validating the supplied value against an allowlist of permitted roles. This makes it possible for authenticated attackers, with Subscriber-level access and above, to elevate their privileges to administrator by tampering with the hidden role field value at form submission time. Exploitation is further enabled by the fact that $0 orders are synchronously marked as SUCCESS during form submission without requiring a real payment, and when no GF User Registration user can be resolved, the role assignment target falls back to `$lead['created_by']` — the currently authenticated submitter's own user ID — making any authenticated form submitter an eligible exploitation target.