CVE-2026-89426: CWE-269 Improper Privilege Management in knitpay Knit Pay – Cashfree, Instamojo, Razorpay, PayPal and more
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.
AI Analysis
Technical Summary
CVE-2026-89426 is a privilege escalation vulnerability in the Knit Pay – Cashfree, Instamojo, Razorpay, PayPal and more WordPress plugin affecting all versions up to and including 9.6.1.0. The vulnerability is due to improper privilege management (CWE-269) where the maybe_update_user_role() function reads the target user role directly from an attacker-controlled Gravity Forms entry field configured via user_role_field_id. The role value is passed to WP_User::set_role() without validation against an allowlist of permitted roles, enabling authenticated attackers with Subscriber-level access or above to escalate their privileges to administrator by tampering with the hidden role field during form submission. Additionally, zero-dollar orders are marked as successful synchronously without requiring real payment, and when no Gravity Forms User Registration user can be resolved, the role assignment falls back to the submitter's own user ID, making exploitation feasible for any authenticated form submitter.
Potential Impact
Successful exploitation allows an authenticated user with Subscriber-level or higher access to escalate their privileges to administrator, gaining full control over the WordPress site. This can lead to complete compromise of the site, including data theft, site defacement, or further malicious activity. The vulnerability has a high CVSS score of 8.8, reflecting its critical impact on confidentiality, integrity, and availability.
Mitigation Recommendations
No official patch or fix is currently referenced in the provided data. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the affected plugin and consider disabling it if possible. Monitor for updates from the vendor and apply official patches promptly once released. Avoid using the plugin on publicly accessible sites without additional access controls.
CVE-2026-89426: CWE-269 Improper Privilege Management in knitpay Knit Pay – Cashfree, Instamojo, Razorpay, PayPal and more
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.
CVSS v3.1
Score 8.8high
Affected software
knitpay
Knit Pay – Cashfree, Instamojo, Razorpay, PayPal and more
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
CVE-2026-89426 is a privilege escalation vulnerability in the Knit Pay – Cashfree, Instamojo, Razorpay, PayPal and more WordPress plugin affecting all versions up to and including 9.6.1.0. The vulnerability is due to improper privilege management (CWE-269) where the maybe_update_user_role() function reads the target user role directly from an attacker-controlled Gravity Forms entry field configured via user_role_field_id. The role value is passed to WP_User::set_role() without validation against an allowlist of permitted roles, enabling authenticated attackers with Subscriber-level access or above to escalate their privileges to administrator by tampering with the hidden role field during form submission. Additionally, zero-dollar orders are marked as successful synchronously without requiring real payment, and when no Gravity Forms User Registration user can be resolved, the role assignment falls back to the submitter's own user ID, making exploitation feasible for any authenticated form submitter.
Potential Impact
Successful exploitation allows an authenticated user with Subscriber-level or higher access to escalate their privileges to administrator, gaining full control over the WordPress site. This can lead to complete compromise of the site, including data theft, site defacement, or further malicious activity. The vulnerability has a high CVSS score of 8.8, reflecting its critical impact on confidentiality, integrity, and availability.
Mitigation Recommendations
No official patch or fix is currently referenced in the provided data. Patch status is not yet confirmed — check the vendor advisory for current remediation guidance. Until a fix is available, restrict access to the affected plugin and consider disabling it if possible. Monitor for updates from the vendor and apply official patches promptly once released. Avoid using the plugin on publicly accessible sites without additional access controls.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- Wordfence
- Date Reserved
- 2026-09-11T18:34:23.074Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 6ab62744f7a7c541068154ca
Added to database: 09/25/2026, 07:48:20 UTC
Last enriched: 09/25/2026, 08:03:38 UTC
Last updated: 09/26/2026, 02:46:52 UTC
Views: 18
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.