
WAFやサイト侵害対策ツールを提供するSucuri は、WordPressの必須プラグイン mu-plugins(Must-Use Plugins)フォルダを悪用したマルウェア感染が相次いで確認されています。
このサイバー攻撃は非常に巧妙で、一般的な管理画面からは確認ができず、感染していても気づかないケースが多発しています。本記事では、侵害の兆候とその確認方法、そして具体的な対策に絞ってわかりやすく解説します。
目次
mu-pluginsを悪用したサイバー攻撃とは?
mu-pluginsは、WordPressの起動時に自動で読み込まれる特殊な必須プラグイン用のディレクトリです。通常の「プラグイン管理画面」に表示されないため、セキュリティチェックの盲点となっています。
攻撃者はこの特徴を利用し、以下のようなマルウェアを仕込んでサイトを乗っ取ろうとします。
-
外部サイトへのリダイレクト
-
リモートからのコード実行(Webシェル)
-
スパムコンテンツやアダルト画像の注入
-
リンクの乗っ取りによる詐欺サイト誘導
mu-pluginsとは
‘mu-plugins’ ディレクトリは、もともと WPMU (マルチユーザー用 WordPress) によって実装されたもので、サイト管理者がサイトネットワーク内のすべてのブログでプラグインをデフォルトで有効化する簡単な方法を提供するためのものでした。
must-use プラグインは、前段の通り管理画面のプラグインページにあるデフォルトのプラグイン一覧には表示されず、特別な Must-Use セクションに表示されページが読み込まれるたびに自動的に実行される特別なタイプの WordPress プラグインです。
通常の方法では無効化できず、無効化したい場合は wp-content/mu-plugins という must-use ディレクトリからファイルを削除する必要があります。
発見された3つの攻撃手口
フェイクアップデートによる外部リダイレクト
-
ファイル名:
wp-content/mu-plugins/redirect.php
-
内容:訪問者を悪意ある外部サイト(例:
updatesnow[.]net
)へ自動的にリダイレクト。 -
特徴:検索エンジンのクローラーや管理者は対象外にすることで検知を回避。
このスクリプトは、訪問者のUser-Agentを元に「botかどうか」を判別し、一般ユーザーのみをリダイレクトするように設計されています。
リモートコード実行を可能にするWebシェル
-
ファイル名:
wp-content/mu-plugins/index.php
-
内容:外部からPHPスクリプトをダウンロードして実行。
-
リスク:完全なサイト乗っ取り、バックドアの設置、データ窃取など。
この手法では、GitHub上のマルウェアスクリプトを読み込んで実行するため、内容は攻撃者側で随時変更可能。感染後の挙動も多様です。
スパムコンテンツ&リンクハイジャックの注入
-
ファイル名:
wp-content/mu-plugins/custom-js-loader.php
-
内容:すべての画像をアダルト画像に差し替え、リンククリック時に不正なポップアップを表示。
-
影響:サイトの評判失墜、SEOスパム、ユーザー離脱。
DOM操作によってページ上の全画像を置換し、外部リンクのクリックイベントも奪取され、悪意のあるURLに誘導されます。
侵害の兆候
侵害の兆候としては、ユーザーを外部の悪意のある Web サイトに無許可でリダイレクトするなど、サイト上での異常な動作やサーバリソースの使用率の上昇や
予期しないディレクトリへのコード追加、ディレクトリ名の変更があります。
侵害の兆候チェックリスト
サイトが感染している可能性がある場合、以下のような分かりやすい兆候が見られます。一つでも該当すれば要注意です。
表面的な異常
-
突然、訪問者が 知らない外部サイトにリダイレクトされる
-
ページ内の 画像が不適切な内容に置き換わっている
-
外部リンクをクリックすると、 怪しいポップアップが開く
管理側での異常
-
wp-content/mu-plugins
フォルダ内に 見覚えのないPHPファイルが存在する -
管理画面に存在しないはずの 不審なユーザー(管理者権限含む) が追加されている
-
サーバーの CPUやメモリ使用率が急激に上昇している(リソース消費型マルウェアの可能性)
-
.php
ファイルの 更新日付が最近になっている(特にmu-plugins内)
セキュリティログやアラート
-
WordfenceやSucuriなどのセキュリティプラグインで ファイルの改ざん通知
-
.htaccess
やwp-config.php
に 不審なコードの追記 -
Google Search Consoleでのセーフブラウジング警告
直ぐにできる対策
基本的に一般的な対策で回避する事が可能です
- WordPress本体・プラグイン・テーマは 常に最新状態にする
- 多要素認証(MFA)の導入
- 使用しないプラグインやテーマを削除
- ファイル権限は 原則「644(ファイル)/755(ディレクトリ)」
- リソース監視
一部参照