改ざんを疑うべきサイン
WordPressの改ざんは、見た目がほとんど変わらないまま進んでいることも少なくありません。次のような症状がひとつでもあれば、改ざんを疑ってください。
- サイトを開くと、別のサイト(広告や詐欺サイトなど)に転送される
- Googleの検索結果に、身に覚えのないページや外国語のページが表示される
- ブラウザやGoogleから「このサイトは危険」という警告が出る
- 管理画面に、見覚えのない管理者ユーザーが増えている
- レンタルサーバーの会社から、不正なファイルやスパム送信についての連絡が来た
- サイトの表示が急に遅くなった、サーバーの容量が急に増えた
とくに「スマートフォンで検索結果から開いたときだけ別サイトに飛ばされる」ように、条件によって動きを変える改ざんもあります。自分のパソコンで開いて普通に見えても、安心はできません。
やってはいけないこと
慌てて動くと、かえって被害が長引くことがあります。次の3つは避けてください。
1. いきなりファイルを全部消す・上書きする
不正なファイルを消したくなる気持ちは当然ですが、何も残さずに消してしまうと、どこから侵入されたのかを調べる手がかりまで失われます。原因が分からないままでは、同じ入り口から何度でも入られてしまいます。
2. バックアップで元に戻して終わりにする
バックアップから戻すと見た目は直りますが、侵入された原因(古いプラグインや漏れたパスワードなど)はそのまま残ります。しかも、そのバックアップ自体がすでに改ざんされた後のものである可能性もあります。
3. WordPressのパスワードだけ変えて安心する
攻撃者は、WordPressの管理画面とは別に「裏口」となるファイルを仕込んでいることがよくあります。管理画面のパスワードを変えただけでは、裏口から再び入られてしまいます。
最初にやることと復旧の手順
手順1:被害が広がらないようにする
サイトを見た人が不正なサイトに飛ばされたり、ウイルスを仕込まれたりするのを防ぐため、まずはサイトを一時的に公開停止にするか、アクセスを制限します。レンタルサーバーの管理画面から、メンテナンス表示に切り替えたり、パスワードによるアクセス制限をかけたりできることが多いです。あわせて、サーバー会社にも状況を連絡しておきましょう。
手順2:今の状態をまるごと保存する
原因を調べるために、改ざんされた今の状態のままファイル一式とデータベースをダウンロードしておきます。サーバーのアクセスログやエラーログも保存してください。ログはサーバーによって保存期間が短い場合があるので、なるべく早めに取っておくのがポイントです。
手順3:すべてのパスワードを変える
次のパスワードを、まとめて変更します。ウイルスに感染していないパソコンから作業してください。
- WordPressのすべての管理者ユーザー
- FTP・SFTPのアカウント
- レンタルサーバーの管理画面
- データベースのユーザー(変更したら
wp-config.phpの設定も合わせて変更)
使い回しているパスワードがあれば、同じパスワードを使っている他のサービスも変更しておきましょう。
手順4:不正なファイルやユーザーを探す
改ざんでよく見つかるのは、次のような場所です。
- WordPressの管理画面にある、見覚えのない管理者ユーザー
- 最近になって更新された覚えのないPHPファイル
- 画像などを置く
wp-content/uploadsフォルダーの中にあるPHPファイル(通常、ここにPHPファイルは置かれません) wp-config.php、.htaccess、index.phpに書き足された、見慣れないコードevalやbase64_decodeなどを使った、意味の読み取れない長いコード
同じサーバーアカウントの中に複数のサイトがある場合は、他のサイトも必ず確認してください。ひとつのサイトから入られて、同じアカウント内の別のサイトまで書き換えられていることがよくあります。
手順5:きれいな状態に戻す
見つけた不正なファイルやユーザーを削除したうえで、WordPress本体、プラグイン、テーマを公式の配布元から入れ直します。使っていないプラグインやテーマは、この機会に削除しましょう。データベースの中に不正なコードやリンクが書き込まれていないかも確認します。
手順6:侵入経路をふさぐ
原因としてよくあるのは、次のようなものです。保存しておいたログやファイルの更新日時から、どれに当てはまるかを調べます。
- 更新されていない古いプラグインやテーマの脆弱性
- 推測されやすい、または使い回しのパスワード
- 同じサーバーアカウントにある、管理されていない別のサイト
手順7:Googleへの対応
Googleから「危険なサイト」と判定されている場合は、復旧後に Google Search Console の「セキュリティの問題」を確認し、問題を解決したうえで審査をリクエストします。検索結果に不正なページが残っている場合は、それらのURLが表示されなくなるまでの対応も必要です。
注意
手順4〜6は、専門的な知識がないと見落としが起きやすい作業です。不正なファイルがひとつでも残っていると、復旧したはずのサイトがまたすぐに書き換えられてしまいます。
再発を防ぐために
復旧したあとは、同じことが起きないように次の対策をしておきましょう。
- WordPress本体・プラグイン・テーマを常に最新に保つ(いちばん効果のある対策です)
- 使っていないプラグインやテーマを削除する
- 管理者ユーザーを必要最小限にし、推測されにくいパスワードにする
- ログイン画面に2段階認証やアクセス制限をかける
- レンタルサーバーのWAF(不正なアクセスを防ぐ機能)を有効にする
- 定期的にバックアップを取り、いざというときに戻せるようにしておく
- 同じサーバーアカウントの中に、放置しているサイトを残さない
自分での対応が難しいときは
改ざんへの対応は、時間がたつほど被害が広がりやすく、検索結果での評価にも影響が出ます。「どこから手をつければいいか分からない」「復旧したのにまた書き換えられた」という場合は、早めに専門家に相談するのがおすすめです。
TEMMA.TECでは、被害状況の調査から、不正なファイルの除去、侵入経路の特定、再発防止の対策まで対応しています。詳しくは保守・運用サポートのページをご覧ください。