ハッカーは30以上の人気WordPressプラグインに遠隔コード実行バックドアを秘密裏に埋め込み、約8ヶ月間休止状態に保った後、wp-config.phpを改ざんしカモフラージュされたSEOスパムを大規模に注入するマルウェアを起動した。
この事件は「Essential Plugin」を中心としており、スライダー、カウントダウンタイマー、FAQ、ギャラリー、その他の一般的な機能に使用される30以上の無料プラグイン(有料アップグレード付き)のポートフォリオである。
クライアントが最初に問題に気付いたのは、WordPress.orgが「Countdown Timer Ultimate」の管理エリアセキュリティ通知をプッシュし、許可されていないサードパーティのアクセスを許可する可能性のあるコードについて警告したときである。
ディフェンダーが完全なセキュリティ監査を実行した時点で、WordPress.orgはすでにプラグインをバージョン2.6.9.1に強制更新していたが、侵害はすでにコアコンフィグレーションファイルに広がっていた。
レポートによると、この作戦は信頼されたプラグインベンダー買収を利用し、合法的な8年歴のビジネスを数十万のサイトに影響する大規模なサプライチェーン攻撃に変えた。
フォレンジック分析により、プラグインのwpos‑analyticsモジュールがanalytics.essentialplugin.comに通信し、wp-comments-posts.phpという名前の偽のコアファイルをダウンロードし、それを使用してwp-config.phpに大規模なPHPペイロードを注入していることが示された。
注入されたコードはコマンド&コントロール(C2)サーバーからスパムリンク、リダイレクト、偽のページを取得し、Googlebotにのみ表示し、攻撃をサイト所有者から見えなくしながら静かに検索結果を汚染していた。
8ヶ月後に兵器化された休止状態のRCE
履歴バックアップを使用したタイムライン分析により、wp-config.php注入ウィンドウを2026年4月6日、約7時間の期間内に特定した。
しかし、900以上のプラグインスナップショットのより詳細な確認により、実際のバックドアがはるか前の2025年8月8日にリリースされたバージョン2.6.7で導入されていたことが判明し、「WordPressバージョン6.8.2との互換性をチェック」という無害に聞こえる変更ログエントリの下にあった。
そのアップデートは次のものを含む約191行のPHPを静かに追加した:
- 攻撃者が制御するデータを取得し、直接unserialize()に渡すfetch_ver_info()メソッド。
- そのリモートデータによって提供される関数名を攻撃者が制御する引数で実行するversion_info_clean()メソッド、教科書的な任意の関数呼び出し。
- permission_callbackが常にアクセスを許可するように設定された認証されていないREST APIエンドポイント。
バックドアは約8ヶ月間休止状態のままであり、C2が影響を受けたEssential Pluginエクステンションを実行しているサイトに悪意のあるペイロードを配布し始めた2026年4月5〜6日頃に起動された。
削除を回避するために、C2ドメインはEthereumスマートコントラクト経由で解決され、攻撃者は感染したサイトの制御を失うことなくインフラを回転させることができた。
サプライチェーンの角度は明らかである。Essential Pluginは2015年に「WP Online Support」ブランドの下で始まり、インドを拠点とするチームによって構築され、2021年にポートフォリオが30以上のプラグインに成長するにつれてEssential Pluginに名前が変わった。
2024年後半までに、収益は推定35〜45%低下し、創業者Minesh Shahはマーケットプレイス Flippaでビジネス全体を売却にリストしていた。
2025年初頭に、SEO、暗号資産、オンラインギャンブルマーケティングの背景を持つ「Kris」としてのみ知られている買い手が、6桁の金額でビジネスを取得した。
数ヶ月以内に、WordPress.orgに新しいessentialpluginアカウントが表示され、元のオーサーヘッダーが変更され、2025年8月8日に、買い手の最初のSVNコミットがunserialize() RCEバックドアを追加し、それが単なる互換性チェックであると虚偽を述べていた。
WordPress.orgの緊急対応
攻撃が明るみに出ると、WordPress org Plugins Teamは素早く対応し、すべての31のEssential Pluginエントリを永久に閉鎖し、オーサープロフィールを効果的に公開検索から消し去った。
2026年4月8日、彼らはreturn文を挿入し任意の関数呼び出しをコメントアウトすることで電話帰宅ロジックを中和した強制自動更新(v2.6.9.1)をプッシュした。
しかし、クリーンアップはwp-config.phpに触れなかったため、すでにヒットしたサイトは管理者が手動で注入されたブロックを削除するまで、Googlebotに隠されたSEOスパムを配信し続けていた。
セキュリティ研究者はその後、通常の機能を保持しながらwpos‑analyticsモジュール全体を削除する「パッチ適用済み」プラグインビルドを公開し、ディフェンダーがwp-config.phpのサイズと内容を既知の良好なバックアップと比較して、残存する侵害を検出することをお勧めした。
購入したWordPressプラグインがマルウェア配信ビークルに変えられたのはこれが初めてではない。2017年、「Daley Tias」というエイリアスを使用する者がDisplay Widgetsプラグインを購入し、ペイデイローンスパムを注入し、後に同じ戦略で少なくとも9つのプラグインを侵害した。
Essential Pluginケースはパターンをはるかに大規模に繰り返す: 30以上のプラグイン、数十万のインストール、および合法的で公開された買収を通じて埋め込まれたバックドア。
セキュリティ専門家は、このケースはWordPressエコシステムの体系的な信頼ギャップを露呈していると主張している。所有権の変更後のコード確認のための正式なメカニズムはまだなく、プラグインが売却されるときのユーザーへの強制通知もなく、新しいコミッターが広くインストールされているプラグインを引き継ぐときの自動セキュリティレビューもない。
このバックドアが8ヶ月間検出されずに存在していることで、ガバナンス、監視、レビュープロセスが追いつかない限り、プラグインマーケットプレイスと公開M&Aディールがいかに容易に悪用されるかを示している。
翻訳元: https://gbhackers.com/trusted-wordpress-plugins/