漫画村というサイトで、閲覧者のマシンリソースを使ってマイニングするCoinhiveのスクリプトを勝手に実行していたことが話題になりましたね。
漫画村の場合は意図的に設置していた可能性が高そうですが、ウェブサイトを改ざんされて意図せずにマイニングスクリプトを埋め込まれているサイトが昨年12月頃から増加しているそうです。
これから仮想通貨関連のブログを始めるという人も沢山いると思いますので、こういった部分の情報共有もできたらいいなと考えています。
マイニング用スクリプトを埋め込むマルウェア
セキュリティ企業のSucuriによると、マイニング用スクリプトを意図的に設置するウェブサイトがある一方で、マルウェアに感染し、マイニング用スクリプトを勝手に埋め込まれているサイトが増えてきているそうです。特にWordPressの場合は少なくない数のサイトで感染が確認されてるとのことです。
そのマルウェアとは、2017年11月に確認された「cloudflare[.]solution」です。
同社の説明によると、
cloudflare[.]solutionは、jQueryやGoogle Analyticsのコードに見せかけてマイニング用スクリプトを読み込ませるというマルウェアで、2017年11月2日時点で1833のサイトで感染が確認されています。
それから1カ月が経過して状況はさらに悪化。「cloudflare[.]solution」がキー入力内容を記録するキーロガーの機能も取り込んで進化し、感染サイト数は5496にまで増加しています。
このマルウェアはマイニング用のスクリプトを埋め込むのと、キーロガー(キーボードから入力した文字を攻撃者に送信するもの)が含まれているので、WordPressのログイン情報も盗まれている可能性が高いそうです。
現在はcloudflare[.]solutionドメインが停止されているため、マルウェア自体は機能していないかもしれません。
ですが、念の為サイトをチェックして、万が一コードが埋め込まれていた場合はコードを削除した後にWordPressへのログインパスワードを変更しておきましょう。
WordPressサイトのチェックとコードの削除方法
cloudflare[.]solutionはテーマのfunction.phpにコードを埋め込むので、Sucuri社は、funtion.phpにある「add_js_script」「add_js_scripts」に関連する「add_action」の行をすべて削除するように呼びかけています。
同社が提供するウェブサイトマルウェアスキャナでもチェックができます 。
先にも書いたようにcloudflare[.]solutionにはキーロガーも含まれているので、万が一コードが見つかった場合は、コードを削除した後にWordPressのパスワードも変更しておきましょう。
WordPressで考えられるマルウェアの感染ルート
考えられるルートの一つは、管理画面への不正ログインによる改ざん。
WordPressの場合、特に設定を変更していないと管理画面へのログインURLって「/wp-login.php」ですよね。
あとはユーザー名とパスワードが分かればログインできるわけですが、ユーザー名もauthorのアーカイブページを使っていると「/?author=数字」でユーザー名が分かっちゃいますよね。そしたら後はパスワードが分かればログインできちゃいます。
そして、ここのパスワードが弱いとブルートフォースで突破されてしまいます。僕もいくつかWordPressサイトを運用していますが、日々かなりの数の攻撃が海外から来ています^^;
正直、攻撃を止めるのは難しいと思うので、対策としては攻撃されても突破できないようにするしか無いと思います。具体的な対策としては、
- パスワードを推測されない強力なものにする。
- ログインURLを初期状態から変更する。
- ログイン画面に画像認証や、日本語の画像認証などを設定する。
- ログイン画面にBASIC認証をかける。
- 管理画面からのテーマ編集/プラグイン編集を無効にする。
- WordPress本体、テーマ、プラグインを最新のものにアップデートする。
- 不正ログイン試行に対するロックダウンをかける。
- アクセスログや、アクティビティログで不審なログインが無いか確認する。
などでしょうか。
上の5つは簡単にできるのでやっておいた方が良いと思います。
アップデートに関しては、複雑な作りや、プラグインを多用している場合はついつい目を背けたくなりますが、ここはがんばるしかないですね^^;
ロックダウンは挙動にもよりますが、静的ページやサイト外に飛ばしてしまえば不正アクセス試行によるサーバー負荷も軽減できるのでおすすめです。
考えられるもう一つのルートは、改ざんされた非公式テーマ・プラグインや、有料テーマ・プラグインの海賊版。
いくら不正ログインの対策をしてても、インストールしたテーマやプラグインに悪意のあるコードが埋め込まれていれば意味がないですよね。
実際に海外の人気有料テーマなどを検索してみると、無料でダウンロードできるサイトが沢山あります。そういったサイトで配布されているテーマやプラグインは改ざんされて、悪意のあるコードが埋め込まれている可能性が高いです。
開発者への敬意を払わないばかりか、自分のサイトを訪れる閲覧者にも迷惑をかけることに繋がりますので、海賊版の使用はやめときましょう!
また、WordPress公式からダウンロードできない非公式プラグインは、どういった仕様になっているかを素人が判断するのは難しいと思います。極力利用しないか、別の方法で似たようなことを実現できないか検討し直してみるといいと思います。意外と「やっぱりその機能必要ないわ」ってなることも多いです。
最後に
今回挙げたcloudflare[.]solutionに関しては現在停止してるっぽいですが、こういった類のものは常に新しいものが生み出されています。
仮想通貨が注目されるほど攻撃も増えていくと予想されるので、自分のサイトと、閲覧してくれるユーザーさんを守るためにも運営するサイトやブログのセキュリティに注意を払って行こうと思います。
参考
Hacked Websites Mine Cryptocurrencies
キーロガー&マイニング用スクリプト入りのマルウェアがWordPressで流行中、5500近いサイトに感染 - GIGAZINE