PaPoo
cover
technews
Author
technews
世界の技術ニュースをリアルタイムでキャッチし、日本語でわかりやすく発信。AI・半導体・スタートアップから規制動向まで、グローバルテックシーンの「今」をお届けします。

30以上のWordPressプラグインに仕込まれたバックドア事件を追う

キーポイント

何が起きたのか

WordPressのプラグインに、かなりイヤな事件が起きました。
米Anchor Hostingの記事によると、​30以上のWordPressプラグインが買収され、その後まとめてバックドア(裏口)を仕込まれたのです。

ざっくり言うと、バックドアとは「表向きは普通の機能に見えるけれど、攻撃者があとからこっそり入り込めるようにする隠し通路」のことです。防犯の世界で言えば、立派な玄関の裏に、犯人だけが知っている合鍵付きの勝手口が作られたようなものですね。

しかも今回の怖いところは、​1個のプラグインだけの話ではなく、同じ事業者が持っていた30以上のプラグイン全部がまとめて危険化したことです。これはかなりスケールが大きいです。正直、かなりぞっとします。

どんな攻撃だったのか

記事の筆者が調べたのは、WordPress管理画面に出た警告からでした。
ある顧客サイトで、WordPress.org Plugins Teamから「Countdown Timer Ultimate に不正アクセスを可能にするコードが含まれている」という通知が表示されたそうです。

ここでまず大事なのは、​WordPress.org側がすでに強制アップデートを配っていたことです。感染したプラグインは v2.6.9.1 に更新され、表向きは修正されたように見えました。
でも、問題はそれで終わりではありませんでした。

攻撃者は wp-config.php に本丸を仕込んでいた

wp-config.php は、WordPressサイトの超重要ファイルです。
データベース接続情報などが入っている、いわばサイトの心臓部みたいなものです。ここに悪意あるコードを入れられると、かなり厄介です。

今回の攻撃では、プラグイン内の wpos-analytics モジュールが外部に通信し、wp-comments-posts.php という本物っぽい名前のファイルをダウンロードして、そこから wp-config.php に大量のPHPコードを注入していました。

このあたり、かなり手が込んでいます。
ファイル名を wp-comments-post.php に似せるのも、いかにも「うっかり見逃してね」という感じで嫌らしい。攻撃者の工夫は本当に褒めたくないですが、技術的な執念だけはすごいです。

何がそんなに悪質なのか

注入されたコードは、単なるスパム配布ではありませんでした。

こうした内容を、​コマンド&コントロールサーバー(C2)​ から受け取って表示していたのです。
C2というのは、攻撃者が遠隔操作のために使う司令塔のようなサーバーです。

さらに厄介なのが、​Googlebotにだけスパムを見せる仕組みでした。
Googlebotとは、Googleの検索用ロボットのことです。つまり、サイト管理者には見えにくく、検索エンジンには見えるようにして、検索順位を不正に操作しようとしていたわけです。

これは本当にいやらしいです。
人間には見えないのに、検索エンジンには見せる。セキュリティ上の被害だけでなく、SEOの悪用までセットという、地味に最悪な組み合わせです。

しかもC2のドメイン解決にEthereum smart contractを使っていた

ここが今回の記事でいちばん「えっ」となる部分かもしれません。

攻撃コードは、C2のドメインをEthereum smart contract経由で解決していたそうです。
smart contract は、ブロックチェーン上で自動実行されるプログラムです。要するに、公開された改ざんしにくい仕組みに、次の接続先情報を隠していたわけです。

これが何を意味するかというと、​普通のドメイン停止措置では止めにくいということです。
攻撃者がsmart contractを書き換えれば、接続先を別ドメインに変えられてしまう可能性があるからです。

個人的には、ここはかなり「現代的な攻撃だな」と感じました。
昔ながらのマルウェアというより、Web、WordPress、SEO、ブロックチェーンを雑に全部混ぜたような、妙に今っぽい攻撃です。

バックドアは8か月眠っていた

この事件でさらに怖いのは、​バックドアが8か月もDormant(休眠)状態だったことです。

記事によると、プラグインのバージョン 2.6.7 で、@unserialize() を使ったPHP deserialization backdoor(PHPの復元処理を悪用したバックドア)が追加されていました。
unserialize() は、保存されたデータをPHPのオブジェクトに戻す関数ですが、扱いを間違えると危険です。外部から入ってきたデータをむやみに unserialize() すると、意図しない処理を呼ばされることがあります。

しかもこのコードは、見た目には「WordPress 6.8.2 との互換性チェック」のような、無害そうな変更説明で紛れ込んでいたそうです。
これ、かなり悪質です。開発者が信頼されやすい場所に、信頼を逆手に取ったコードを置いている。まさにサプライチェーン攻撃のいやらしさが詰まっています。

どうやって発覚したのか

image_0001.webp

筆者はバックアップを使って、いつ wp-config.php が改変されたかを調べています。
8つのバックアップを比べて、ファイルサイズの変化を追跡したそうです。かなり地道ですが、こういう調査は本当に大事です。

結果として、​改変は2026年4月6日、UTCで04:22〜11:06の間に起きたと絞り込まれました。
つまり、たった6時間44分のウィンドウです。こういう事後調査でここまで絞れるのは、プロの仕事だなと思います。

どうやってここまで大きな事件になったのか

もともとのプラグイン群は、2015年ごろからWP Online Supportというチームが開発していたものです。
その後、Essential Pluginというブランドに変わり、30以上の無料プラグインと有料版を展開していました。

ところが、2024年後半に収益が35〜45%落ち込み、事業全体がFlippaで売りに出されます。
FlippaはWebサイトやオンライン事業を売買できるマーケットプレイスです。で、買い手として現れた「Kris」という人物が、SEOやcrypto、オンラインギャンブル系のマーケティング背景を持っていたとされています。記事によれば、購入額は6桁ドルだったそうです。

ここはかなり示唆的です。
もちろん「買収=悪」ではありません。でも、​信頼を積み上げてきたソフトウェアが、事業売却を境に一気に武器化されるのは、サプライチェーン攻撃の典型的な怖さです。
一般ユーザーから見れば、突然よく知ったプラグインが“敵”になるわけですから、たまりません。

WordPress.orgはどう対応したのか

WordPress.orgのPlugins Teamは、2026年4月7日にEssential Pluginの全31プラグインを永久閉鎖しました。
そして翌日には、全サイトに対して v2.6.9.1 への強制アップデートをかけています。

この対応自体はかなり迅速です。
ただし、強制アップデートは「表面上の通信口を塞ぐ」ものではあっても、​すでに wp-config.php に埋め込まれたコードまでは完全に消せない場合があります。そこが難しいところです。

つまり、更新したから終わり、ではない。
本当に怖いのは、感染後にどこへ何が書き込まれたか、ですよね。

この事件の本質は「買収後の信頼の悪用」

今回の件でいちばん重要なのは、単なるマルウェア混入ではなく、​信頼されていたプラグイン事業が買収され、その信頼ごと悪用されたことです。

WordPressの世界では、プラグインは小さな拡張機能に見えて、実際には何十万、何百万というサイトに影響します。
だから、1つの人気プラグインが裏切ると被害は一気に広がります。

しかも今回は、

と、要素が多すぎます。
個人的には、​​「攻撃がうまい」というより「信頼の壊し方が洗練されすぎている」​と感じました。

以前にも似た事件はあった

記事は、2017年に「Display Widgets」プラグインが買収され、payday loan spam を仕込まれた事例にも触れています。
その買い手は「Daley Tias」という別名を使っていたとされ、少なくとも9個のプラグインを同様に侵害したそうです。

つまり、これは初めての手口ではないんです。
でも、今回はより大規模で、より計画的で、より長く潜伏していた。そこが本当に怖い。

どう対処すべきか

記事の筆者は、自分の管理する環境で影響を受けたプラグインをすべて修正したと書いています。
WordPress.orgの強制アップデートは応急処置ですが、wpos-analytics モジュール自体を削除した「patched version」を自前で作ったわけです。

一般のサイト運営者としては、少なくとも次を確認したいところです。

正直、WordPressは便利ですが、便利さの裏に「信頼の連鎖」があります。
その連鎖のどこか1か所が壊れると、被害は一気に広がる。今回の事件は、その典型例だと思います。

まとめ

この事件は、WordPressプラグインの世界で起きた大規模な供給網攻撃でした。
見慣れたプラグインが、買収をきっかけにまとめて武器化され、8か月眠ったバックドアが一斉に発動した。しかも狙いは単なる破壊ではなく、SEOスパムや検索エンジン操作まで含むかなり実利的なものです。

個人的には、ここで学ぶべきなのは「コードを読むべき」という話だけではないと思います。
ソフトウェアの信頼は、技術だけでなく、運営主体や事業の変化でも壊れる。だから、プラグインの更新通知を見るときは、バージョン番号だけじゃなく、その背後の“誰が今持っているのか”まで気にしたほうがいい。そういう時代になったのだと思います。


原文: Someone Bought 30 WordPress Plugins and Planted a Backdoor in All of Them.

同じ著者の記事