WordPress初心者向け セキュリティ強度をできる限り上げる方法

2013年6月30日

【緊急】WordPressでスマホ用WPtouch使ってる初心者は注意です

というエントリー書きましたら、「どういうことに気をつけたらもっとセキュリティが上がるのでしょう」というお問い合わせを何人もの方からいただきました。わたくし、エンジニアではないのですが、わかる限りで対策を書かせていただきます。セキュリティ対策はユーザーID変えたから大丈夫、みたいなように考えると逆に危険。WordPressの場合、ユーザーIDはその気になればいろいろなところに出てくるので、機械的にアタックしてくる場合は別として、じっくりソースとか読まれてきたら同じです。

まず、WordPress搭載のサイトに対する執拗な攻撃は、一般的にはブルートフォースアタックと呼ばれております。

ブルートフォースとは、アタッカーがユーザー名とパスワードの組み合わせをランダムに入力し、ログインできるまでこれを繰り返すという攻撃手法。今回の WordPress のケースでは、アタッカーはユーザー名を”admin”に設定している利用者にターゲットを絞り、パスワードに対するブルートフォース攻撃を仕掛けた。

参考説明

ユーザー名がわかればあとはパスワードだけなので、乗っ取り成功の敷居はぐっと下がる。それが一昨日のエントリーの内容でした。ではどうすればいいのか、ユーザーIDをすぐに推測できないものにするという内容は書きましたので、順にやるべき事を書きます。プロじゃ無くて初~中級向けですのでよろしこ。

1 パスワードのインジケータが「強」になるように設定する

設定 → ユーザー一覧 → 自分のID → 編集からパスワードの変更を行います。意味の無い、つまり辞書に載ってる綴りはやめる。大文字小文字と数字を組み合わせます。だいたい10文字使うと「強力」のお墨付きが出ます。

pass

ユーザー名を含んだパスワードは絶対止める。これでほとんどの侵入は防げます。組み合わせは(36文字×2(大文字小文字)+10)の10乗だから。82の10乗。計算あってます??

これは別にWordPressじゃなくても無料ブログや銀行、楽天やAmazonなどのショッピングサイトのパスワードでも同様です。

普通のブログならこれである意味OKですが、データベースに顧客情報やメールアドレスが入ってる場合はレベルを上げます。このブログもブログ更新するとメールが飛ぶ仕組みなのでメルアドがはいっております。

2 ログイン画面にキャプッチャを追加する

キャプッチャというのは、よく「この画像の文字を入れてください」っていうヤツです。ブルートフォースは人間がやってるわけでは無いので(中国人が何千人もで手でやっていたら面白いけど)、これは効果あるかもしれません。

antispam

代表的なのは
SI CAPTCHA Anti-Spam
http://wordpress.org/plugins/si-captcha-for-wordpress/
このプラグインを有効化すると管理画面の「プラグイン」項目に「SI Captchaオプション」が現れますのでそこで設定します。今回はログイン画面のみ適用させたいのでチェック項目で選定します。詳しい設定方法のサイトはこちらで。
http://www.imamura.biz/blog/cms/wordpress/2373

んが、実際入れてみるとログインできなくなったので慌ててFTPでプラグインを削除。どうも「狂骨」というログインを監視するプラグインと当たっているらしい。ほかのサイトでも入れなくなったことがあるので、ほかと当たりやすいプラグインかも。狂骨は使いたいので自分はこれはやめました。同じようにWordPressにはコンフリクトを起こすプラグインがけっこうあるので、できればテストサイトに同じ環境を作って当たらないか確認してからインストールすることをオススメします。

他に連続ログイン回数を制限するプラグイン
Limit Login Attempts
http://wordpress.org/plugins/limit-login-attempts/
もあります。

3 サーバ会社にブルートフォースのIPアドレスを拒否するようお願する ww

Xサーバがこういう仕様になったそうで、わたしもこのブログのサーバのカゴヤにメールでお願いしてみました。検討するそうです。ビバ、他人任せ!! しかしみなさんからバンバンと依頼メールがいれば、サーバ会社も「こりゃやるしかないな」になると思います。やってくれないところからはサーバを引っ越しましょう。でしょ。

4 【最強技】Googleの認証システムをWordPressに導入する!!!

【注】下を書いたあとで1分で設定できる方法が判明。次のエントリーで書きました。Googleのアカウントの2段階認証もやったほうがいいので残しておきます

【画期的!!】1分でWordPressにGoogle認証システムをいれる簡単な方法
https://www.landerblue.co.jp/blog/?p=7441

このブログにもいれましたけど、現在はこれが最強のような気がします。ひとことでいうと、Googleが30秒ごとに生成する6桁の数字コードをスマホから見て、毎回入力してログインする方法。

設定がけっこう面倒で嫌になりますが、いったん設定したらあとは簡単。毎回スマホを見ながらログインします。ですので、「そもそもガラケーだけの人」は使えません。また海外に行くのに現地で自分のスマを持っていかない場合は、現地のネットカフェでGmailをチェックできなくなります。また説明読むと一つの2段階認証に使える携帯端末は1台のよう(iOSの場合)ですので、海外用と国内用のスマホが別の人は一から設定し直しです。自前のブックPC持っていく人は渡航前に登録しておけばいいし、そうで無い場合も一回だけ使える使い捨てのコードが10個プリントアウトできるので、これを財布に入れておけとGoogle様はおっしゃいました(コレ、マジです)。わたしは素直なので財布に入れましたから!!! 携帯落とした時のためにもこれは必須!!

しかしGoogleの設定がめっちゃわかりづらい!!
自分自身もよくわかってない点が多いです、はい。間違ってるところがあったら指摘してください。

そもそもiOSで認証システムを使うためにはGoogleの設定で2段階認証にしないといけないのだが、ここで多くの人がつまづいています。

まず最初にGoogleの説明
https://support.google.com/accounts/answer/1066447?hl=ja

google
ここに、「Google認証システム アプリ」と確かに書いてあるのに、app storeで検索すると「そんなもんねーよ」と言われます。

当たり前です。名前が英語になっております。しかしここにたどり着いてもまたまた設定がわかりづらい。エンジニアとかそういう人は問題ないと思いますが、フツーの人だと訳分からないかも。レビューには怨嗟の声が・・

二段階認証app

ダウンロードはこちらですだ。もちろんAndroid版もあります

こちらをiPhoneなどのスマホに入れます。しかしインストールしただけではどうにもならんのです。かなり面倒なので一からやり直すほど人が良くないのでわたしがやった方法を簡単に書くと、

1 PCのグーグルアカウントから2段階認証にするチョイスをする。
確認コードがスマホに飛ぶのでそれを入れる
2 QRコード(バーコード)が出るのでこれをスマホのアプリのカメラで撮る
3 そうしますとまたまたシークレットキーというのがでるので、これをアプリにいれる

こんな感じだったと思いますがちょっと違ってるかも・・。トークンというのが追加されてOK!

↓こちらを参考にしました。

2段階認証コードをアプリで受け取れる「Google認証システム(Google Authenticator)」の導入方法と使い方

http://komugi.net/archives/2012/12/25113942

あとはGoogleのよくわからない説明
http://support.google.com/a/bin/answer.py?hl=ja&answer=175197

ほっとしてはいけません。これまでの作業ではGoogleのアカウントを乗っ取られるリスクは激減しましたが、まだWordPressは関係無いです。
で、Google Authenticatorというプラグインをいれます。

そうするとログイン画面は
二段階認証

こうなりますので、毎回スマホでアプリを立ち上げておいてコードを発行してログインします。前述のようにコードは30秒で無効になるのでめちゃ安全です。携帯無くして入れなくなったらFTPでプラグインを削除してください。ww

ただしここまでやっても、乗っ取られたサイトにある悪意のあるプログラムをダウンロードさせられてしまうと、自分のPCからFTPで同様のプログラムをサーバに上げられてしまいます。ログインのセキュリティをいくら上げても意味ないので、どこかに接続して「Flashの更新が必要です」みたいな警告が出たら、そこに書いてある説明をよく読む。怪しかったらダウンロードしない。くらいのことはやってください。Macに変えるという選択もあります。これだけでだいぶん安全性は高まるはず。Mac用のウイルス作っても広まらないから誰もめったに作らない。

どなたか「Google2段階認証設定ガイド」ってKindleで作ってください。ブログで紹介しますよ。85円なら1000や2000は売れると思います。そんくらい面倒だからさ。

  • 0
  • 0
    このエントリーをはてなブックマークに追加
  • 0
    follow us in feedly
PAGE TOP