{"id":"CVE-2026-100316","kind":"vulnerability","aliases":["CVE-2026-100316"],"related":[],"title":"WooCommerce VAT plugin: unauthenticated stored XSS via CF-IPCountry header","description":"The European VAT Compliance Assistant for WooCommerce plugin for WordPress is vulnerable to Stored Cross-Site Scripting via CF-IPCountry Header in all versions up to, and including, 1.36.10 due to insufficient input sanitization and output escaping. This makes it possible for unauthenticated attackers to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page. The malicious header value is persisted verbatim into order post-meta during a guest checkout, meaning no account or authentication is required to plant the payload.","summary":"The European VAT Compliance Assistant plugin for WooCommerce stores the CF-IPCountry request header verbatim into order metadata during guest checkout without sanitizing it. An unauthenticated attacker can plant a script that runs in the browser of any user who opens the affected order page, such as an administrator.","severity":"high","cvss":7.2,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["package","self-hosted","woocommerce","wordpress"],"not_affected_if":["newer-than-1.36.10","plugin-not-installed"],"how_to_check":"- Check whether the plugin is installed and its version is `1.36.10` or lower in the WordPress plugins screen or `wp plugin list`\n- unknown for other checks; the sources do not say which pages render the stored value","fix":"- Update the European VAT Compliance Assistant for WooCommerce plugin to a version above `1.36.10`\n- unknown whether a fixed version number is published; the sources do not say","status":"open","published_at":"2026-10-17T08:16:26+00:00","first_seen_at":"2026-10-23T21:57:14+00:00","triaged_at":"2026-10-25T03:29:27+00:00","updated_at":"2026-10-25T03:29:27+00:00","category":"package","confidence":0.7,"triage":{"at":"2026-10-25T03:29:27Z","model":"claude-haiku-5-5","output":{"fix":"- Update the European VAT Compliance Assistant for WooCommerce plugin to a version above `1.36.10`\n- unknown whether a fixed version number is published; the sources do not say","reach":"internet","title":"WooCommerce VAT plugin: unauthenticated stored XSS via CF-IPCountry header","impact":"medium","summary":"The European VAT Compliance Assistant plugin for WooCommerce stores the CF-IPCountry request header verbatim into order metadata during guest checkout without sanitizing it. An unauthenticated attacker can plant a script that runs in the browser of any user who opens the affected order page, such as an administrator.","category":"package","nicknames":[],"who_cares":["wordpress","woocommerce","self-hosted"],"confidence":0.7,"needs_auth":"no","worst_case":"Attacker script runs in staff browsers, enabling admin session takeover.","analyst_note":"Check the NVD entry and the plugin's changelog for the fixed version and which admin pages render the injected order meta.","how_to_check":"- Check whether the plugin is installed and its version is `1.36.10` or lower in the WordPress plugins screen or `wp plugin list`\n- unknown for other checks; the sources do not say which pages render the stored value","needs_analyst":true,"not_affected_if":["plugin-not-installed","newer-than-1.36.10"],"who_is_affected":"Sites running the European VAT Compliance Assistant for WooCommerce plugin at version 1.36.10 or earlier are exposed, because any guest can submit a checkout with a crafted CF-IPCountry header. The payload executes when someone views the affected order, so sites where only logged-out visitors reach checkout are still exposed if staff open those orders in the admin. Sites without the plugin, or running a newer version, can skip it.","user_interaction":"yes","needs_special_setup":"unknown","severity_if_unknown":"high"},"cost_usd":0.000672,"input_tokens":3411,"output_tokens":661,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-100316':14A,17A '-2026':13A,16A '1.36.10':104C 'access':133C 'account':155C 'administr':73B 'affect':67B 'arbitrari':122C 'assist':28B,78C 'attack':51B,119C 'authent':157C 'browser':60B 'cf':9A,35B,94C 'cf-ipcountri':8A,34B,93C 'checkout':45B,152C 'complianc':27B,77C 'cross':89C 'cross-sit':88C 'cve':12A,15A 'due':105C 'escap':112C 'european':25B,75C 'execut':129C 'guest':44B,151C 'header':11A,38B,96C,139C 'host':21B 'includ':103C 'inject':121C,135C 'input':108C 'insuffici':107C 'ipcountri':10A,36B,95C 'make':114C 'malici':138C 'mean':153C 'meta':148C 'metadata':42B 'open':65B 'order':41B,68B,145C 'output':111C 'packag':18B 'page':69B,126C,136C 'payload':163C 'persist':142C 'plant':53B,161C 'plugin':3A,29B,81C 'possibl':116C 'post':147C 'post-meta':146C 'request':37B 'requir':159C 'run':57B 'sanit':47B,109C 'script':55B,91C,124C 'self':20B 'self-host':19B 'site':90C 'store':5A,32B,87C 'unauthent':4A,50B,118C 'user':63B,132C 'valu':140C 'vat':2A,26B,76C 'verbatim':39B,143C 'version':99C 'via':7A,92C 'vulner':85C 'web':123C 'whenev':130C 'without':46B 'woocommerc':1A,22B,31B,80C 'wordpress':23B,83C 'xss':6A","nicknames":[],"mitigations":[],"who_affected":"Sites running the European VAT Compliance Assistant for WooCommerce plugin at version 1.36.10 or earlier are exposed, because any guest can submit a checkout with a crafted CF-IPCountry header. The payload executes when someone views the affected order, so sites where only logged-out visitors reach checkout are still exposed if staff open those orders in the admin. Sites without the plugin, or running a newer version, can skip it.","tier":"B","verified":{},"analyst_revisit_at":null,"first_public_at":"2026-10-17T08:16:26+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:L/I:L/A:N","cvss_by":"security@wordfence.com","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-100316","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-100316","severity":null,"published_at":"2026-10-17T08:16:26+00:00","modified_at":"2026-10-19T15:16:45+00:00","first_seen_at":"2026-10-23T21:57:14+00:00","fetched_at":"2026-10-23T22:28:55+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}