人気WordPressプラグイン「OptinMonster」を標的とした大規模なサプライチェーン攻撃により、120万件以上のウェブサイトが実際の侵害にさらされています。
この攻撃はいずれもAwesome Motiveが開発するTrustPulseおよびPushEngageプラグインにも影響を及ぼしており、数百万件にのぼるWordPress環境での攻撃対象領域を大幅に拡大させています。
攻撃者はAwesome MotiveのCDNインフラを通じて配信される正規のJavaScriptファイルを改ざんし、個々のサーバーに直接侵入することなく、配信先のウェブサイトへ悪意あるコードを密かに注入することに成功しました。
この手法は、2024年に発生したPolyfillのサプライチェーン攻撃と同様のものです。上流の単一拠点への侵害が、大規模な悪用を可能にした点で共通しています。
OptinMonsterプラグインの脆弱性
注入されたJavaScriptペイロードは高度に選別的で、検出を回避するよう設計されています。通常の訪問者やヘッドレスブラウザなどの自動分析環境を回避し、ログイン中のWordPress管理者がサイトにアクセスした場合にのみ動作します。
一度起動されると、このマルウェアは環境チェックを実行し、WordPressのパスを特定してRESTおよびAJAXのナンスを抽出します。さらにRESTAPIエンドポイントや従来の管理者ワークフローなど複数のフォールバック機構を使用して、不正な管理者アカウントを作成します。
特筆すべき点として、固定の管理者アカウント(developer_api1)とともにランダム化されたdev_xxxxxxアカウントを作成し、一方の経路が失敗しても持続的なアクセスを確保する仕組みになっています。
アカウント作成後、マルウェアはWordPressダッシュボードとRESTAPIエンドポイントの双方から自身を隠蔽する巧妙なバックドアプラグインを展開します。
このプラグインは認証なしのアクセスによる完全なリモートコード実行を可能にし、攻撃者がシステムコマンドや任意のPHPコードを実行できるエンドポイントを露出させています。これは2026年6月13日にSansec Forensics Teamが公開した調査で明らかになりました。
このペイロードはさらに、XOR暗号化とBase64エンコーディングを使用して新規作成した認証情報とサイトのメタデータを窃取し、正規サービスのtidio.comを偽装したドメイン「tidio.cc」でホストされたコマンド&コントロール(C2)インフラへと送信します。
データ窃取の仕組みには、sendBeacon、fetchリクエスト、XMLHttpRequest、画像ビーコンといった複数のフォールバック経路が用意されており、確実なデータ送信を実現しています。
セキュリティ研究者は実際の悪用を確認しており、Patchstackは48時間以内に侵害されたサイトで不正な管理者アカウントの作成試行が270件以上に上ったと報告しています。
これらの試みの大部分はWordPress REST APIを悪用したもので、マルウェアの実行ロジックと一致しています。攻撃インフラは悪用開始前から稼働しており、悪意あるドメインは2026年4月に登録され、ホスティングプロバイダーのUltahostと関連付けられています。
感染期間は2026年6月12日に始まり、一部のCDNエッジには6月14日まで悪意あるスクリプトが残存していたとみられます。
Awesome Motiveはこのインシデントを認め、侵害の原因を社内システム上のUpdraftPlusプラグインの脆弱性を悪用して入手されたCDN APIキーの漏洩によるものと説明しています。
同社はその後、漏洩した認証情報を失効させ、CDNキャッシュを消去し、影響を受けたインフラを移行しました。ただし、攻撃の性質上、管理者がログインした状態で悪意あるスクリプトを読み込んだサイトはすべて侵害されたものと見なされます。
セキュリティ専門家は、プラグインの更新だけでは対策として不十分であると警告しています。被害を受けたサイトの管理者は、管理者アカウントを監査して不正なユーザーを削除するとともに、正規ツールを装った隠しプラグインなどをサーバーサイドのファイルでスキャンする必要があります。
攻撃者がすでに持続的なアクセスとコード実行能力を確立している可能性があるため、認証情報の完全なローテーションとインシデント対応手順の実施が強く推奨されます。
侵害の痕跡(IOC)
| カテゴリ | インジケーター | 詳細 |
|---|---|---|
| C2ドメイン | tidio.cc | 悪意あるコマンド&コントロールドメイン |
| C2 IP | 84.201.6.54 | Ultahost(AS214036)でホスト |
| C2エンドポイント | tidio.cc/cdn-cgi/p | データ窃取(OptinMonster/TrustPulse) |
| C2エンドポイント | tidio.cc/cdn-cgi/b | データ窃取フォールバック |
| C2エンドポイント | tidio.cc/cdn-cgi/l | ペイロード生成 |
| C2エンドポイント | tidio.cc/cdn-cgi/pe-p | データ窃取(PushEngageバリアント) |
| C2エンドポイント | tidio.cc/cdn-cgi/pe-b | データ窃取フォールバック |
| C2エンドポイント | tidio.cc/cdn-cgi/pe-l | ペイロード生成 |
| XORキー | jX9kM2nP4qR6sT8v | 盗取データのエンコードに使用 |
| バックドアマーカー | WPM File Manager & Shell | 悪意あるウェブシェルインターフェース |
| 不正管理者 | developer_api1 | 攻撃者が作成した固定の管理者アカウント |
| 不正メール | [email protected] | 固定管理者アカウントに関連 |
| 不正パターン | dev_xxxxxx | ランダム化された管理者ユーザー名 |
| 不正メールパターン | [email protected] | ランダム化された攻撃者メールアドレス |
| 悪意あるプラグイン | content-delivery-helper | 偽装プラグイン(v2.7.1) |
| 悪意あるプラグイン | database-optimizer | 偽装プラグイン(v2.9.4) |
注意: IPアドレスとドメインは、誤った名前解決やハイパーリンク化を防ぐために意図的に無効化(defang)されています(例: [.])。MISP、VirusTotal、SIEMなど、管理されたスレットインテリジェンスプラットフォーム内でのみ有効化(re-fang)してください。
翻訳元: https://gbhackers.com/optinmonster-plugin-vulnerability/