CVE-2026-17581 WCPOS <= 1.9.14 - Authenticated (Shop Manager+) Code Injection via 'thermal' Template Engine
Authenticated Shop Managers can inject arbitrary PHP code via the thermal template engine, leading to remote code execution on the server.
- Exploited in the wild
- Not known
- Login needed
- An administrator
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- None listed
What is CVE-2026-17581?
CVE-2026-17581 is a high-severity code injection vulnerability in kilbot WCPOS – Point of Sale (POS) plugin for WooCommerce, published on 16 Aug 2026. An attacker needs administrator access to exploit it, with no action from the victim.
Official description
The WCPOS – Point of Sale (POS) plugin for WooCommerce plugin for WordPress is vulnerable to Code Injection via the 'thermal' Template Engine in all versions up to, and including, 1.9.14 due to the Receipt_Renderer_Factory dispatching templates with the 'thermal' engine to the Legacy_Php_Renderer instead of a safe thermal-specific renderer. This makes it possible for authenticated attackers, with Shop Manager-level access and above, to inject arbitrary PHP code into a template post that is subsequently written to a temporary file and executed via PHP's include(), resulting in remote code execution on the server. This requires the attacker to have Shop Manager-level access or above, as the template save path enforces a wcpos_template_settings nonce and the manage_woocommerce_pos capability check.
Weakness: CWE-94
Which versions are affected by CVE-2026-17581?
How do I fix CVE-2026-17581?
No fix has been published for CVE-2026-17581 yet. Limit exposure of the affected software until one is available.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2026-17581 being exploited?
There is no known exploitation of CVE-2026-17581 in the wild and no public exploit code.
Sources
Also known as GHSA-fq4g-jqvq-wx5r.