今回の記事は私的には非常に重要な対応方法だと思っています。
インターネットにサイトをさらす場合は、常に世界中から攻撃されるものだと思ってしっかりと対策を考えておく必要があります。
ここで言う「しっかりとした対策」とは、仮にサイトが攻撃して閉鎖されてしまっても、迷わずに確実に復旧できるレベルです。
サイトへの攻撃は突然やって来てきます。
今回はエックスサーバー上での対応方法について解説しますが、他のレンタルサーバーでも基本的な対応方法は同じです。
突然サイトが「403 Forbidden」を表示してアクセスできなくなる
サイトが攻撃されてウィルス感染をすると、レンタルサーバー会社が検知して以下のように「403 Forbidden」でサイトを閉鎖します。
その理由はサイト閲覧者がサイト経由でウィルス感染をしないようにする必要があるからです。(二次被害、三次被害の防止のため)
また、Google や Yahoo! などの検索エンジンが検知したら、ユーザーがアクセスしないように検索結果から外したり(インデックスされないようにする)、警告を出してブロックすることもあります。
(「このサイトはウィルス感染をしている可能性があります」など)
ウィルス感染をすると「エックスサーバー」より以下の報告メールが届く
エックスサーバーは価格が安い割にはしっかりと運用監視をしています。
そのため、放置をして二次被害・三次被害を拡大することなく素早く以下のような報告メールを送ってくれます。
エックスサーバーのレンタルサーバーは、WordPress も簡単に導入出来て、しかも 200GB のディスク容量としっかりしたサポートがあります。
エックスサーバーからのウィルス検知及び対処報告メール(全文)
以下、全文です。
■■■■■■■■■■■■■■■■■
XXXX 様
平素は当サービスをご利用いただき誠にありがとうございます。
Xserver カスタマーサポートでございます。
サーバーID :XXXX(svXXXX)
ドメイン名 :XXXXX.XXXX
お問合せ番号:xsvc18XXXX
お客様のサーバーアカウントにおいて、
運用中のウェブサイトが改ざんされている旨、
第三者より報告が寄せられました。
▼報告のあったURL
——————————————————-
https[:]//XXXX[.]XXXX/
https[:]//XXXX[.]XXXX/XXXX/XXXX
※不正なコード等が挿入されている可能性があるため、
上記URLへ直接アクセスなさいませんよう、ご注意ください。
——————————————————
上記を元に下記サイトにてセキュリティ調査をいたしましたところ、
【マルウェアが検出された】との調査結果が表示されております。
(ご参考)
http://www.aguse.jp/
http://check.gred.jp/
※入力したサイトの「運用サーバー」や「セキュリティ状況」等を
総合的にチェックするサイトです。
これを受け、当サポートにてセキュリティ調査を行いましたところ、
お客様がご利用のプログラムにセキュリティ上致命的なバグ(脆弱性)が存在し、
当該脆弱性を第三者に悪用されてしまった可能性が非常に高い状況でございました。
そのため、事後のご案内となり大変恐縮でございますが、
緊急措置として下記制限を実施しております。
▼サポートにて実施した制限内容
——————————————————-
・当該ドメイン名に対する緊急的なWebアクセス制限を実施
※上記処理に伴い、Webアクセスを行うと403エラーとなる状況です。
——————————————————-
スパムメールの大量送信やフィッシングサイトの開設などの
『不正アクセス』によるさらなる被害の発生を防ぐため、
上記対応を実施しましたことを何卒ご了承くださいますようお願いいたします。
不正アクセスの対策と制限の解除手順につきましては、
下記をご参照くださいますようお願いいたします。
■目次■
————————————————————-
【1】サポートにて実施したセキュリティ調査について
【2】Webアクセス制限の解除方法について
【3】お客様に行っていただきたい対応内容について
【4】推奨される設定について
————————————————————-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【1】サポートにて実施したセキュリティ調査について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
お客様の上記サーバーアカウントにおいて
以下の不正なファイル(ウイルス、マルウェアなど)が検出されるとともに、
日本国外からの不審なアクセスを確認いたしました。
[検出された不正なファイル]
————————————————————
/home/XXXX/XXXX.XXXX/XXXX/XXXXX
————————————————————
[不審なアクセスログの一部]
————————————————————
[XXXX.XXXX]
XXX.XXX.XXX.XXX – – [12/XXX/20XX:04:27:58 +0900] “POST /wp-login.php HTTP/1.1” 302 – “-” “Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0”
XXX.XXX.XXX.XXX – – [12/XXX/20XX:04:59:40 +0900] “POST /wp-content/wp-trackbacksys.php HTTP/1.1” 200 2 “-” “Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0”
XXX.XXX.XXX.XXX – – [12/XXX/20XX:05:00:14 +0900] “POST /wp-content/wp-acsesapps.php HTTP/1.1” 200 2 “-” “Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0”
————————————————————
検出された不正なファイルやアクセス先のファイルは
不正に設置または改ざんされている可能性が高くございます。
なお、不正アクセスの根本原因は下記2つのパターンに大別されます。
▼不正アクセスの根本原因
————————————————————
(1)お客様が運用中のプログラムにおいてセキュリティ上問題のある
致命的なバグ(脆弱性)が存在し、第三者に脆弱性を利用された。
→該当プログラムが「どんなコマンドでも実行可能」である場合、
該当プログラムを経由して不正なコマンドの実行や、
不正なファイルの設置が行えてしまいます。
(2)お客様のサーバーアカウントに関するFTP情報が流出し、
第三者に不正にFTP接続をされた。
→FTP操作自体によるファイル改ざんはもとより、
任意のプログラムを設置することでどんなコマンドでも実行できてしまいます。
————————————————————
お客様のサーバーアカウントにおいては不審なFTPアクセスが見られないことから、
消去法的なご案内となりますが、お客様が運用中のプログラムに脆弱性が存在し、
該当脆弱性を悪用されてしまった可能性が高いものと思われます。
また、今回の調査では不審なアクセスは見受けられませんでしたが、
WordpressなどのCMSの管理画面に対する、パスワード総当りなどによる
国外からの攻撃が多発しております。
CMSをご利用の場合、パスワードをより強固な物へ変更するなど、
念のための対策を併せてご検討くださいますようお願い申し上げます。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【2】Webアクセス制限の解除方法について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
次項【3】の [2] に記載しております「ドメイン設定の初期化」を行って
いただくことで、Webアクセスの凍結が自動的に解除され、
該当ドメイン名へのWebアクセスが可能になります。
************************************************************
この度のような不正アクセスの被害に遭われた場合、
検出された不正なファイル以外にも、他の不正なファイルや
バックドア(不正アクセスを容易とする仕組み)などが
設置されている可能性が考えられます。
そのため、凍結の解除にあたっては、検出された不正なファイルだけではなく、
当該ドメイン名に存在するすべてのファイルを削除していただくよう
お願いしております。
************************************************************
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【3】お客様に行っていただきたい対応内容について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
お客様のPCや運用中のサイトのセキュリティ対策は
お客様ご自身にて管理を行っていただく責任がございます。
この度の不正アクセスについて、原因を根絶し、不正に設置されたファイルや
改ざんされたファイルをサーバーアカウント上から完全に駆逐するため、
大変お手数ですが、下記作業をなさいますようお願いいたします。
───────────────────────────────────
[1] ご利用のPCにてセキュリティチェックを行ってください。
———————————————————————-
お客様のご利用PC端末にてセキュリティソフトを最新版に更新していただき、
ウイルスチェックと駆除をおこなってください。
また、Windows UpdateやAdobe Reader、Flash Playerなどの
ご利用PC端末にインストールされているソフトウェアにつきましても、
最新版へ更新してください。
※本件はプログラムの脆弱性に起因する不正アクセスの可能性が高い状況では
ございますが、念のため上記ご確認をお願いいたします。
───────────────────────────────────
[2] 該当ドメイン名を「初期化」してください。
———————————————————————-
「サーバーパネル」→「ドメイン設定」→該当ドメインの「初期化」と
アクセスしていただき、「ウェブ領域・設定の初期化」をご選択のうえ、
該当ドメイン名を初期化してください。
※上記作業により、該当ドメイン名のウェブ領域に設置された
すべてのファイルが削除されます。
画像、プログラム、設定ファイルなどの必要なデータは
事前にバックアップを取った上でドメイン名を初期化してください。
※上記作業による、データベースの初期化・削除はございません。
───────────────────────────────────
[3] FTPソフトによるデータアップロードなど、
ホームページ再開のための作業を行ってください。
———————————————————————-
凍結時点のデータは不正に改ざんされているデータを含む可能性や
セキュリティ上問題がある可能性がございます。
再発防止のため、セキュリティ上問題のない、改ざんされていないクリーンな
データをアップロードなさいますようお願いいたいます。
※CGIプログラムをご利用の場合はパーミッションの変更にご注意ください。
───────────────────────────────────
[4] 該当ドメインにて設置されていたプログラムにおいて、
脆弱性の調査を必ず行ってください。
———————————————————————-
不正アクセスの原因を明確にした上で、
ホームページの運用を再開なさいますようお願いいたします。
※不正アクセスの原因を特定しないままホームページを再開した場合、
再度同様の被害に遭う可能性が非常に高くなってしまいます。
◆「WordPress」や「Joomla!」などのCMSツールをご利用の場合、
脆弱性が発表されていない最新バージョンを必ずご利用ください。
旧バージョンのCMSツールには、脆弱性が報告されているケースが
非常に多くございます。
また、プラグインやテーマファイルにつきましても、
最新のものを新規にインストールしていただくことを推奨いたします。
───────────────────────────────────
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
【4】推奨される設定について
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
お客様のウェブサイトにてPHPプログラムをご利用の場合、
サーバーパネルの「php.ini設定」にて
「allow_url_fopen」および「allow_url_include」をいずれも
「無効(Off)」にすることを強くお勧めいたします。
◇マニュアル:php.ini設定
https://www.xserver.ne.jp/man_server_phpini_edit.php
※上記設定項目は「外部ファイルを読み込む/実行する」操作に対する可否設定です。
ご利用のプログラムにより、上記それぞれの設定を「On」にする
必要がある場合もございますが、外部からのデータ読み込み等が必要ない場合、
これら設定は無効にしたうえでプログラムをご運用ください。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
なお、今後、同様の状況が再度確認された場合、
さらなる制限を実施する可能性がございます。
不正アクセスによる被害の発生・再発を防ぐための措置でございます。
何卒ご理解くださいますようお願いいたします。
以上、何卒よろしくお願い申し上げます。
ご不明な点などございましたら、お気軽にお問い合わせください。
◆本内容と関連するお問い合わせの際は
必ず『お問合せ番号:xsvc18xxxxxx』と『会員ID』『サーバID』を本文に入れて返信してください。
───────────────────────────────────
エックスサーバー ホスティングサービス
◇URL :https://www.xserver.ne.jp/
◇E-Mail:support@xserver.ne.jp
◇TEL :06-6147-2580(平日10時00分-18時00分、土日祝休)
ご不明な点につきましては、まずはこちらをご参照ください。
◆ https://www.xserver.ne.jp/manual/
──────────────────────────── Xserver ──
WordPress も簡単に導入出来て、しかも 200GB のディスク容量としっかりしたサポートがあります。
エックスサーバーは以下のサイトでウィルスチェックをしている
メールの文面を確認すると、エックスサーバーは以下のサイトでウィルスチェックをしているようです。
aguse.jp のサイト利用手順
使い方は非常に簡単で、調べたいサイトのURLを入力して「調べる」ボタンをクリックするだけです。
【実行結果】
以下、実行結果の画面です。
マルウェアが検出されなければ、以下のように「マルウェアは検出されませんでした。」と表示されます。
ちなみに aguse.jp は「カスペルスキ―」を利用してマルウェアのチェックをしています。
マルウェア(Malware)とは?ウィルス(Virus)とは?
ここで「マルウェア」や「ウィルス(コンピュータウィルス)」などの用語が出てきたので、「マルウェア」と「ウィルス」の違いについて説明します。
マルウェアとは以下のプログラムを総称して言う用語です。
- コンピュータウィルス(Computer Virus)
- スパイウェア(Spyware)
- ボット(Bot)
マルウェア(Malware)は、管理者の気が付かないうちにサーバーをはじめとしたコンピュータに侵入し、情報を盗んだりプログラムを改ざんしたりと言った悪意のある行為を行います。
Malware は「Malicious Software(悪意のソフトウエア)」を短縮したものです。
■コンピュータウイルス(Computer Virus)
コンピュータ内のプログラムやデータに寄生してデータを壊したり改ざんしたりするソフトウエア(プログラム)のことを言います。
コンピュータへの感染・発症の仕方が、人に病気を引き起こすウイルスと似ているため、このように呼ばれています。
他にも寄生せずに単独のファイルとして存在するワーム(Worm)や、通常のプログラムのふりをしてユーザの知らない間に不正な行為を行うトロイの木馬と呼ばれるものもあります。
■スパイウェア(Spyware)
利用者や管理者の意図に反してインストールされ、利用者の個人情報やアクセス履歴などの情報を収集するプログラム等と定義されています。
スパイウェアがコンピュータウィルスと異なる部分は、プログラムを壊したり改ざんしたりするのではなく、コンピュータに侵入して、不正に情報を収集する行為が異なります。
収集した情報を外部へ送信する機能を持つスパイウェアは情報漏えいにつながります。
■ボット(Bot)
ウイルスの一種で、コンピュータに侵入(感染)しネットワークを通じてコンピュータを外部から操る悪意のあるプログラムです。
ボットに感染したコンピュータは、外部から与えられた指示に従って不正な行為を実行します。
例えば、ボットに感染したコンピュータが同じ時間に一斉に他のサーバーを攻撃するなど、不正な手段に利用されます。
gred のサイト利用手順
gredでもサイトの安全性をチェックすることができます。
【調査結果】
以下のようにURLを入力してチェックをすると結果が表示されます。
「このサイトは安全です」の結果が表示されています。
ウィルス感染されたファイルはこんな感じになっている
例としてウィルス感染されたファイルです。
一部隠していますが、以下のようにぎっしりとコードが記述されています。
そのため、エックスサーバーよりどのファイルがウィルス感染しているのか報告が来た場合、テキストエディタを使ってファイルの中身を確認することができます。
ただし安全のため不用意にダブルクリックしないようにしましょう。
もしウィルス感染しているファイルを開くときは、ネットワークにつながっていないテスト用パソコンなどを利用しましょう。
WordPress がウィルス感染した場合の対応手順(復旧手順)
これより WordPress がウィルス感染した場合の対応手順を解説します。
対応手順(復旧手順)概要
- WinSCPでサイトにアクセスをして現在のファイルすべてのバックアップを取得する
- エックスサーバーの「サーバーパネル」より「ドメインの初期化」を実行する
- 最新の WordPress をインストールする
- ファイアウォールプラグインをインストールする
- バックアップファイルを参考にデータベースへのアクセス設定を手動で1つ1つ入力する(全体をまるっとコピペしない)
- 最新のプラグインを1つずつインストールする
- php.iniの設定変更をする
- ファイアウォールプラグインより何度かスキャンを実行する
基本的な対処方法は WordPress の再インストール
上記の手順の通り、エックスサーバーの場合、一度「ドメインの初期化」が必要になります。
「ドメインの初期化」とは、「/home/xxxx(エックスサーバーID)/xxx.xxx(ドメイン名)/」フォルダ配下を全部削除することを言います。
つまりレンタルサーバー上にあるファイルがすべて削除されます。
※ただしデータベースは削除されません
データベースが削除されないため、記事や設定情報はそのまま残ります。
可能であれば以下までできれば完璧です。
- データベースの内容を全て削除する
- ウィルス感染する前に取ったバックアップをデータベースにリストアする
ただし、今回の場合はデータベースそのものはウィルス感染していないためデータベースのリストアまでは手順に加えません。
加えてウィルスに感染したタイミングも不明ということもあります。
ただし、データベース内までウィルススキャンをすることでデータベースはそのままであってもリスクはないことを担保することができると思います。
WinSCPでサイトにアクセスをして現在のファイルすべてのバックアップを取得する
今回はデータベースの情報はそのまま残ります。
そのため一旦、レンタルサーバー(エックスサーバー)上にアップロードしている全てのファイルをダウンロードします。
レンタルサーバー上にある WordPress の各種ファイルは大量にあります。
そのため「WinSCP」を利用して全てのファイルをダウンロードします。
ちなみに「FFFTP」の方が「WinSCP」よりダウンロード時間が短いです。
しかし「FFFTP」は転送速度が速いのですが、何度か試したところ途中でエラーで終了して最後まで全ファイルダウンロードできませんでした。
仮に全ファイルをダウンロードできたとしても、本当に全ファイルがダウンロードされているのか少々疑問が残ります。
そのため、対象のファイルをダウンロードする際は時間が掛かっても「WinSCP」を利用するようにしています。
エックスサーバーの場合は、public_html フォルダ下に WordPress のファイル一式があります。
そのため、下図のように「public_html」フォルダをまるっとダウンロードします。
エックスサーバーの「サーバーパネル」より「ドメインの初期化」を実行する
次のエックスサーバーの管理画面にログインして「サーバーパネル」から「ドメインの初期化」を実行します。
エックスサーバーの「インフォパネル」へログインします。
https://www.xserver.ne.jp/login_info.php
対象のIDの「サーバーパネル」の「ログイン」ボタンをクリックしてログインします。
「サーバーパネル」にログインしたら「ドメイン」–「ドメイン設定」をクリックします。
「ドメイン設定の一覧」タブが選択されていることを確認し、対象のドメインの「初期化」ボタンをクリックします。
「処理方法」に「ウェブ領域・設定の初期化」を選択して「確認」ボタンをクリックします。
※下線を引いていますが、必要なデータや設定は必ずバックアップを取得しておきます。(データベースは初期化されませんが定期的にバックアップを取得していない場合はデータベースのバックアップを取得することをお勧めします)
確認画面で「ドメイン」や「処理内容」を確認し、「確定」ボタンをクリックします。
初期化される各種設定は以下です。(データベースは初期化されません)
- アクセス制限
- エラーページ設定
- MIME設定
- サイト転送設定
- アクセス拒否設定
- CGIツール
- 自動インストール ※データベースは初期化されません
- PHP Ver.切替
- php.ini設定
- PHP高速化設定(FastCGI化) ※PHP高速モジュール「OPcache」と併せて有効化
以下のように初期化処理が完了したことを確認します。
サイトにアクセスをして初期化されたことを確認します。
初期化直後は下図のようにエックスサーバー上にデータが何もない状態になっています。(データベースには過去の記事などのデータは残っています)
以上で初期化処理は完了です。
最新バージョンの WordPress をインストールする
次に最新バージョンの「WordPress」をインストールします。
以下の2つの手順があります。
- エックスサーバーの「自動インストール」を利用する手順
- 手動で最新のWordPressをアップロードしてインストールする手順
どちらの手順も簡単なので両方の手順を解説します。
ちなみに最新バージョンの「WordPress」をインストールすると動かなくなる「プラグイン」や「カスタマイズ」をしている場合は、これを機に「使わない・利用しない」方がいいです。
WordPress のプラグインは多数あります。もし WordPress 上でやりたいこと・表現したいことがあるなら WordPress 最新バージョンに対応している「プラグイン」を導入するか、「プラグイン」がないなら違う表現方法を考えた方がいいです。
エックスサーバーの「自動インストール」を利用する手順
最新の WordPress のインストールはエックスサーバーの管理画面上から簡単にできます。
エックスサーバーの「インフォパネル」へログインします。
https://www.xserver.ne.jp/login_info.php
対象のIDの「サーバーパネル」の「ログイン」ボタンをクリックしてログインします。
「サーバーパネル」にログインしたら「ホームページ」–「自動インストール」をクリックします。
「ドメイン選択画面」で対象のドメインの「選択する」をクリックします。
「自動インストール」画面に移動したら「プログラムのインストール」–「WordPress日本語版」の「インストール設定」ボタンをクリックします。
以下のようにサイトの情報を入力して「インストール(確認)」ボタンをクリックします。
- インストールURL
- ブログ名
- ユーザ名
- パスワード
- メールアドレス
- データベースの選択 ← 「自動でデータベースを作成する」
※すでに以前使用していたデータベースがありますが、一旦新規でデータベースを作っておいて、インストール後に「wp-config.php」ファイルを編集してデータベースを切り替える方法にします。(一番シンプルな方法です)
最後に内容を確認後、「インストール(確定)」ボタンをクリックします。
次に以下のように「wp-config.php」を修正して既存のデータベース(今まで利用していたデータベース)に接続できるように修正します。
※もし「wp-config.php」がない場合は「wp-config-sample.php」があるので「wp-config.php」に名前を変更します。
※既存の「wp-config.php」をそのままコピーすれば簡単ですが、「wp-config.php」自体にもウィルスが感染している可能性を考えて極力既存のファイルを使わないようにするためにこのような手順にしています。
更に下図のように「認証用ユニークキー」と「WordPress データベーステーブルの接頭辞」も元々の状態に戻します。
エックスサーバー管理画面での「自動インストール」を利用しない場合
別途、以下のサイトより最新の WordPress をダウンロードしてインストールします。
https://ja.wordpress.org/download/
以下の WordPress 日本語版のダウンロード画面に移動したら最新の WordPress をダウンロードします。
WordPress をダウンロードしたらパソコン上で解凍をします。
ファイルを解凍したら WinSCP で解凍された全部のファイルをエックスサーバーにアップロードします。
次に以下のように「wp-config.php」を修正して既存のデータベース(今まで利用していたデータベース)に接続できるように修正します。
※もし「wp-config.php」がない場合は「wp-config-sample.php」があるので「wp-config.php」に名前を変更します。
※既存の「wp-config.php」をそのままコピーすれば簡単ですが、「wp-config.php」自体にもウィルスが感染している可能性を考えて極力既存のファイルを使わないようにするためにこのような手順にしています。
更に下図のように「認証用ユニークキー」と「WordPress データベーステーブルの接頭辞」も元々の状態に戻します。
WordPressも簡単に導入出来て、しかも200GBのディスク容量としっかりしたサポートがあります。
画像ファイルを元に戻す
次に画像ファイルを元に戻します。
画像ファイルは「wp-content」の下の「uploads」フォルダに保存されているので画像ファイル一式をアップロードします。
これにより入れ替えたサイトでも画像が表示されるようになります。
ファイアウォールプラグインをインストールする
WordPress のインストール後にファイアウォールプラグインをインストールします。
お勧めのファイアウォールプラグイン
- Wordfence Security
- AntiVirus
Wordfence Security
「Wordfence Security」は WordPress の「プラグイン」-「新規追加」から検索をしてインストールできます。
Wordfence Security の使い方
プラグインのインストール後、特に設定をする必要がありません。
インストール後に「有効」にするだけで最適な設定・オプションで機能します。
オプションは細かく設定できるのでこだわりがある場合は好みの設定にすることができます。
Wordfence Security の特徴
■ファイアウォール機能
- Wordfence Security は非常に人気のあるファイアウォールでインターネット上の悪意のあるトラフィックを識別してブロックします。
- WordPressのセキュリティに100%集中した大規模なチームによって開発されて運用されています。
- [プレミアム版のみ] 脅威を防御するためのリアルタイムのファイアウォールルールとマルウェアシグネチャアップデート(無料版は30日遅れますがアップデートされます)。
- [プレミアム版のみ] リアルタイムIPブラックリストを導入すると、悪意のあるIPからのすべての要求をブロックし、負荷を軽減しながらサイトを保護します。
- エンドポイントでサイトを保護するのでクラウドとは異なり、バイパスができないのでデータがリークしません。
- 統合マルウェアスキャナは、悪質なコードやコンテンツを含むリクエストをブロックします。
- ログイン試行を制限し、強力なパスワードとその他のログインセキュリティ対策を実施することにより、ブルートフォース攻撃から保護します。
■セキュリティスキャナ機能
- マルウェアスキャナは、WordPress のコアファイル、WordPress テーマ、WordPress プラグインでマルウェア、不正なURL、バックドア、SEOスパム、悪意のあるリダイレクト、コードインジェクションをチェックします。
- [プレミアム版のみ] Threat Defense Feed(無料版は30日遅れて)を通じてリアルタイムのマルウェアシグネチャのアップデートを行います。
- WordPress のコアファイル、WordPress テーマ、WordPress プラグインと WordPress.org リポジトリの内容を比較し、整合性をチェックして変更を報告しますし、それらを元のオリジナルのバージョンで上書きすることによって変更されたファイルを修復します。 Wordfence 内に属していないファイルを削除します。
- 既知のセキュリティ上の脆弱性をチェックし、問題を警告します。また、プラグインが閉じられたり放棄されたりすると、潜在的なセキュリティ問題を警告します。
- 危険な URL や疑わしいコンテンツのファイル内容、投稿、コメントをスキャンして、コンテンツの安全性をチェックします。
- [プレミアム版のみ] あなたのサイトや IP がスパムやその他のセキュリティ問題を引き起こして悪質な行為のためにブラックリストに登録されているかどうかを確認します。
■セキュリティツール
- ライブトラフィックでは、他の分析パッケージには表示されていないアクセスやハッキングの試みをリアルタイムで監視できます。発信元、IPアドレス、サイトの時間帯、時間などの情報が含まれます。
- [プレミアム版のみ] 最も安全なリモートシステム認証の1つである2要素認証を使用して、ブルートフォース攻撃を永続的に停止します。
- Wordfence の無料版には、優れたコメントスパムフィルタが含まれています。 [プレミアム版のみ] プレミアムカスタマーには、高度なコメントスパムフィルタが自動的に有効になります。
- 攻撃者を IP でブロックするか、IP 範囲、ホスト名、ユーザエージェント、およびリファラーに基づいて高度なルールを作成します。 [プレミアム版のみ] Wordfence Premiumでカントリーブロッキングが利用可能です。
Wordfence Security は無料版で十分
上の機能の説明で機能的には「有料版」ではなく「無料版」でも充分です。
ただしサイトの規模が大きくて月間数十万、数百万レベルなら「30日」待つ間にクラッキングされるリスクが生じるので「有料版」の導入を検討してもいいかもしれません。
ちなみに「有料版」は1年1万円程度です。
※「1Year」で「1Key」の場合は「$99」です。
Wordfence Security は評価が高いプラグイン
Wordfence Security は以下のように「5つ星」の評価が多数ある評価の高いプラグインです。
通常、「セキュリティ」製品は評価が低くなる傾向があるのですが Wordfence Security は、下図のようにほとんどが「5つ星」の評価になっています。
WordPressのセキュリティガイドライン的なもの
「WordPress Codex 日本語版」のサイトにセキュリティガイドライン的なページがあります。
最新のプラグインを1つずつインストールする
既存のバックアップファイルに各プラグインのフォルダも含まれていると思いますが、そのフォルダをアップロードせずに、新規で必要な「プラグイン」を1つずつインストールしていきます。
その理由は、既存のプラグインファイルがウィルス感染している可能性があるからです。
しかも必要なプラグインを手動で1つ1つインストールすることで最新バージョンのプラグインを導入することができますし、もし最近全く更新していないようなプラグインがあったら、インストールしないことを推奨します。
ファイアウォールプラグインより何度かスキャンを実行する
一通り WordPress の設定が完了したら最後にファイアウォールプラグインより手動でスキャンを実行します。
php.iniの設定を修正する
エックスサーバーのサポートチームより以下の報告もありました。
=======================================================
お客様のウェブサイトにてPHPプログラムをご利用の場合、
サーバーパネルの「php.ini設定」にて
「allow_url_fopen」および「allow_url_include」をいずれも
「無効(Off)」にすることを強くお勧めいたします。
=======================================================
エックスサーバーの「サーバーパネル」にログインして「ホームページ」–「php.ini設定」に移動します。
「ドメイン選択画面」で対象のドメインを選択します。
「php.ini設定」画面で「php.ini設定変更」タブをクリックします。
【デフォルトの設定】
デフォルトでは以下の設定になっています。
allow_url_fopen ← on
allow_url_include ← off
今回は「allow_url_include」はすでに「Off」になっているので「allow_url_fopen」を「Off」に設定します。
設定を変更したら「設定する(確認)」ボタンをクリックします。
設定内容を確認し「設定する(確定)」ボタンをクリックします。
php.iniの設定が完了したことを確認します。
念のためサイトにアクセスをして「エラー」や「表示がおかしくなっている」かどうか確認します。
最後にエックスサーバーも利用しているサイトの安全性チェックサイトでチェックする
最後に以下のサイト安全性のチェックサイトで安全性をチェックします。
aguse.jp のサイト利用手順
使い方は非常に簡単で、調べたいサイトのURLを入力して「調べる」ボタンをクリックするだけです。
【実行結果】
以下、実行結果の画面です。
マルウェアが検出されなければ、以下のように「マルウェアは検出されませんでした。」と表示されます。
ちなみに aguse.jp は「カスペルスキ―」を利用してマルウェアのチェックをしています。
gred のサイト利用手順
gredでもサイトの安全性をチェックすることができます。
【調査結果】
以下のようにURLを入力してチェックをすると結果が表示されます。
コメントを許可しない
WordPress はコメント欄が付いていて、閲覧ユーザーと会話を交わすことができますが、このコメント欄を利用して脆弱性を突いてくる可能性があるのでもしどうしても必要でなければコメントを閉じてもいいかもしれません。
全投稿に対してコメントを表示させない方法
以下の手順で全投稿に対して一括してコメントを表示させないようにすることができます。
WordPressのダッシュボードにログインして「投稿一覧」を表示します。
下図のように全記事を選択後、プルダウンより「編集」を選択して「適用」ボタンをクリックします。
プルダウンよりコメントを「許可しない」に設定して「更新」ボタンをクリックします。
以上でコメント欄が表示されなくなります。
「コメントは受け付けていません。」の表示を消す方法
上記の方法でコメント欄の表示を消すと以下のように「コメントは受け付けていません。」の表示が残ります。
この表示を消す方法ですが、ダッシュボードより「プラグイン」-「新規追加」に移動して「Remove “Comments are closed”」プラグインを検索してインストールします。
インストール後に「有効化」ボタンをクリックして有効化します。
以下のように「コメントは受け付けていません。」の文字が表示されなくなりました。
WordPress管理画面へのアクセスを日本国内に限定する
WordPressの管理画面へのログインを日本国内に限定します。
もっと言うと、「.htaccess」を利用して日本国内のIPアドレスからのみ許可する設定にします。
日本国外からのアクセスを制限する.htaccess
http://www.cgis.biz/tools/access/
ダウンロードした.htaccessファイル
サイトからダウンロードした「.htaccess」ファイルの中身は下図のように日本国内だけのIPアドレスのみ許可の設定が入っています。
このファイルを「wp-admin」フォルダの直下にアップロードします。
※アップロードしたら「htaccess」→「.htaccess」にファイル名を変更して保存します。
まとめ
インターネットにサイトを公開するということは世界中からアクセスされる可能性があります。
そのため、以下の4点だけは確実にやっておく必要があります。
- 定期的な WordPress のバックアップ(ファイルや画像のバックアップ)
- 定期的な WordPress のデータベースのバックアップ
- WordPress の定期的なバージョンアップ
- WordPress プラグインの定期的なバージョンアップ
更に余裕があれば有料のファイアウォールを導入して、確実にセキュリティを確保します。
コメント
コメント一覧 (1件)
非常に興味深く読ませていただきました。
気付きとして、
手順として組み込まれている
「uploads」フォルダに保存されているので画像ファイル一式をアップロード
に関してですが、このフォルダ内にphpファイル等のマルウェアが生成されている事が往々にしてあるかと思います。
イメージ画像のように、フォルダごと放り込む感じだと非常に危険なので、phpやjs等の画像以外のファイルが含まれていないか検索した後に移動させた方が良いと思います。