この記事は、不正アクセスによるWordPressサイトの改ざんなどの被害に遭った場合の備えとして、ご自身でできることを事前に知っておくことを目的にしています。この記事を読むことで、プラグイン Wordfence Security – Firewall & Malware Scan のスキャン機能の基本的な使い方を知ることができます。

WordPressサイトが不正アクセスを受けると、不審なコードが埋め込まれたり、プログラムを改ざんされたりなどの被害に遭うだけでなく、他サイトへの攻撃の踏み台として利用されることもありますので、注意が必要です。

改ざんされた時の基本的な復旧手順は、以下の記事で詳しくご紹介しています。復旧には大変な手間がかかる可能性があることを認識しておきましょう。

Wordfence Security – Firewall & Malware Scan とは?

Wordfence Security – Firewall & Malware Scan は、WordPressサイトのセキュリティ機能を強化できるプラグインです。複数の機能が一つのプラグインとしてまとめられています。一部の機能は有償版にアップグレードする必要がありますが、無料版でも多くの機能を利用できます。

Wordfence Security の主な機能は以下です。この記事では、マルウェアスキャンに絞ってご紹介します。ちなみにマルウェアとは、悪意のあるソフトウェアや悪質なコードの総称です。

  • ログインセキュリティ:ブルートフォースアタック(ユーザ名やパスワードを解読するための総当たり攻撃)からの保護、reCAPTCHA(botなどによる悪質なアクセスからサイトを守る)の設置、IPアクセスを制御する
  • WAF(Web Application Firewall):Webアプリケーションの脆弱性を悪用したトラフィックを見分けてブロックし、Webサイトを保護してくれる
  • 二要素認証:WordPressのログイン画面に二要素認証(二段階認証)を設置してセキュリティを高める
  • マルウェアスキャン:悪意のあるファイル、改変されたファイル、不正なURLなどを検出してくれる

マルウェアスキャンはどんな時に使う?

Wordfenceのスキャン機能は以下のような時に使えて便利です。

  • 不正ログインなど今のところ被害には遭っていないが、スキャン機能を使ってみたい
  • 改ざんの被害に遭ってしまいひとまず復旧したが、念の為スキャンして他に不正なファイルがないかを確認したい
  • バックアップデータを用いて復旧したが、そのデータがそもそも既に改ざんされていないかを確認したい

Wordfence Security – Firewall & Malware Scan のインストール

インストールして有効化

ダッシュボードの【プラグイン】>【新規追加】でキーワードに【Wordfence】と入力してください。Wordfenceで検索するといくつか検索結果に出てきますが「Wordfence Security – Firewall & Malware Scan」を選んでインストール後、有効化してください。

STEP
1

セキュリティアラート通知先のメールアドレスを設定

Wordfence Security」を有効化すると、このような画面が表示します。セキュリティアラートを通知する送信先メールアドレスを入力してください。

メーリングリストに参加して、セキュリティアラートとWordfenceからのニュースを受信するかどうかについては「Yes」「No」のどちらかを選択します。利用規約とプライバシーポリシーを読んで同意のうえで「CONTINUE」をクリックしてください。

STEP
2

設定画面を終了

今回は有償版へアップグレードしないで「No Thanks」をクリックし、ひとまず設定を完了してください。

WAFのステータスと保護レベルについて

この記事ではWordfenceのWAFについては省略しますが、Wordfenceをインストール・有効化後に自動で設定されるWAFのステータスと保護レベルについて簡単に説明しておきます。

WAFのステータス

Wordfenceをインストール・有効化すると、WAFのステータスが、自動的に「Learning mode(学習モード)」として7日間アクティブとなります。この学習モードは、悪意のないものまでをブロックする誤検知によってサイトに問題を引き起こすのを防ぐためにあり、Wordfence側の学習期間となります。

All Options > Firewall Options > Basic Firewall Options の画面

また、デフォルトでは「Automatically enable on」にチェックが入っています。7日経過すると、WAFのステータスは自動的に「Enabled and Protecting(有効化と保護)」に切り替わりますので、ご留意ください。「Disabled」にするとWAFは無効となります。

なお、サイトが最近ハッキングされた、またはサイトが今現在攻撃を受けている場合は、学習モードではなく「Enabled and Protecting(有効化と保護)」に切り替えるなど、状況に応じて設定を変更するとよいです。詳細は、Basic Firewall Options の画面にある Learn More よりご確認ください。

WAFの保護レベル

Wordfenceをインストール・有効化すると、WordfenceのDashboard上に以下のようなメッセージが表示されます。WAFの保護レベルは「Basic WordPress Protection(基本的なWordPress保護)」が自動で設定されますが、「CLICK HERE TO CONTINUE」ボタンよりWAFの最適化を行うことができます。スキャン機能を利用するのみなら、WAFの最適化は必要ありません。

WAFの最適化について詳細は、メッセージ内の click here for help から確認できます。

STEP
3

Malware Scan の使い方

ダッシュボードの【Wordfence】 > 【scan】 をクリックしてください。このような画面が表示されます。「Scan Options and Scheduling」をクリックしてください。スキャンのオプションを確認してみます。

Scan Scheduling:スキャンスケジュール

デフォルトの「ENABLED」のままで構いません。

Wordfenceにはフルスキャンとクイックスキャンの2種類があります。クイックスキャンは、限られた量のチェックを実行します。フルスキャンは、現在選択しているスキャンタイプ(後述)を実行します。Wordfenceを無料版で使用する場合、クイックスキャンは毎日実行され、フルスキャンは72時間ごとに実行されるようです。スキャンが不要の時は「DISABLED」を選択します。なお、有償版にアップグレードすると、スキャンする頻度をカスタマイズできるようです。

Basic Scan Type Options:スキャンタイプを選択する

Limited Scan / Standard Scan / High Sensitivity の3つのスキャンタイプから選択できます。選ぶタイプによって下記「General Options」の項目のチェック箇所が変わります。デフォルトの「Standard Scan」の場合は、以下のようにいくつかチェックが入っていない状態となります。(鍵マークの項目は有償版のみ)

General Options

  • Limited Scan:サーバーのリソースが制限されている場合に適しています。その分、「Standard Scan」よりも項目のチェックは少なくなります。
  • Standard Scan:標準スキャンです。WordPressサイトが安全であることを確認するための必要なチェックがすべて含まれています。
  • High Sensitivity:デフォルトですべてにチェックが入ります。不正アクセスの疑いがある場合に使用します。このスキャンタイプを選択することで、画像やPDFの拡張子が付くファイル内に悪意のあるコードが隠されていないかなども検証します。「Standard Scan」よりも時間がかかり、サーバーのリソースはより多く使用します。

※「General Options」のチェックを手動で変更すると、自動的に「Custom Scan」になります。

なお、WordPress公式ディレクトリに登録しているテーマとプラグインを利用している場合に、公式リポジトリのバージョンと比較してファイルの整合性を検証したいのであれば、以下の2つにチェックが必要です。「Standard Scan」では、デフォルトでこの2つにチェックは入っていないため、必要に応じて手動でチェックを追加してください。

  • Scan theme files against repository versions for changes
  • Scan plugin files against repository versions for changes

Performance Options:必要なければ設定不要

スキャン時にWordfenceが要求するメモリの量の設定などが行えます。特に設定変更が必要でなければ、このままでよいでしょう。

Advanced Scan Options:必要なければ設定不要

高度なオプションですので必要な時のみ設定してください。ワイルドカードを使ってスキャンから除外することもできます。例えば、uploadsフォルダ内のファイルはすべてスキャンの対象から除外したい場合は、wp-content/uploads/* と入力します。

スキャン開始

「START NEW SCAN」をクリックすると開始します。しばらくお待ちください。

スキャン結果が表示されます。黄色の警告サインは、問題が見つかったことを示します。

スキャン結果の深刻度レベル

スキャン結果には4つの深刻度レベルがあります。特に「Critical」は、すぐに調査する必要がある問題、「High」はできるだけ早く調査する必要がある問題となります。

  • Critical
  • High
  • Medium
  • Low
Critical

あるプラグインの脆弱性に対する修正版がリリースされており、早急にアップデートが必要なので「Critical」となっています。

high

事前に /wp-includes 内に本来はないファイルを設置しておいたところ、「high」となりました。このファイルはこのバージョンのWordPressでは配布されていないためです。「VIEW FILE」でファイルの記述内容を確認できます。仮にこのファイルが攻撃者によって追加された悪意のあるものであれば「DELETE FILE」で削除してください。

High

ログインユーザーのパスワードをわざと平易なものに変更しておいたところ、「high」となりました。パスワードは推測されやすいものではなく、強固なものにしましょう。

Medium

テーマやプラグインが最新バージョンでないと「Medium」となりました。最新にアップデートしておきましょう。

スキャン結果をIGNORE(無視)する

仮に、誤検知や不要な結果だった場合は「IGNORE(無視)」することで、[Ignored Results]タブに一覧表示されます。「IGNORE(無視)」に設定したものは、今後のスキャンでは無視されます。

以上、 Wordfence Security のスキャン機能の基本的な使い方をご紹介しました!

セキュリティ対策と定期的なバックアップを

改ざんされた場合、ご利用のサーバー内に複数のWordPressサイトがあれば、すべてのサイトでデータの検証が必要になったり、どうしようもない場合には初期化が必要なことも。その際に、バックアップデータがなければサイトの構築をやり直すことにもなりかねません。

そのようなことにならないよう、セキュリティ対策を実施しつつ、必ず定期的にバックアップをとっておきましょう。

制作・運用ノウハウ
初心者向け エックスサーバーでWordPressの管理画面にBASIC認証を設定してみよう
制作・運用ノウハウ
初心者向け ロリポップ!レンタルサーバーでWordPressの管理画面にBASIC認証を設定してみよう
制作・運用ノウハウ
初心者向け さくらのレンタルサーバでWordPressの管理画面にBASIC認証を設定してみよう
制作・運用ノウハウ
はじめてBASIC認証を設定する前に知っておくべきこと
制作・運用ノウハウ
WordPressの管理画面のセキュリティ対策にBASIC認証を設定しよう

Follow me!

この記事を書いた人

ササキ カオリ
ササキ カオリ
株式会社ベクトルでリモートワークしながら某レンタルサーバー会社にも時々勤務しているパラレルワーカーです。WordCamp Osaka 2019登壇しました。フジロックが好き。

リリース記念キャンペーン!
G3 Pro Unit を買って


Evergreen


無料でダウンロードしよう

Lightningで使えるおしゃれなデザインスキン / コンテンツデータを試せるチャンス!