Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessReach public order-pay endpoint
-
DeliveryEnumerate sequential order IDs
-
ExploitParse inline klarna_payments_params variable
-
ExecutionHarvest order_key and customer PII
-
ImpactExfiltrate store-wide order data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | No special conditions beyond having the Klarna for WooCommerce plugin (version ≤4.13.3) installed and active on a WordPress/WooCommerce store, with the order-pay endpoint publicly reachable as in a default storefront. Exploitation is remote and fully unauthenticated (PR:N) with no user interaction, and relies on WooCommerce's default sequential integer order IDs so no valid order_key or session is needed. The only practical limiting factors are that the store must run an affected version and expose checkout/order-pay pages publicly; there is no non-default configuration or privilege requirement that constrains an attacker. |
| Impact | This is a genuine, high-priority information-disclosure flaw rather than an inflated high-CVSS issue, because every exploitation signal aligns with easy mass abuse. The CVSS 7.5 vector (AV:N/AC:L/PR:N/UI:N) is fully consistent with the description: remote, network-reachable, no authentication (PR:N), no user interaction, and low complexity. The impact profile (C:H/I:N/A:N) correctly reflects confidentiality-only harm - bulk exposure of order secret keys and billing/shipping PII - with no integrity or availability effect. The description reinforces that complexity is genuinely low: WooCommerce order IDs are sequential integers and no order_key or session is needed, so the entire order table can be enumerated with scripted sequential GET requests, which maps closely to an SSVC 'automatable=yes' condition and a 'partial' technical impact (data read, not full control). No EPSS score, CISA KEV entry, or public POC is present in the supplied data, so exploitation is inferred from exploitability - not confirmed in the wild. The key tension to note: despite being trivially automatable, there is no KEV listing and no EPSS figure provided here, so real-world exploitation volume is currently unquantified and should be treated as high-potential but unconfirmed. Overall, prioritize patching for any store running this plugin, as the barrier to abuse is near-zero. |
| Exploit ScenarioDerived | An unauthenticated attacker points a script at the store's order-pay endpoint and iterates sequential order IDs, scraping the klarna_payments_params JavaScript variable from each response to harvest every order's secret order_key plus full billing and shipping PII (name, email, phone, address). Because no authentication, session, or valid order_key is required and complexity is low (AV:N/AC:L/PR:N/UI:N), the entire customer database can be enumerated in a single automated sweep. No public exploit is identified at time of analysis, but the technique requires only basic HTTP scripting. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 16, 2026
Unauthenticated order enumeration and PII disclosure in the Klarna for WooCommerce (Klarna Payments for WooCommerce) WordPress plugin affects all versions up to and including 4.13.3, allowing any remote attacker to retrieve the secret order_key plus full billing and shipping personal data for any order in the store. Because the plugin fails to verify authorization (CWE-862) before emitting order details inline as the klarna_payments_params JavaScript variable on the order-pay endpoint, and WooCommerce order IDs are sequential integers, a full store-wide order dump can be obtained with ordinary sequential GET requests and no session, order_key, or credentials. The CVSS vector confirms the exposure is remote, unauthenticated, and requires no user interaction (AV:N/AC:L/PR:N/UI:N), with high confidentiality impact only; exploitation is trivially automatable, though no public exploit code and no confirmed active exploitation were identified at time of analysis. This is a genuine high-priority information-disclosure flaw rather than an inflated high-CVSS score, since every signal aligns with easy mass abuse across any default storefront running an affected version.
RemediationAI
Upstream fix availability was confirmed through the plugin's Trac changeset 3740915 and a GitHub comparison between tag 4.13.3 and commit f5362605a9901b7f9264cfa3b22fd782a7a3097b, so the primary action is to update the Klarna for WooCommerce plugin to the first release that incorporates that change - upstream fix available (PR/commit); released patched version not independently confirmed, so verify the installed version against the vendor advisory at https://www.wordfence.com/threat-intel/vulnerabilities/id/c3abb96e-6ee2-4992-a122-9f661da9a4d6?source=cve before assuming remediation is complete, and consult https://plugins.trac.wordpress.org/changeset/3740915/klarna-payments-for-woocommerce/trunk/classes/class-kp-assets.php for the exact code delta. If an upgrade cannot be deployed immediately, the most effective compensating control is to deactivate the Klarna Payments/Klarna for WooCommerce gateway in the WooCommerce payment settings, which removes the vulnerable klarna_payments_params emission entirely at the cost of losing Klarna as a checkout option; alternatively, block or restrict public requests to the WooCommerce order-pay endpoint (for example via a WAF rule or webserver rule matching the order-pay query pattern) so that unauthenticated visitors cannot reach the page that leaks the parameters, understanding that this will also break legitimate guest order-pay and payment-return flows until a narrower rule based on referrer or session is devised. Rate limiting or bot filtering on order-pay requests can slow automated sequential enumeration but will not stop a determined attacker, since each request returns high-value data on its own and no authentication is required. Finally, treat any store that ran an affected version as a potential data-breach incident: the leaked order_key values are the shared secret used for guest order access, so rotate or invalidate affected orders' keys and inform customers whose billing and shipping PII (name, email, phone, address, postcode, city, region, country) may have been harvested.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a classic missing-authorization defect (CWE-862) in the WordPress plugin Klarna for WooCommerce, tracked under CPE cpe:2.3:a:klarnaplugin:klarna_for_woocommerce:*:*:*:*:*:*:*:*. References point to classes/class-kp-assets.php in tag 4.13.3, specifically the code around lines 159, 185, 198 and 204, where the plugin assembles and localizes the klarna_payments_params JavaScript object used to initialize the Klarna Payments checkout widget in the browser. That localization routine reads WooCommerce order data and injects it inline into the page without first checking whether the requesting user is entitled to view the order, so the sensitive fields - the order_key (WooCommerce's shared secret used to authorize guest access to an order) along with customer first name, last name, email, phone, street address, postcode, city, region and country - are exposed to whoever loads the endpoint. The underlying technology stack is WordPress plus WooCommerce, whose default order identifiers are monotonically increasing integers rather than random tokens; this design makes the missing check far more damaging than usual, because the attacker does not need to guess an unguessable identifier, only iterate small integers against the order-pay URL. The patch changeset (3740915) and the upstream GitHub comparison between tag 4.13.3 and commit f5362605a9901b7f9264cfa3b22fd782a7a3097b indicate the fix adds the authorization/capability verification and ownership check that was absent, aligning the plugin with the WordPress capability model rather than relying on obscurity of the order_key.
Know when Klarna For Woocommerce gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
Remote unauthenticated enumeration with no user interaction (AV:N/AC:L/PR:N/UI:N); high confidentiality from bulk PII/order_key exposure, with no integrity or availability impact.
Primary rating from Vendor (Wordfence).
CVSS VectorVendor: Wordfence
DescriptionCVE.org
The Klarna for WooCommerce plugin for WordPress is vulnerable to authorization bypass in all versions up to, and including, 4.13.3 This is due to the plugin not properly verifying that a user is authorized to perform an action. This makes it possible for unauthenticated attackers to access any order's secret order_key and full billing and shipping PII - including first name, last name, email address, phone number, street address, postcode, city, region, and country - emitted inline as the klarna_payments_params JavaScript variable, enabling full store-wide order enumeration. Because WooCommerce order IDs are sequential integers and no order_key or authenticated session is required, every order in the store can be trivially enumerated with sequential GET requests to the order-pay endpoint.
Executive ViewAI
The Klarna for WooCommerce payment plugin (all versions through 4.13.3) exposes customers' full order records - including names, billing and shipping addresses, and secret order keys - to anyone on the internet, with no login or credentials required, simply by incrementing order numbers. Because order IDs are sequential, a single low-skill attacker or automated script could harvest the entire store's customer order history and personal data in minutes, making this a store-wide data-breach exposure rather than an isolated flaw. Leadership should treat this as a privacy and regulatory risk (e.g., GDPR/CCPA notification obligations) affecting every customer who has placed an order, and act immediately given no vendor patch currently exists.
No vendor-released patch identified at time of analysis. Interim mitigations: deactivate the Klarna for WooCommerce plugin (or remove it if not required); apply a WAF/reverse-proxy rule blocking unauthenticated access to the WooCommerce order-pay endpoint and stripping the klarna_payments_params variable; enforce rate limiting and bot detection on sequential order-ID requests; restrict/obfuscate sequential WooCommerce order IDs; and monitor web logs for enumeration patterns.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
EUVD-2026-102650
GHSA-7vpq-x8hh-4w5f
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB