{"id":56726,"date":"2026-06-15T10:56:28","date_gmt":"2026-06-15T14:56:28","guid":{"rendered":"https:\/\/overcentral.com\/en\/?p=56726"},"modified":"2026-06-15T10:56:28","modified_gmt":"2026-06-15T14:56:28","slug":"wordpress-supply-chain-attack-optinmonster","status":"publish","type":"post","link":"https:\/\/overcentral.com\/en\/wordpress-supply-chain-attack-optinmonster\/","title":{"rendered":"Supply-chain attack hits OptinMonster plugin on 1.2 million WordPress sites"},"content":{"rendered":"<p>A sophisticated supply-chain attack targeting the WordPress plugins <a href=\"https:\/\/optinmonster.com\/\" target=\"_blank\" rel=\"sponsored noopener noreferrer\" data-iacss-external=\"1\">OptinMonster<\/a>, TrustPulse, and PushEngage has exposed more than 1.2 million websites to potential compromise after malicious JavaScript was injected into files distributed through official CDN infrastructure. The malware, which activated only when a logged-in WordPress administrator visited an affected site, created hidden administrator accounts and installed stealthy backdoors capable of granting attackers full remote control.<\/p>\n<h2>Attack Vector: Compromised CDN API Key Enabled Mass Distribution of Malicious Code<\/h2>\n<p>The campaign was discovered by security firm <a href=\"https:\/\/sansec.io\/\" target=\"_blank\" rel=\"noopener noreferrer\" data-iacss-external=\"1\">Sansec<\/a>, which reported on <a href=\"https:\/\/overcentral.com\/en\/nintendo-switch-2-star-fox-june-games\/\" title=\"Nintendo Switch 2 gets Star Fox and more major games in June\" data-iacss-internal=\"1\">June<\/a> 13 that malicious code was being served through CDN-hosted JavaScript files relied upon by all three plugins. Rather than compromising individual websites directly, the attackers exploited trusted plugin resources to reach a vast number of WordPress installations simultaneously.<\/p>\n<p>OptinMonster and TrustPulse owner <a href=\"https:\/\/awesomemotive.com\/\" target=\"_blank\" rel=\"sponsored noopener noreferrer\" data-iacss-external=\"1\">Awesome Motive<\/a> confirmed the incident, attributing the breach to the compromise of a CDN API key. According to the company&#8217;s investigation, attackers exploited a known vulnerability in a third-party plugin called UpdraftPlus running on a marketing website server. After gaining access to that server, the attackers located credentials for the company&#8217;s CDN account and used them to modify JavaScript files served to customer websites. Importantly, Awesome Motive stated that its application servers, source code repositories, and customer account data systems were hosted separately and <a href=\"https:\/\/overcentral.com\/en\/grow-up-show-sunflower-circus-trailers\/\" title=\"GROW UP SHOW: Sunflower Circus Drops Main Visual and Trailers Before July 4 Premiere\" data-iacss-internal=\"1\">show<\/a> no evidence of unauthorized access.<\/p>\n<h2>Technical Analysis: How the Malware Operated<\/h2>\n<p>Sansec&#8217;s analysis revealed that the injected JavaScript executed only when a logged-in WordPress administrator visited an affected website. Once activated, the malware performed three primary actions: it gathered WordPress security tokens, attempted to create administrator accounts, and installed a hidden plugin that provided attackers with persistent remote access.<\/p>\n<h3>Hidden Administrator Accounts and Credential Harvesting<\/h3>\n<p>Researchers observed the malware creating a fixed administrator account named <strong>developer_api1<\/strong> linked to <strong>customer1usx@gmail.com<\/strong>, alongside randomized <strong>dev_xxxxxx<\/strong> administrator accounts. Site information and stolen credentials were then transmitted to the attacker-controlled domain <strong>tidio.cc<\/strong>, a lookalike of the legitimate customer support platform Tidio.<\/p>\n<h3>Stealth Backdoor Plugin Design<\/h3>\n<p>The installed backdoor plugin was engineered to evade detection by hiding from WordPress plugin listings, user interfaces, update checks, and API responses. Sansec identified two disguises used during the campaign: <strong>Content Delivery Helper<\/strong> and <strong>Database Optimizer<\/strong>. The plugin also exposed unauthenticated web shell and code execution functionality, effectively granting attackers unrestricted control of compromised sites.<\/p>\n<h2>Timeline and Exposure Window<\/h2>\n<p>The first malicious activity was observed on <a href=\"https:\/\/overcentral.com\/en\/evangelion-sanrio-plush-june-12-japan\/\" title=\"Evangelion x Sanrio Plush Drops June 12 in Japan\" data-iacss-internal=\"1\">June 12<\/a>, with infected code removed from OptinMonster and TrustPulse resources shortly afterward. Sansec reported that some PushEngage CDN nodes continued serving the malicious payload until June 14. Awesome Motive described the exposure window as lasting only a few hours on June 12, although the company continues to verify the exact timeline using CDN logs.<\/p>\n<h2>Remediation and Response<\/h2>\n<p>Awesome Motive reports that it has revoked and rotated the compromised CDN credentials, remediated and migrated the affected marketing server, purged malicious files from the CDN, and launched a broader security review.<\/p>\n<h2>How to Check If Your Site Is Compromised<\/h2>\n<p>Website administrators running the affected plugins should immediately check for unauthorized accounts such as <strong>developer_api1<\/strong> or unexpected <strong>dev_xxxxxx<\/strong> users. They should also inspect the <strong>wp-content\/plugins<\/strong> directory for hidden plugins named <strong>content-delivery-helper<\/strong> or <strong>database-optimizer<\/strong>.<\/p>\n<h2>What Affected Users Should Do Now<\/h2>\n<p>If any indicators of compromise are found, administrators should immediately remove the backdoor plugin, rotate all passwords, API keys, database credentials, and WordPress security keys. Assume that attackers obtained full administrative access to the site and act accordingly \u2014 this means auditing all user accounts, reviewing recent changes to site files and database entries, and monitoring for unusual activity. Even if no signs of compromise are detected, enabling multi-factor authentication for all administrator accounts and implementing a robust, regularly updated backup strategy are prudent measures. For ongoing protection, consider deploying a reputable security plugin that includes file integrity monitoring, firewall rules, and real-time threat detection to catch similar supply-chain attacks early in the future.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>A sophisticated supply-chain attack targeting the WordPress plugins OptinMonster, TrustPulse, and PushEngage has exposed more than 1.2 million websites to potential compromise after malicious JavaScript was injected into files distributed through official CDN infrastructure. The malware, which activated only when a logged-in WordPress administrator visited an affected site, created hidden administrator accounts and installed stealthy [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":90690,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"https:\/\/cards.overcentral.com\/cards\/en\/56726.png","fifu_image_alt":"Supply-chain attack hits OptinMonster plugin on 1.2 million WordPress sites","footnotes":""},"categories":[349],"tags":[],"class_list":["post-56726","post","type-post","status-publish","format-standard","has-post-thumbnail","category-articles"],"fifu_image_url":"https:\/\/cards.overcentral.com\/cards\/en\/56726.png","fifu_image_alt":"Supply-chain attack hits OptinMonster plugin on 1.2 million WordPress sites","_links":{"self":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/posts\/56726","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/comments?post=56726"}],"version-history":[{"count":0,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/posts\/56726\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/media\/90690"}],"wp:attachment":[{"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/media?parent=56726"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/categories?post=56726"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/overcentral.com\/en\/wp-json\/wp\/v2\/tags?post=56726"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}