新米ウェブマスターのためのウェブマスターブログ

WordPressが改ざん!?サイバー攻撃の原因と目的、セキュリティ対策について

2014年2月5日 11:29

wordpress-security

WordPressが改ざんされた」「WordPressがクラックされた
こんな記事をよく見かけます。

2013年8月には、ユーザ数100万人を超える格安レンタルサーバ「ロリポップ」にインストールされているWordPressが狙われ、8,000件超のサイトが改ざんされる大規模な攻撃がありました。

 

WordPressは狙われている

WordPressはなぜ狙われるのでしょうか?
それは、WordPressが、

  • 誰でもソースコードを閲覧可能(オープンソース
  • もっとも利用者の多いプラットフォーム

であるからです。
例えるなら敵に本営の図面を渡しているようなものです。
悪意あるハッカーは、ソースコードから攻撃の突破口(セキュリティホール)を見つけ出しては攻撃を仕掛けてくるのです。

ですが、WordPress開発チームもただ指をくわえて見ているわけではありません。
セキュリティホールを埋めるべく、また、さらなるセキュリティ強化のため開発が行われています。
しかもこれが、世界中の技術者によるボランティア的貢献によるものだというのだから頭が下がります。
WordPressの安全を維持するには、アップグレードが必要不可欠です。

どんなサイバー攻撃をされるのか?

WordPressを標的にした攻撃によく用いられるのが、.htaccessリダイレクトアタックというものです。
目的は様々ですが、その1例をひとつ。

  • WordPress本体及びプラグインのセキュリティホールからファイルをアップロード。
  • アップロードしたファイルのプログラムを媒介に.htaccessを改ざん。
  • .htaccesのリダイレクトを使って全く別のサイトへ飛ばす。
  • リダイレクト先のサイトでウイルスに感染する

サイトにアクセスしたユーザまでも被害者にしてしまうところが恐ろしいですね。

他にもユーザ認証のかかったページへの侵入を計るブルートフォースアタック(総当り攻撃)や、サイトのトラフィックを意図的に増大させ、サーバをダウンさせるなどのダメージを与えるDoS攻撃などがあります。

サイバー攻撃の目的とは?

「人に恨みを買うようなサイトじゃないし、攻撃される覚えなんてないよ!こんな平凡なブログを攻撃して何のメリットがあるっていうんだ!」
お怒りはごもっとも。ですが、怨恨や個人情報の収集だけが目的ではありません。

  • マルウェア配布サイトに遷移させてやる(.htaccessリダイレクトアタックなど)
  • サイトを閲覧困難な状態にしてやる(DoS攻撃など)
  • クラックすることが目的(愉快犯

ロリポップのそれのように、サイトタイトルを「Hacked by Krad Xin」に改ざんし、犯行声明を出すといった愉快犯もいますが、ほとんどはマルウェア配布サイトへの遷移が目的です。

セキュリティ対策

では、それらの攻撃から守るための対策として、何をすれば良いのでしょうか?
以下にあげる5つの対策はとても単純でとても簡単ですが、やるとやらないでは雲泥の差があります。
是非、実践することをお勧めします。

 

WordPressとプラグインのバージョンを最新に保つ

先に述べたとおり、これがもっとも有効な手段です。
しかし使用しているプラグインによっては、アップグレードによって動作しなくなる場合がありますので注意が必要です。

ここでプラグインの利用について注意点を。

  • 非公式のプラグインは絶対に使わない
    自身による開発のものや、信頼できるものであれば構いません。
  • なるべく利用者が多く、頻繁に更新がされているプラグインを選ぶ
    信頼できるかどうかは利用者数、更新頻度などから判断しましょう。
  • 有効化していないプラグインは削除する
    有効化していなくても、セキュリティホールを使われる可能性があります。

アップグレードの際には、データベースのバックアップを忘れずに行いましょう。
ちなみに3.7から自動バックグラウンド更新機能が追加になり、自動的にアップグレードされるようになりました。

テーブルの接頭辞「wp_」を予測されにくいものに

これを変更することで、データベースのテーブル名をわからなくすることができます。
インストール時に早速変更のチャンスがやってくるので、忘れずに変更しましょう。
後々変えるのは結構面倒ですよ。

WordPressのユーザ名とパスワードをよりセキュアなものにする

ユーザ名はデフォルトのままだとadminになります。
悪意あるハッカーは、ユーザ名がadminのままであることを前提に、ブルートフォースアタック(総当り攻撃)でパスワードを破ろうとしてきます。要するにあらゆる組み合わせを片っ端から試すのです。
ユーザ名を変更することはもちろん、大文字と小文字を混ぜた英数字を組み合わせて、予測されにくいより複雑なものにしましょう。

ログインページにベーシック認証や、IPアドレス制限をかける

ブルートフォースアタックを未然に防ぐために、ログインページ自体にBasic認証をかけてしまいましょう。
方法は以下。

<Files wp-login.php>
AuthName "Input ID & Password"
AuthType Basic
AuthUserFile 【WordPressがインストールされたディレクトリのフルパス】/.htpasswd
Require valid-user
</Files>

フルパスがわからない場合は、下記のコードを拡張子.phpでサーバにアップロードし、ブラウザでアクセスしてみてください。

<?php echo __FILE__; ?>

ちょっと難しくてわかんないよって方は、サーバをレンタルしている業者に問い合わせてみましょう。すぐに教えてくれますよ。

固定IPアドレスをお持ちなら、IPアドレスで制限すればよりセキュアです。

<Files wp-login.php>
Order deny,allow
Deny from all
Allow from 【IPアドレス】
</Files>

パーミッション(アクセス権)で改ざんから守れ!

重要ファイルはパーミッションを最適化して守ります。
具体的には.htaccesswp-config.phpのパーミッションを読み込みのみ許可に変更します。
レンタルサーバーの場合は404が一般的です。
suEXECがインストールされているサーバであれば、wp-config.php400でもOKです。
パーミッションについては、後日掘り下げます。

まとめ

WordPressはとても便利ですが、セキュリティへの配慮を怠ると思わぬしっぺ返しが待っています。
そして被害者は自分だけだと思ったらそれは大間違いです。
サイトを訪れた人にも、同じサーバの同居人にも迷惑をかけてしまいます。
例えるなら、インフルエンザにかかっているのに部屋に人を招き入れるようなものです。
人為的な狙い撃ちでさえなければ、この記事で紹介した最低限の対策だけで十分に防御可能です。

 

コメント / トラックバック

このエントリーに対するコメント / トラックバックはまだありません。

メールアドレスが公開されることはありません。
*が付いている欄は必須項目です

*
*

次のHTMLタグと属性が使えます : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

トラックバック :

ページの先頭へ