CVE-2026-12115: Counter Box WordPress Plugin PHP Object Injection Vulnerability
The Counter Box plugin for WordPress contains a vulnerability that allows administrator-level users to inject malicious PHP objects into the system through its import feature. The vulnerability exists in how the plugin processes imported data without properly validating it first. However, the injected objects themselves cannot cause direct harm unless other plugins or themes on the same WordPress site contain specific vulnerable code patterns (called POP chains) that could be chained together with this vulnerability. The injection occurs automatically when importing data or editing imported items, with no extra steps required from the attacker.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 6.6 MEDIUM · CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H
- Weaknesses (CWE)
- CWE-502
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-06-17 / 2026-06-17
NVD description (verbatim)
The Counter Box – Add Countdowns, Timers & Dynamic Counters to WordPress plugin for WordPress is vulnerable to PHP Object Injection in all versions up to, and including, 2.0.13 via deserialization of untrusted input . This makes it possible for authenticated attackers, with administrator-level access and above, to inject a PHP Object. No known POP chain is present in the vulnerable software, which means this vulnerability has no impact unless another plugin or theme containing a POP chain is installed on the site. If a POP chain is present via an additional plugin or theme installed on the target system, it may allow the attacker to perform actions like delete arbitrary files, retrieve sensitive data, or execute code depending on the POP chain present. Deserialization is triggered automatically upon the post-import redirect that renders the list table, and again when any item is opened for editing, requiring no additional navigation beyond the import action itself.
6 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-12115 is a PHP Object Injection vulnerability (CWE-502) in the Counter Box WordPress plugin affecting versions up to and including 2.0.13. The vulnerability stems from unsafe deserialization of untrusted input during the import process and subsequent list table rendering and item editing operations. An authenticated attacker with administrator privileges can craft malicious serialized PHP objects that are automatically deserialized without validation. While the vulnerability itself provides a deserialization gadget, exploitation depends entirely on the presence of a Property-Oriented Programming (POP) chain in co-installed plugins or themes. If such a chain exists, attackers could achieve arbitrary file deletion, sensitive data exfiltration, or remote code execution. The automatic triggering upon import and edit operations eliminates the need for additional user interaction beyond the initial malicious import.
Business impact
Organizations using Counter Box face a two-layered risk. First, the vulnerability requires administrator-level access, limiting the immediate threat to compromised admin accounts or malicious insiders. Second, actual impact depends on the broader WordPress ecosystem—specifically what other plugins and themes are installed. Sites with only well-vetted, actively maintained plugins and themes may face minimal risk; however, sites running legacy, abandoned, or vulnerable themes or plugins alongside Counter Box could face complete compromise including data theft, site defacement, malware injection, or complete loss of availability. The automatic nature of the exploit (triggered on import without extra steps) means that once a malicious import file reaches an admin user, exploitation is difficult to prevent.
Affected systems
The Counter Box – Add Countdowns, Timers & Dynamic Counters to WordPress plugin in all versions up to and including 2.0.13 is affected. This is a WordPress plugin distributed through the official plugin repository, making it potentially accessible to any WordPress site. The vulnerability requires an authenticated attacker with administrator-level or higher privileges, and true impact is only realized if co-installed plugins or themes contain exploitable POP chains. The exact number of installations is not specified in available data; verify current usage statistics through WordPress.org plugin repository metrics.
Exploitability
Exploitation requires administrator-level access, which significantly limits attack surface compared to unauthenticated or lower-privilege vulnerabilities. However, admin compromise through other means (credential theft, plugin vulnerabilities, supply-chain attack) is not uncommon in WordPress environments. The CVSS score of 6.6 (MEDIUM) reflects the high privilege requirement (High Attack Complexity) balanced against high potential impact (Confidentiality, Integrity, and Availability all rated High if a POP chain exists). The critical dependency on the presence of a POP chain in other software components means real-world exploitability varies dramatically by site configuration. No known POP chains have been identified in Counter Box itself, but exploitation becomes practical the moment any vulnerable complementary plugin or theme is installed.
Remediation
Immediately update the Counter Box plugin to a patched version beyond 2.0.13. Verify the patched version through the official WordPress plugin repository or the plugin vendor's release notes. Until patched, restrict Counter Box's import functionality to trusted administrators only, and audit admin account access logs for suspicious import activity. Additionally, conduct a comprehensive review of all installed plugins and themes to identify and remove any with known deserialization gadgets (POP chains) or other critical vulnerabilities. Consider disabling the import feature entirely if it is not actively required.
Patch guidance
Check the WordPress plugin repository for Counter Box for available updates beyond version 2.0.13. Apply the latest available patch through the WordPress admin dashboard under Plugins > Installed Plugins, or manually download and install from WordPress.org. After patching, verify the new version number and test the plugin's core functionality (countdown and timer rendering) to ensure no regression. Document the patch application date and version number for compliance records. If no patch is yet available at the time of reading, monitor the vendor's release channels and plan an immediate update as soon as one is published.
Detection guidance
Monitor WordPress admin logs and audit trails for imports performed via the Counter Box plugin, particularly those conducted by users with administrator accounts that were recently compromised or showing unusual activity patterns. Check for suspicious serialized data patterns in import files—look for patterns like 'O:' prefixes in text-based imports that indicate object instantiation. Review server-side logs for PHP errors or fatal exceptions during import operations, which may indicate attempted exploitation. If your WordPress environment has centralized logging or a security information and event management (SIEM) system, create detection rules for Counter Box import events combined with PHP object deserialization warnings. Additionally, audit installed plugins and themes for known deserialization gadgets or CVEs that could serve as POP chains.
Why prioritize this
This vulnerability should be prioritized based on your WordPress ecosystem composition. If your site runs only Counter Box with well-maintained, actively supported plugins and themes, remediation can follow a standard patch cadence (within 1–2 weeks). However, if your site runs legacy themes, abandoned plugins, or software with known vulnerabilities, prioritize this as urgent because the attack chain is now complete and realistic. The authentication requirement and dependency on POP chains mean this is lower priority than unauthenticated vulnerabilities, but the automatic exploitation on import and high potential impact (data theft, code execution) justify prompt attention.
Risk score, explained
The CVSS 3.1 score of 6.6 (MEDIUM) reflects a vulnerability with high potential impact (all three impact metrics scored High) but significant barriers to exploitation: administrator-level privileges required (High Attack Complexity due to privilege requirement) and no impact without a POP chain in co-installed software. The network-accessible vector and no user interaction requirement acknowledge that the import can be triggered by an authenticated admin without additional clicks. The score appropriately downgrades from CRITICAL due to the privilege barrier and POP chain dependency, landing in the MEDIUM range. Organizations should consider contextual factors: sites with vulnerable co-installed plugins should treat this as higher priority than the numerical score alone suggests.
Frequently asked questions
What is a POP chain and why does it matter for this vulnerability?
A Property-Oriented Programming (POP) chain is a sequence of method calls and property interactions embedded in PHP code that can be exploited through object deserialization. When a serialized malicious object is deserialized, its properties trigger methods in sequence, potentially leading to file operations, code execution, or data access. Counter Box itself contains no known POP chain, meaning the injected object alone cannot cause harm—but if another plugin or theme on your site contains one, that chain can be weaponized through this vulnerability. This is why two WordPress sites running identical Counter Box versions can have vastly different risk profiles.
Do I need to update if I'm the only administrator and I don't import data?
You should still update as a best practice, but your immediate risk is lower if you are the only admin and avoid the import feature. However, if your account is ever compromised, or if another user gains admin access, the vulnerability becomes exploitable. Additionally, 'administrator' access in WordPress can be granted by plugin updates or misconfigurations, so assume the privilege boundary may shift. Update within a reasonable maintenance window rather than delaying indefinitely.
How can I tell if other plugins on my site contain POP chains?
POP chains are not always publicly documented, making this difficult without security research. Your best defense is to use only actively maintained, widely-used plugins and themes from reputable vendors, keep all software updated to the latest versions, and remove any abandoned or legacy software. Run a WordPress security scanner (such as Wordfence, Sucuri, or similar) which often flags plugins with known vulnerabilities. If you discover a plugin with a publicly documented deserialization gadget, remove it immediately.
If a patch is not yet available, what should I do?
Until a patch is released, limit access to the Counter Box plugin to only essential administrators, disable the import feature if possible (or restrict uploads to trusted sources), and monitor admin activity closely. Audit your co-installed plugins and themes aggressively to remove any with known vulnerabilities. Enable two-factor authentication on all admin accounts to reduce the risk of unauthorized access. Subscribe to the plugin vendor's security notifications and apply the patch immediately upon release.
This analysis is based on vulnerability disclosure data current as of 2026-06-17. Patch versions, vendor advisories, and availability may change; consult the official WordPress plugin repository and Counter Box vendor documentation for the latest patch status and compatibility information. The presence or absence of POP chains in co-installed plugins is environment-specific and requires site-by-site assessment. This document does not constitute security advice tailored to your specific infrastructure; evaluate all recommendations within the context of your WordPress architecture, plugin inventory, and risk tolerance. No proof-of-concept code or exploitation methodology is provided herein. Security teams should coordinate updates with their change management and testing procedures before applying patches to production environments. Source: NVD (public-domain), retrieved 2026-07-26. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2026-10566MEDIUMMetaGPT Local Deserialization Vulnerability Exploit Available
- CVE-2026-34993MEDIUMAIOHTTP CookieJar Code Execution Vulnerability – Patch Guidance
- CVE-2026-48560MEDIUMSharePoint Deserialization Spoofing Vulnerability – CVSS 5.4
- CVE-2026-48775MEDIUMLangGraph SQLite Checkpoint Unsafe Deserialization
- CVE-2026-50589MEDIUMOpenStack Ironic Unauthenticated Denial of Service (MEDIUM, 5.3)
- CVE-2026-7566MEDIUMPHP Object Injection in LearnPress Backup & Migration Tool (CVSS 6.6)
- CVE-2025-11993HIGHWooCommerce Infinite Scroll Plugin PHP Object Injection – HIGH Severity
- CVE-2026-12191HIGHOpenpilot 0.11 Unsafe Pickle Deserialization – LOCAL RCE