先日、初めての顧客と打ち合わせをしている最中、現状ウェブサイトの挙動がおかしかったのでマルウェアに感染しているのではないかと指摘したところ、結果は感染していました。
もう何度も(数十回)感染サイトを扱ってきたので、変な特殊能力がついてしまいましたが、ハッキングされたサイトを復旧させることはさほど難しくないので、要約を掲載します。
目次
まず落ち着く
初めて自分のサイトが感染したときはどうして良いかわからずパニック状態になってしまいますが、まずは落ち着いて対処することが大切です。必ずリカバリーできますので深呼吸をしてステップごとに進めれば大丈夫です。
オンラインスキャナーで感染状況を確認する
オンラインのマルウェアスキャナーを使って自社サイトがハッキングされているかどうかを確認します。現状ではSucuri一択です。
上記リンクにアクセスをし、URLを入力するとスキャン開始。
感染していなければ上記のようにグリーン表示されますが、感染している場合は赤で表示されます。
以下は感染したサイト状況での進め方です。
プラグインを全てオフにする
感染ファイルはプラグインフォルダ内に感染している場合が多いので使用しているプラグインは全てオフにします。
また既に多くのプラグインがインストールされていてどのファイルが感染しているかわからない場合はいったん古いプラグインを別のディレクトリ(例:plugins-old)などに移動させ、プラグインを全てオフにします。
サーバー/wp-content/plugins-old
テーマフォルダをオフにする
マルウェア感染はテーマがやられるケースも多いのでテーマフォルダ内の使用していないテーマは全て削除します。
Wordfenceをインストールする
Wordfenceプラグインをインストールします。
Wordfence>Scanに移動しScanボタンをクリックしてサイトの感染状況を調べます。
無料版であってもファイルが感染しているとCiriticalと赤で表示されます。黄色で表示されている部分はプラグインのバージョンが古いなど注意事項で、クリティカルではありません。
プラグインやテーマが感染している場合
プラグインやテーマが感染している場合は、いったん感染したプラグインまたはテーマ(現在使用中のものを除く)を削除して、新たなプラグインまたはテーマをインストールします。
現在使用中のテーマもしくはチャイルドテーマが感染している場合は、手作業で駆除をする必要があります。
Wordfenceで表示されたクリティカルエラーの赤字の部分をテキストエディタなどで削除し、元のサーバーに戻してやります。
WordPressコアファイルが感染している場合
WordPress本体のファイルが感染している場合は、最新版のWordPressをインストールして上書きします。それでも感染したファイルが見つかる場合は削除します。
制作したコンテンツが感染している場合
プラグインやテーマと同様、感染したファイルをテキストエディタなどで開き、感染部分を削除してクリーニングします。
ちなみにWordPressサイトのディレクトリのうち
wp-content フォルダ
.htaccess
wp-config.php
以外のディレクトリは全て上書きをしてしまって構いません。
以上が簡単な流れです。
定期的にバックアップをとっておく
運悪く感染した場合は少々手間がかかりますが、一般的な会社情報サイトなどでは更新頻度もさほど多くないので、1日1回か2回バックアップを取っておけば大丈夫でしょう。
バックアップはJetPackの有料サービスを使っても良いですし、私はAll in one WP MigrationのDropboxプラグインを使って、1日1回、Dropboxにサイト全体をバックアップするようにしています。
まとめ
WordPressサイトのマルウェア感染は以前ほどではないにしろやはり不定期的に流行しています。
いざという時に慌てないための準備(バックアップ)を行い、いざ感染をした場合も落ち着いて対処することで対応可能です。
特にwp-contentフォルダ,.htaccess,wp-config.phpさえ保護しておけばサイトのレストアは可能ですので落ち着いて対処してください。