---
id: "CVE-2026-100316"
kind: "vulnerability"
aliases: ["CVE-2026-100316"]
title: "WooCommerce VAT plugin: unauthenticated stored XSS via CF-IPCountry header"
severity: "high"
cvss: 7.2
epss: null
exploited: false
status: "open"
category: "package"
products: []
ecosystems: []
tags: ["package", "self-hosted", "woocommerce", "wordpress"]
not_affected_if: ["newer-than-1.36.10", "plugin-not-installed"]
published_at: "2026-10-17T08:16:26+00:00"
first_seen_at: "2026-10-23T21:57:14+00:00"
updated_at: "2026-10-25T03:29:27+00:00"
sources: [{"source": "nvd", "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-100316", "first_seen_at": "2026-10-23T21:57:14+00:00"}]
---

# WooCommerce VAT plugin: unauthenticated stored XSS via CF-IPCountry header

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.

_Summary, check and fix written by a model from the sources; labelled as such._

## 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`
- 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`
- unknown whether a fixed version number is published; the sources do not say

## Timeline

- 2026-10-23T21:57:14+00:00 nvd https://nvd.nist.gov/vuln/detail/CVE-2026-100316

## From the sources

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.

---

_Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai_
