WordPressの不正ログインを防止してセキュリティを高める6つの対策

WordPressの不正ログインを防ぐセキュリティ対策をイメージした黒板に書かれた鍵のマーク

WordPressはブログ作りに必須のツールと言っても過言ではありません。

でもそれだけ広く普及していてからこそセキュリティの穴をついて不正ログインしようとする攻撃者が多いのが現実

不正ログインされてしまうとブログを乗っ取られたり、他サイトへの攻撃の踏み台にされ加害者にもなってしまうこともあります。

ここではその被害を防ぐためのWordPress向けセキュリティ対策をまとめました。

不正ログイン防止の6つの対策

不正ログイン防止のためにしておきたいのが次の対策

  • パスワードを使いまわさない
  • パスワードを強力なものにする
  • ログインIDを外部から隠す
  • SiteGuard WP Pluginを使う
  • ログイン時の二段階認証を導入
  • プラグインをこまめに更新する

この6つについて順にやり方などを解説していきます。

1.ログインパスワードを使いまわさない

ここでいうパスワードとはWordPressにログインするときにユーザー名と一緒に入力するパスワードのことです。

WordPressのログイン画面

このパスワードを考えるのが面倒だからと言って他のサイトやサービスで使っているパスワードを使いまわすと「パスワードリスト攻撃」のターゲットになってしまいます。

パスワードリスト攻撃とはあるサイトのパスワードを見破り、他サイト入力にも不正ログインしようとする攻撃手法のことです。

例えばあなたがサイトAとサイトBとWordPressで同じIDとパスワードを使いまわしたとします。その時攻撃者は一番セキュリティの低いサイトAのパスワードをまず見破り、その後芋ずる式に他のサイトBとWordPressに不正ログインできてしまいます。

同じパスワードを使いまわすことの危険性-パスワードリスト攻撃の図

なのでパスワードを考えるのが面倒くさいとしても使い回しだけは絶対にやめましょう。

もしパスワードを覚える手間を減らしたいならパスワードを一括で管理できる1passwordどのパスワード管理ツールを使うのが良いと思います。

2.パスワードを強力にする

パスワードは当然ながら強力なものにすべきです。

では強力なパスワードを作るための重要なポイントは何かというと次の3つ

  • 個人情報を元にパスワードを作らない
    誕生日や住所などの元にして作ったパスワードは推測しやすいのでつけるべきではありません。また家族の誕生日などにするのも同じです。
  • 辞書にある単語を使わない
    辞書に載っている英単語などはコンピュータが推測しやすいのでそれをそのままパスワードに含めるのは危険です。
  • 桁数が長く文字種類の多いパスワードを使う
    桁数の短い1桁~8桁のパスワードは総当たりで解析すればすぐに見破られてしまいます。また小文字だけしか使わないという場合はさらに破られるスピードが速くなります。なるべく安全なパスワードを作りたいなら半角小文字+半角大文字+数字+記号を全て含むものにするべきです。

ここでパスワードの強度と解析にかかる時間に関する調査結果を紹介します。

以下の表は株式会社ディアイティが調査した圧縮時にパスワードを設定したZipファイルのパスワード強度とその解析にかかる時間の関係を表したものです。

株式会社ditのセキュリティレポートより参照

7ケタで英小文字のみ」しか使用していないパスワードではなんと2秒で破られてしまいます。また桁数が10桁と多くても小文字しか使っていない場合でも見破るのにわずか10時間です。

上の表では緑色で囲んだ部分が安全だと思われる桁数と文字種類です。10桁で英数字+記号を使った場合は解析に527年かかるので、安全なパスワードを目指すなら少なくとも10桁以上でなるべく多くの種類の文字を使うという事が重要だと分かります。

3.ログインIDを外部から隠す

実はWordPressのログインIDというのは外部から丸見えです。

しかもブラウザのURL欄で「あること」をするだけでバレてしまいます。

そのあることとはトップページURLに「?author=1」をつけてアクセスすること

例えば次がアクセスするURLの例です。

https://example.com/?author=1

何も対策されていないならURL欄で次のようにユーザー名が丸見えで表示されます。

http://example.com/author/ユーザー名/

これだとセキュリティ的にかなり危険ですよね。

なのでユーザー名は外から見えないように対策しておきましょう。

その詳しい手順については次記事で解説しました。

WordPressのユーザー名は実は丸見え・・確実に外部から隠す方法
WordPressのユーザー名は「あること」をすれば簡単に分かってしまいます。その状態だとセキュリティ的にかなり危ないのでユーザー名を外部から簡単に隠す簡単な方法を紹介します。

プラグインを導入すれば数分でできるので、是非お試しを

4.SiteGuard WP Plugin を使う

WordPressではログイン画面が誰にでもアクセスできるようになっているのでその時点で不正ログインがされるリスクが高まります。

そこでログイン画面を隠し、セキュリティを高めたいなら「SiteGuard WP Plugin」というプラグインを導入するのがベストな方法です。

このプラグインの導入や使い方は次記事で解説しました。

WPの不正ログイン防止プラグイン「SiteGuard WP Plugin」の設定方法
WordPressのログインページはユーザー名とパスワードさえ分かれば誰でもログインできてしまうので不正ログイン対策は必須です。ここでは「SiteGuard WP Plugin」プラグインで不正ログインを防ぐ方法を紹介します。

導入すると次のような不正ログイン対策が可能になります。

ログイン画面を隠す

WPログインページのURLは次のように「wp-login.php」という部分が共通しています。

http://[ドメイン名]/wp-login.php

そのためログイン画面だけなら誰でもアクセスできてしまうのが問題点

しかしプラグインを有効化するとログインページURLが次のように置き換わります。

http://[ドメイン名]/login_[数字列]

数字列には「12605」などの不規則な数字列が入るので攻撃者がログインページを推測しにくくなるという訳です。

ログイン画面での画像認証

次のようにログイン画面でアカウント名とパスワードに加え、画像表示されている文字列を入力しなければログインできなくなります。

SiteGuard WP Pluginで表示されたログイン画面の画像認証

攻撃者はBotと呼ばれるプログラムを使ってセキュリティを突破することがあるのでこのようにログイン時に人間でないとできない画像認証を設定しておくとセキュリティも強まります。

ログインロック

不正ログインしようとする攻撃者がよく利用するのがパスワードを総当たりで入力していくブルーフォースアタック(力任せ攻撃)と呼ばれる攻撃方法

この攻撃を防ぐために SiteGuard WP Plugin ではログインに失敗しすぎると一定時間ロックがかかってログインできなくなる「ログインロック」という機能がついています。

SiteGuard WP PluginによってログインロックされたWordPressのログイン画面

上の画像は実際にログインロックがかかった時の画面

このように専門知識が無くても簡単に不正ログイン対策が行えるので「SiteGuard WP Plugin」はおススメです。

5.ログイン時の二段階認証の導入

セキュリティを万全にするなら絶対に導入しておきたいのが二段階認証

これは言葉通り、ログイン時にパスワードだけではなく他の認証情報を求めて2段階の認証をさせることです。

例えば従来のログインだと次のように1段階の認証だけで本人確認ができてしまいました。

  1. IDとパスワードを入力
  2. 正しければログイン成功

これだとIDとパスワードを特定されてしまったら終わりです。

二段階認証の場合はパスワードの入力に加えて本人にしかできない認証が求められます。

例えばその例を挙げるとすると・・・

  • 登録したメール宛てに届いた認証コードを入力
  • 音声通話でパスワードを受け取り入力
  • 認証アプリを使って受け取った認証コード入力

・・・などなど

メールや音声通話や認証アプリというのは本人しか受け取ることができないので、なりすましによるログインを防ぎやすくなるという訳です。

WordPressでこの二段階認証を設定するにはminiOrangeプラグインが一番おすすめです。

その導入手順と二段階認証の設定手順について次の記事でまとめたので是非ご覧ください。

WordPressにも二段階認証を!Google Authenticatorの導入手順
WordPressのセキュリティを高めるためにいったい何をすればいいのか・・・その答えの1つがログイン画面で二段階認証を有効にすることです。ここではGoogle Authenticatorを使って二段階認証を設定する手順を紹介

ログイン時にほんの少し手間が増えますが、それだけでセキュリティが抜群に高まります。なので不正ログインの被害にあわないためにも絶対に導入しておいて損はありません。

6.こまめにプラグインを更新

長い間更新されていないプラグインは脆弱性(セキュリティ的に弱いところ)を持っていることがあるのでこまめに更新した方が良いです。

更新手順ですがまずメニューから「プラグイン」ー>「インストール済みプラグイン」と進みます。

そしてインストール済みプラグインの一覧画面の「利用可能な更新」の横に(3)などの数字がかかれていたなら更新しなくてはならないプラグインがあるという事なのでそのリンクをクリックしてください。

プラグイン一覧から「利用可能な更新」をクリック

利用可能なプラグインが一覧表示されるので次のように全てのプラグインをチェック

更新可能なプラグインを全てチェック

そして「一括操作」のプルダウンメニューから「更新」を選び、「適用」ボタンを押すとプラグインの更新が始まります。

「更新」を選び、「適用」ボタンをクリックするとプラグインの更新が始まる

更新が完了するとプラグインの下に「更新しました」というメッセージが表示されます。

まとめ

WordPressの不正ログイン対策をまとめると次の通り

  • パスワードを使いまわさない
  • パスワードを強力なものにする
  • ログインIDを外部から隠す
  • SiteGuard WP Pluginを使う
  • ログイン時の二段階認証を導入
  • プラグインをこまめに更新する

ブログやサイトを乗っ取られて嘘の情報を発信するための踏み台にされたり、加害者にならないように普段からセキュリティ対策はしっかりしておきましょう。

The following two tabs change content below.

フク郎

昔はプログラミングに熱中していたが、ブログとWordPressに興味を持ち始め今はサイト・ブログ作りが生きがい。自分の「好き」をブログに変えたい、情報発信したい人に役立つWordPress術・サイト構築術を発信中。一日一歩楽しんでブログ構築できるように読みやすい&楽しい記事作りを心がけています。Twitterアカウントはこちら ⇒ フク郎@Fukuro-Press