CVE-2026-109414: Vitepos <= 3.6.1 - Authenticated (Vendor+) SQL Injection via 'src_by[].val' Parameter via 'bt' Operator
The Vitepos – Point of Sale (POS) for WooCommerce plugin for WordPress is vulnerable to blind SQL Injection via the 'srcby[].val.start / srcby[].val.end (operator 'bt')' parameter in all versions up to, and including, 3.6.1 due to insufficient escaping on the user supplied parameter and lack of sufficient preparation on the existing SQL query. This makes it possible for authenticated attackers, with vendor-level access and above, to append additional SQL queries into already existing queries that can be used to extract sensitive information from the database. This is an incomplete fix for a previously patched SQL injection (version 3.6.0), which addressed only the gt/lt/le/ge operators while leaving the 'bt' (BETWEEN) operator branch unpatched.
Affected Software
Event History
Frequently Asked Questions
Who can exploit this issue?
An attacker must be authenticated with vendor-level access or higher in WordPress. Unauthenticated users and accounts below the vendor role are not identified as able to exploit it.
What input must an attacker control?
The vulnerable input is the src_by[].val.start and src_by[].val.end parameter path when the bt (BETWEEN) operator is used. Exploitation relies on injecting SQL into an existing query through that operator branch.
Are installations running version 3.6.0 protected?
No. Version 3.6.0 fixed the gt, lt, le, and ge operator branches, but did not fix the bt operator branch. Versions through 3.6.1 are affected.
What could an attacker obtain?
The issue permits blind SQL injection that can be used to extract sensitive information from the WordPress database. The provided information does not indicate integrity or availability impact.