ちょっとインターネットのサイト作りを勉強してると、WordPressによるサイト作りに興味を持ち始めると思いますが、
今回はphpもJavaScriptもロクに分かってない初心者の私がWordPressを導入した際に、
テーマを改造とか、プラグインをイタズラに導入するなどの前に、
まずやった事を書いてみます。
ファイルのパーミッション設定なども行いますが、その前に念頭に入れておいた方が良いと思われるものをまず取り上げます。
最近はあまりにメジャーになり過ぎたためか、WordPressに対する攻撃が増えています。
直近でもレンタルサーバーのロリポップを中心とした大規模な攻撃が発生しました。
(私もロリポップにWordPressを置いていた一人でしたが、
この時はたまたま標的にならなかったのか、巷で言われていた現象も自分のWordPnressには起こりませんでしたが、
これは奇跡だったなと感じています。)
このブログもWordpressで動かしてる訳ですが、その当時と同じ対策をしていますので、
私と同じく初心者の方に参考になればと思います。
前置き
上記でも書きましたが、ロリポップへの大規模攻撃はメジャーなTVや新聞でこそ報じられる事はありませんでしたが、
ユーザーの多いロリポップで、メジャーなCMS(ブログを構築出来るシステムと思ってもらえば)のWordPressが攻撃を受けたというのは、ネット界隈では大きな話題となりました。
それだけに、色々な方々が今回の事件での教訓を生かすためにブログ記事を書かれています。
ここだけではなく、そういった記事も合わせて読むとより詳しくなったりすると思います。
(とりわけ、今回の攻撃の舞台になったロリポップはWordPress導入に関する丁寧な記事を公開しています。)
その上で以下の通り説明してみます。
ログインID(ユーザー名)とパスワードは推察されにくいものにする事
これはSNSや各種ネットサービスを利用する際も言え、WordPressに限った事ではありませんが、
ログインID(ユーザー名)やパスワードはデフォルト設定のものでは無く、自分で他人に推察されにくいものを設定しましょう。
WordPressを新規インストールする場合は、標準でログインIDを「admin」と設定可能になっているためです。
また、パスワードは自分で設定しなければなりませんが、
ここも推察されやすい「password」「admin」などといった分かりやすいパスワードを設定する人がいます。
これらは攻撃者にもある程度推察されており、「IDはadmin」「パスワードはpassword、admin他」などといった推察されやすい文字列を、
自動的にアタックを仕掛け、突破を試みるからです。
面倒かもしれませんが、ここをしっかり設定する事が大事です。
なお、先日のロリポップへの攻撃では、ブルートフォースアタックと呼ばれる手法で攻撃された様です。
(いわゆる、ログイン可能と思われるユーザー名やパスワードを総当りでかけてみる。)
そのロリポップではユーザー名・パスワードは以下の様項目を設定の際の注意点とする様呼びかけています。
- – ID(ユーザー名)とパスワードが同一の場合
- パスワードが6文字以下など短い場合
- 推測されやすい単語を使用している場合 (passwordやadminなど)
- パスワードが数字または英字のみの場合(注・英数字だけでなく、記号も含めて設定する様にという事です)
先日のロリポップへの大規模攻撃においても、この手の攻撃が行われた様です。
極力推察されにくい文字列(アルファベットの大文字・小文字、記号も織り交ぜる。文字数も多ければ多い程安全。)を設定して下さい。
WordPressやプラグインのバージョンは常に最新版にする事
WordPressやプラグインは常に「き弱性」が発見されては修正が行われておりますが、
逆に言えばその「き弱性」を突いた攻撃が行われる事もあります。
そうした攻撃のリスクを減らすために、WordPressの管理画面(左側のメニューバー)上で、以下の画像の様なWordPressやプラグインの更新を促す表示が出たら速やかにアップデートしましょう。
これらは管理画面からクリック一つでアッサリ更新してくれるので非常に手軽です。
「ユーザー名」と「ニックネーム」は別々の名称で設定する
これはどの程度効果があるか分かりませんが、取り敢えず外から目に触れなくなるので一応設定します。
管理画面から、「ユーザー」>「あなたのプロフィール」の項目へ進むと、
以下の様な画面が出てくると思います。
そうすると、初期設定のアカウントの場合、
「ユーザー名」と「ニックネーム」の欄に記載の文字列が同じになっている事と思います。
もし同じ文字列が記入されていたら、これを「ニックネーム」欄だけ変更します。(出来るだけユーザー名を連想させない様な文字列に変更してください。
(画像は一部修正しています。)
何故かというと、WordPressの場合、”http://「ブログアドレス」/?author=1″ とアドレスバーに入力すると、
投稿者毎の投稿内容一覧が表示されますが、この時に投稿者のニックネームが表示されてしまう事があります。
この時、「ユーザー名」=「ニックネーム」の設定がされている場合、
どんなに難解なユーザー名にしてても、不特定の第三者にユーザー名がバレてしまいます。
(実際、当ブログでもWordfence Securityというセキュリティ対策プラグインのアクセス解析機能によると、
ブログテーマからは直接アクセスできないはずの、”http://「ブログアドレス」/?author=1″ に対するアクセスがありました。)
なお、”http://「ブログアドレス」/?author=1″の、author=1の数字の部分を、1から2、2から3に変えてアクセスすると、
ユーザーが登録されている分だけ、投稿者毎の投稿一覧ページが表示されますので、
ユーザーを複数登録している場合は、ユーザー毎に対策する必要があります。
なお、プラグインを使って簡単にユーザー名を見えなくする方法もある様です。
http://shirose.jp/2013/06/change-author-slug/(Simple Living 様)
最後に
取り敢えず今回取り上げた分は最低限のものですが、逆にいうと大抵の攻撃には耐えられると思います。
Googleで検索してみても、上記で取り上げた辺りの事は色々なブログ様で取り上げられています。
一旦攻撃を受けるとブログの復旧に多大なコストを費やす事になると思いますので、
私もそうですが、色々な事をやってみて自分のブログを守る様にしましょう。
今度、ファイルのパーミッション設定やプラグインに関する話をしてみたいと思います。