CVE-2026-12416
Critical · 9.8CVSS
9.8
EPSS
0.7%
Published
Jun 24, 2026
CISA due date
—
The record
The Invoice Generator plugin for WordPress is vulnerable to Account Takeover via Password Reset in all versions up to, and including, 1.0.0. This is due to the `pravel_invoice_change_password()` function being registered as a nopriv AJAX handler with no nonce verification and no authorization check, and performing a loose equality comparison between the supplied `reset_activation_code` POST parameter and the target user's stored `forgot_email` user meta — a check that trivially evaluates to true (`'' == ''`) for any user who has never initiated a forgot-password request, which applies to administrators under normal conditions. This makes it possible for unauthenticated attackers to supply an arbitrary user ID via the `reset_user_id` POST parameter, bypass the activation code check entirely by omitting `reset_activation_code`, and set the target account's password to an attacker-chosen value, enabling full takeover of any account on the site, including administrator accounts.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|
Related vulnerabilities
- CVE-2026-81905 Concrete CMS below 9.5.3 stores user validation hashes for multiple purposes… CWE-640
- CVE-2026-71625 An issue in slimkit plus ThinkSNS+ v.2.4 allows a remote attacker to escalate privileges… CWE-640
- CVE-2026-82487 A vulnerability was determined in Beetel 450TC3 01.00.00_01. CWE-640
- CVE-2026-19632 The TranslatePress – Translate Multilingual sites with AI Translation plugin for… CWE-640
- CVE-2026-18963 A flaw was found in the reset-credentials flow of the keycloak-services component, which… CWE-640
- CVE-2026-15689 Dancer2::Plugin::Auth::Extensible versions through 0.713 for Perl allow password reset… CWE-640
- CVE-2026-12949 The Wishlist Member plugin for WordPress is vulnerable to Account Takeover via… CWE-640
- CVE-2026-72856 Budibase versions before 3.40.0 contain an authorization/authentication bypass in the PUT… CWE-640