ハッキングからWordPressサイトを守る!セキュリティを高める9つの策

2016年4月21日

2016年4月21日

ハッキングからWordPressサイトを守る!セキュリティを高める9つの策
2013年8月、レンタルサーバーを提供しているロリポップに対して改ざんの被害が相次ぎました。ロリポップは大手のレンタルサーバーサービスのため、ニュースでも大々的に報道されたことはまだ記憶に新しいでしょう。 改ざんやハッキングと聞くと、自分にはあまり関係のないことのように思ってしまいます。でも、こういったセキュリティ被害は誰にでも起こりうる、とっても身近なことなんです。本記事ではWordPressサイトに注目して、セキュリティを高めるための方法を9つご紹介します。WordPressサイトを運営されている方にはぜひ参考にしていただければと思います。

WordPressサイトのセキュリティを高める策

headタグから不要な情報を削除する

テーマ(テンプレート)にもよるのですが、HTMLソースのheadタグ内に、WordPressのバージョン情報が表示されていることがあります。 古いバージョンを使っているのでなければ特に大きな問題はないのですが、必要なければ削除しておきましょう。下記の1行をfunctions.phpに書き込めばOKです。
remove_action(‘wp_head’, ‘wp_generator’);
その他にも、開発時のコメントやブログ編集用のアドレス(EditURI)など不要な情報は削除するようにしましょう。

readme.htmlを削除する

WordPressをインストールすると、readme.htmlというファイルも生成されます。WordPressの概要が書いてあるファイルなのですが、バージョン情報も表示されてしまいます。必要ない場合が多いかと思いますので、削除することをおすすめします。

wp-config.phpのパーミッションを確認する

冒頭のロリポップでの改ざん被害は、WordPressの設定情報が入っているwp-config.phpが原因でした。このファイルのパーミッションが適切でなかったため、第三者がwp-config.phpの中身を見ることができてしまったのです。 適切なパーミッションになっていることもあるかと思いますが、念のためチェックしておくことをオススメします。パーミッションは、管理者のみ読むことのできる「400」がベストです。

データベースのプレフィックスを変更する

WordPressではデータベースにMySQLを使っていますが、デフォルトでは「wp_」というプレフィックスが全てのテーブルにつきます。テーブル名称を予想されてしまうので、このプレフィックスは変更しておくといいでしょう。 WordPressをインストールするときに変更してもいですし、後述する「Acunetix WP Security」などのプラグインを使ってもいいでしょう。

ユーザー名称は予想されにくい文字列にする

WordPressにログインするときには、ユーザーIDを使いますよね。このユーザーIDは、できるだけ予想されづらい文字列にするようにしましょう。一番良くないのが、「admin」というIDです。これは絶対に使わないようにしましょう。 パスワードについても、予想されにくい文字列にするようにしてください。

ユーザー名称はブログに表示しない

テーマによっては、ブログ記事の著者としてユーザーIDが表示されることがあります。ユーザーIDが公開されている状態はとても危険なので、ニックネームなどに変更するようにしましょう。 また、見落としがちなのは著者の記事一覧ページです。このURL末尾にユーザーIDが表示されるので、任意の文字列に変更するなどした方が安全です。

ログイン画面を強化する(画像認証や二段階認証など)

管理画面へのログインに画像認証(キャプチャ)や二段階認証をとり入れることで、セキュリティを向上させることができます。ログインの手間は増えますが、導入も簡単で効果も期待できます。 また、ログイン画面のURLを変えたり、アクセス制限をかけることもよいでしょう。

アップデートをして最新の状態に保つ

WordPress本体やプラグインについては、常に最新のバージョンにしておくことが理想です。バージョンアップには、脆弱性の改善やセキュリティ対策機能が盛り込まれていることが多くあります。プラグインの数が多くなってくると更新するだけでも大変なのですが、時間をとって必ず行うようにしましょう。 なお、アップデートを行う時は事前にバックアップを取っておくことを忘れないでください。

プラグインを使う

WordPressには、セキュリティのためのプラグインが多く知られています。代表的なものをいくつかご紹介しましょう。

SiteGuard WP Plugin

SiteGuard WP Plugin https://wordpress.org/plugins/siteguard/ 日本の企業が開発した、セキュリティ対策のプラグインです。ブルートフォース攻撃など、WordPressのログイン画面を狙ったハッキング被害はよく知られています。「SiteGuard WP Plugin」はWordPressのログイン画面にアクセス制限をしたり、URLを変更するなどの対策ができます。

Acunetix WP Security

Acunetix WP Security https://wordpress.org/plugins/wp-security-scan/ データベースまわりのセキュリティが向上できるプラグインです。上でご紹介した、テーブルプレフィックスの変更もできます。サイトのセキュリティチェックなど、脆弱性の確認も可能。

All In One WP Security & Firewall

All In One WP Security & Firewall https://wordpress.org/plugins/all-in-one-wp-security-and-firewall/ その名の通り、オールインワンなセキュリティ対策プラグインです。ダッシュボードからサイトのセキュリティ状態を外観できたり、ファイアウォール機能やパーミッションのチェックなどの機能も備わっています。ブルートフォース攻撃への対策機能や、テーブルのプレフィックスの変更も可能。

あとがき

WordPressは世界中で使われているCMSです。それだけに、ハッキングなどの標的にされることも多いのです。自分のサイトを改ざんなやクラッキングなどの被害から守るためにも、セキュリティ対策はしっかり行っておきたいですね。