こんにちは。やまぐちなな(@nana_winter_web )です。
UWeb以外にもいくつかWordPressで自分のサイトを運営しています。
そのうちの1サイトが、2019年のゴールデンウイーク頃、改ざんされてしまったので、気づいたきっかけと、修正した流れを覚え書きとして残しておきたいと思います。
やられたこと
プラグインが原因で、別サイトに転送されるスクリプトを書かれました。
管理画面は問題なく使えるのですが、「やられたな」という感じです。
解決するためにやったこと
どこが原因かを探した流れは下記の通り。
- FTPで余計なファイルがないかをチェック
- テーマが改ざんされていないかをチェック
- 出力されたコードをチェック
最初に、出力されたコードをチェックした方が効率的でした。
1時間ほどで解決できたのですが、出力された怪しげなコードで検索すれば、もっと早く解決できたと思います。
FTPで余計なファイルがないかをチェック
同じ頃、余計なファイルを置かれるというスパムを見たところだったので、真っ先に確認しました。
ただ、ファイル数が多くて見切れないこと、元々あった何かが書き換えられた確率の方が高いかなということで次に進みました。
テーマが改ざんされていないかをチェック
テーマが書き換えられたのかと思いましたが、テーマ内に怪しげなスクリプトは見当たりませんでした。
出力されたコードをチェック
ChromeやFirefoxでは、コードを見たいページのURLの前に「view-source:コロン」を付けるとコードを見ることができるので、そこから怪しげなコードを探します。
頑張ればショートカットでも見ることができました。
開発者ツールは開いても別サイトに転送されてしまうので今回は使えません。
解決方法
出力されたコードに英数字の羅列が入った、怪しげなスクリプトタグが見つかりました。
検索してみると似たような被害にあった方の記事がいくつか見つかり、とあるプラグインが原因だということがわかりました。
プラグインは、公式ディレクトリのものを、安全性をリサーチしてからインストールしていましたが、年月が経って脆弱性が発見されたようです。
プラグインが原因なら、消せば直るかと思ったのですがそれだけでは解決せず、データベースに入っていた怪しげなコードを削除することで解決しました。
反省しているところ
- 使っているプラグインを把握しておくべきだった
- プラグインはインストールした後も脆弱性がないか確認しておくべきだった
今回、脆弱性が見つかったプラグインは、入れていることすら忘れていました。
プラグインの名前は別として、何にプラグインを使っているのかは把握しておけば良かったです。
また、プラグインはインストールした後も、脆弱性が発見されていないか、更新されているのかを確認した方が良かったです。
まとめ
プラグインのインストール前は、安全なのかを調べますが、インストールした後も定期的な調査が必要だと気付かされる一件でした。