CVE-2026-6072: Oliver POS (WordPress plugin) · Insecure Direct Object Reference
Affects Oliver POS (WordPress plugin)Source CVE Database V5
Not known to be exploited · CVSS 6.5 Medium.
Data as of 30 Oct 2026, 06:59 UTC
- EPSS
- 0.4% chance of exploitation in 30 days – higher than 40% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:NExploitation evidence
Disclosed: evidence found.
CVE published 20 May 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 29 Oct 2026.
What to do
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| oliverposOliver POS – A WooCommerce Point of Sale (POS) | Affected
| Fixed in– |
AI-suggested
Until an official fix is available, users should avoid fresh installations without completing the connection flow that sets the authorization token. Monitoring for unusual API access and restricting access to the POS API endpoints by network controls may reduce exposure. Do not rely on the current authorization mechanism as it is vulnerable to bypass.
Description
The Oliver POS – A WooCommerce Point of Sale (POS) plugin for WordPress is vulnerable to Authorization Bypass Through User-Controlled Key in all versions up to and including 2.4.2.6. The plugin protects its entire /wp-json/pos-bridge/* REST API namespace through the oliver_pos_rest_authentication() permission callback, which uses a loose PHP comparison (==) to compare the attacker-supplied 'OliverAuth' header value against the 'oliver_pos_authorization_token' option. On fresh installations where the admin has not yet completed the connection flow, this option is unset (get_option returns false). Due to PHP's type juggling, the loose comparison '0' == false evaluates to true, allowing an unauthenticated attacker to bypass authentication by sending 'OliverAuth: 0'. This grants full access to all POS API endpoints, enabling attackers to read user data (including administrator details), update user profiles (including email addresses), and delete non-admin users. An admin account email reset can lead to site takeover.
References
- wordfence.com/threat-intel/vulnerabilities/id/ca6aa922-9c58-445c-b88a-3d1d1c95102c?source=cve (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/trunk/includes/class-pos-bridge.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/tags/2.4.2.6/includes/class-pos-bridge.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/trunk/includes/class-pos-bridge.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/tags/2.4.2.6/includes/class-pos-bridge.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/trunk/includes/class-pos-bridge-user.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/tags/2.4.2.6/includes/class-pos-bridge-user.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/trunk/includes/class-pos-bridge-user.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/tags/2.4.2.6/includes/class-pos-bridge-user.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/trunk/includes/class-pos-bridge-user.php (opens in a new tab)
- plugins.trac.wordpress.org/browser/oliver-pos/tags/2.4.2.6/includes/class-pos-bridge-user.php (opens in a new tab)