WordPressを狙ったハッキングが継続的かつ集中しています。また、Googleグループによる社内秘情報の流出等、意図しない情報漏洩も頻発しています。Webサイト喪失の危機、SEO対策どころでは無くなります。今回はSEOとは直接関係ありませんが注意喚起のため本稿を掲載します。
#2013年10月16日 大幅に加筆しました。
目次:Wordpressのハッキングと情報漏洩に注意しましょう
1.Wordpressを狙った攻撃とは
1-1.ブルートフォースアタック(総当たり攻撃)
WordPressを狙ったハッキング手法は単純なブルートフォース・アタック(総当たり攻撃)です。パスワードを替えながらヒットするまでログインを幾度も繰り返していきます。総当たりという言葉が示す通り数桁の半角数字から成功するまで試行を繰り返していきます。
とても原始的なアプローチなので注意事項を守れば成功しません。短い数字だけだと侵入の可能性が高まります。
1-2.Wordpressに対するブルートフォース・アタック
ユーザIDとパスワードのペアを探す必要があるとすると、ブルートフォース・アタックでは侵入は極めて困難です。(ユーザIDは合っていてもパスワードがNGであるとか。)しかし推測の付くユーザIDがある事で侵入の可能性が高まります。
WordPressの場合、デフォルトのユーザIDは “admin”です。自動インストールではadminが管理者になります。この確率は極めて高く、そのままの利用者も非常に多いです。
2.まずやるべき事
2-1.Wordpressのバージョンとプラグイン類を最新に保つ。
現在(2013年10月16日現在)のバージョンはWordPress 3.6.1となります。
WordPress 3.6 は、これまで以前のすべてのバージョンのへのセキュリティフィックスです。すべてのサイトをアップデートするようにしましょう。3.6.1は幾つかの脆弱性を修正しています。
[参考]WordPress 3.6.1 メンテナンスとセキュリティのリリース
合わせて、プラグインも大半はアップデートされているはずです。必ず確認しておきましょう。
2-2.推測しにくいパスワードを使用する。
ブルートフォース・アタックのような原始的な攻撃は、パスワードを変更するだけで侵入を困難にします。Wordpressへの攻撃方法は谷も多数有りますが、真っ先に出来る対策は「推測しにくいパスワードへ変更する事」です。まず、やりましょう。
ログインにデフォルトIDである【admin】を使う事から、【admin】以外のユーザIDを使う事が推奨されています。但し、これで安全というわけではありません。WPの環境によっては【admin】を変更することが現実的では無い場合もあります。
しかし、どちらにせよ、パスワードの強度を上げておけば突破の可能性は非常に低くなります。例えば8桁以上の「半角大文字」+「半角小文字」+「数字」+「記号」を含む推測不可能なランダムの文字列である場合、偶然に認証される可能性は極めて低く天文学的確率になります。
[参考]強力なパスワードの選び方
単に推測しにくいだけでなくサイト毎に別のパスワードで運用しましょう。ハッキングの報告は日々あり、大量の情報が漏洩しています。同じID、同じパスワードを複数のサイトで多用していると、一つの漏洩が多くの被害に繋がります。
2-3.危険なログイン名を止める
adminや投稿者名でアタックして来る事は判っているのですから、これを使い続けるメリットはほとんどありません。まず、ユニークなIDに変更しましょう。
その上で、「ユーザー」のプロフィールにはユーザIDの形跡を残さない氏名(ログインIDと異なれば何でもいい)をきちんと入力しましょう。
2-4.失敗時の再ログインまでの時間を延ばす。
WordefenceのようなWP専用のセキュリティプラグインを使うことで失敗時のロックアウト(一定時間ログインできなくなる)期間を延長でき、安全性は向上します。
3.脆弱とされている部分を見直す
3-1.wp-config.phpのパーミッションを変更する
wp-config.phpには他人に見せると好ましくないサーバ情報が入っています。Wordpressを稼働させる上で必須の情報ですが、管理者以外の閲覧権限は隠蔽する事が推奨されています。パーミッションの変更方法は下記を参考にして下さい。
※まずwp-config.phpだけ、パーミションを変更すれば良い。
http://wpdocs.sourceforge.jp/ファイルパーミッションの変更
3-2.FTPのパスワードを変更する
ログイン画面からの侵入を行うのはFTPのIDとパスワードを取得するより簡単でリスクが低いためです。管理者用のFTP権限を取られたら、ほぼ全ての情報を書き換えられるため、上記の対策のほとんどが無意味になります。
こちらも変更可能であるなら、強固なパスワードに変更する事をお勧めします。
※レンタルサーバの場合変更不可能な場合もありますので、各サーバ会社のマニュアルをお読みください。
4.万が一のために
4-1.定期でバックアップを取っておく
侵入された場合、侵入者が行う事は「投稿の改ざん」です。閲覧者のブラウザを攻撃するための投稿改ざんが行われます。多くの場合、改ざんされたと判らない状態でスクリプトを埋め込みます。
また、この際、攻撃状態を維持するためにID、Passを書き換えてしまいます。なので、侵入されたら再インストール以外の復帰は困難だと考えるべきです。
再インストールのリスクに備えるため、定期的にバックアップを取りましょう。バックアップは「ツール」-「エクスポート」から行えます。また、FTP等で定期的にイメージ等もバックアップしておくと安全です。
4-2.バージョンアップしないプラグインは使わない
セキュリティの脆弱性がFIXされていないプラグインは利用すべきでは有りません。Wordpressの最新版で動作検証されているプラグインのみ使いましょう。使わなくなったプラグインは削除しましょう。
5.その他セキュリティ対策情報
ノンプログラマーのための WordPressセキュリティ入門
6.最後に
10万以上のIPアドレスから構成されるボットネットワークからの攻撃のため、IPブロックでは防御できません。さらに、万が一侵入を許せば、ボットネットワークに加わり、攻撃側になってしまいます。現状の攻撃は、より大きなボットネットワークの形成のためなのです。重大な事態になる前に防御態勢を整えましょう。