WordPressの管理画面のパスワードはどう決める?突破されにくいパスワードの決め方

目次
  1. 攻撃者にログインを突破されるとどうなる?
  2. どうやってログイン画面を突破する?
    1. 総当たり攻撃(ブルートフォース)
    2. 辞書攻撃
    3. リスト型攻撃
  3. パスワードは長くて複雑で推測されないもの
    1. 自分が覚えられる範囲で決めないこと
    2. WordPressがユーザーを作るときに自動で生成してくれる
  4. 生成したパスワードはどう管理する?
    1. ブラウザに覚えてもらう
    2. パスワードを忘れたら再発行する
    3. やってはいけない保存方法
  5. さらにログイン突破されるリスクを減らすために
    1. 二要素認証
    2. ログイン試行制限
  6. パスワードは「覚えられるもの」から卒業しよう

パスワードは「password」、のようなありふれた設定をしていないでしょうか…?WordPressに限った話ではないですが、推測されやすいユーザー名、パスワードであると悪用されるリスクは増えていきます。

自分だけしか使わない管理画面だし、って思っていたら大間違いです。攻撃者は、脆弱なWordPressサイトがないかを自動的に探し、攻撃を試みています。

関係ないと油断していると、ある日突然被害にあう、ということがあるということですね…。

そんな大事なパスワードについて、なぜ大事なのかを整理しつつ、どのように決めていけばいいか確認していきましょう!

攻撃者にログインを突破されるとどうなる?

まずは、実際にどういった被害になるのか、確認しておきましょう。

管理者権限のアカウントでログインされると、WordPress内のさまざまな操作を第三者に行われる可能性があります。(管理者権限のユーザーでログインされた場合)

特に問題となるのは、プラグインのZipファイルをアップロードできる機能ですね。使っている人はあまりいないかもしれませんが、プラグイン一式を格納したZipファイルをアップロードしてサーバー上に配置してプラグインとして認識する方法ですね。要するに、PHPなどのコードを含んだプラグインをサーバー上に配置できる機能です。

攻撃者の視点に立つと、攻撃の起点となる不正なファイルを置き放題ということですね…。そして、その攻撃用のファイルを起点にして、WordPress内の情報を盗んだり、さらにサーバー内への攻撃を広げたりする可能性があります。

こうして攻撃の起点が作られると、いろんな攻撃ができるようになります。

  • データベースにアクセスして情報を盗み見る
  • 不正なサイトへ誘導するためのページに作り替えられる
  • 個人情報を収集する用の不正なページに使われる
  • 不正なメールを送信する拠点とされる
  • 関係ないページがインデックスされてSEOが汚染される
  • 同じサーバーで管理されている他のサイトにも被害が広がる可能性がある

など

まずは、WordPressだけでなくサーバー側にも被害が広がる可能性がある、ということを覚えておいてもらえたらと思います。それくらい管理者は強い権限です。


どうやってログイン画面を突破する?

ユーザー名とパスワードを考える前に、どうやってログイン画面を突破しているのか、確認しておきましょう。攻撃の手法も確立されているものが多くあります。

  • 総当たり攻撃(ブルートフォース)
  • 辞書攻撃
  • リスト型攻撃

が有名なところです。それぞれ見ていきましょう。

総当たり攻撃(ブルートフォース)

文字の組み合わせを、片っ端から機械的に試す攻撃です。

  • パスワード「a」
  • パスワード「ab」
  • パスワード「abc」

みたいな感じで、順番に試していくんですね。仮にパスワードが「a」のような極端に短いものだった場合、非常に短時間で突破される可能性があります。

総当たり攻撃に強いのは、長くて複雑な組み合わせのパスワードです。1文字より16文字。小文字アルファベットだけより、小文字・大文字・数字・記号の組み合わせ、といった具合です。

短くてシンプルなパスワードにしないようにしましょう。

辞書攻撃

「password」「123456」「abcde」のような、よく使われるパスワードのリストを順番に試す攻撃です。冒頭で「password」を例にしましたが、まさによく使われるパスワードの辞書に載っているものなので、非常に早い段階で試される可能性があります。

組み合わせてもあまり効果はありません。名前+誕生日のような組み合わせは思いつきやすいと思いますが、しっかりと辞書にも登録されているので突破されやすくなります。P@sswordのように大文字や記号が入っていても弱いパスワードです。

こういったありふれたパスワードは絶対に設定しないようにしましょう。

リスト型攻撃

他のサービスから漏れた「ユーザー名とパスワードの組み合わせ」を、そのまま試す攻撃です。

これがやっかいなのは、パスワード自体がどれだけ強くても、使い回していたら意味がないこと。どこか1つのサービスで漏れたら、同じ組み合わせが世界中で試されます。

対策としては、使い回ししない、ということが大事になります。


パスワードは長くて複雑で推測されないもの

パスワードは、先ほど紹介した攻撃でヒットしづらくすることが重要です。改めて整理すると、総当たり攻撃に対しては、文字数を多くして小文字・大文字・数字・記号の組み合わせにする。

辞書攻撃に対しては、よく使われるパスワードにしないこと、そして、リスト型攻撃に関しては、同じパスワードを使い回ししない、ということです。

自分が覚えられる範囲で決めないこと

自分が覚えられる範囲で決めると、辞書攻撃にあいやすいパスワードになったり、シンプルで入力しやすいパスワードになりやすいです。また、そうやって1つ決めたパスワードはいろんなサービスで使い回していたりしないでしょうか?

突破されづらいパスワードにするためのポイントは、パスワードを自分で決めないことです。紹介してきたあらゆる攻撃に耐えられる安全なパスワードは機械的に決めてもらいましょう。

WordPressがユーザーを作るときに自動で生成してくれる

WordPressのプロフィール画面で「新しいパスワードを生成」を押すと、長くてランダムなパスワードを自動で作ってくれます。

例えば、m4RQGRtx@%5K7gtAIPZJlTcgというパスワード。とても覚えられるパスワードではないと思いますが、パスワードは覚える必要はありません。わたしももうパスワードは1つも覚えていません。

先ほども言ったように、覚えやすさを優先すると推測されやすいパスワードになりやすいので、基本的にはWordPressが推奨してくれたパスワードをそのまま使うようにしましょう。

生成したパスワードはどう管理する?

「覚えなくていい」と言われても、じゃあどこに置いておけばいいの…?となりますよね。

手軽なのは、ブラウザのパスワード管理機能に覚えてもらう方法です。

ブラウザに覚えてもらう

Chrome・Safari・Edgeには、最初からパスワードを保存する機能がついています。ログインしたときに「パスワードを保存しますか?」と聞かれる、あれですね。

「保存」を押す。これだけです!

次からはログイン画面を開くと自動で入力してくれるので、あの長いパスワードを自分で打つことは一度もありません。新しくツールを入れる必要もないので、まずはこの機能を使うようにしましょう。

ポイントは、ブラウザにアカウントでログインしておくことです。

  • Chrome → Googleアカウント
  • Safari → Apple Account(iCloud)
  • Edge → Microsoftアカウント

こうしておくと、アカウントを使ってパスワードを同期しておけば、別の端末でも保存したパスワードを利用できます。

その代わり、GoogleやAppleなどのアカウント自体が重要になります。アカウントを不正利用されると、保存しているパスワードにも影響が及ぶ可能性があります。GoogleやAppleのアカウント自体にも、二要素認証は必ず設定しておきましょう。

パスワードを忘れたら再発行する

ブラウザが覚えているとはいえ、「別のパソコンから急にログインしたい」「保存する前に閉じてしまった」ということもあると思います。

そのときは、思い出そうとしなくて大丈夫です。

ログイン画面の「パスワードをお忘れですか?」から、登録しているメールアドレスに再設定のリンクが届きます。そこから新しいパスワードを生成して、またブラウザに保存してもらう。それで終わりです。

覚えていないパスワードは「再発行するもの」と割り切ってしまいましょう。

ただ、ここで気づいた人もいるかもしれません…。再発行がメールでできるということは、そのメールアカウントも、WordPressへのアクセスを守るうえで非常に重要なアカウントになります。メールのパスワードも同じ基準で強くして、二要素認証も設定しておいてください。

やってはいけない保存方法

念のため、やめてほしい保存方法も書いておきます。

  • Excelやメモ帳のファイルに一覧で書いておく
  • チャットやメールで送って、そのまま残しておく
  • ふせんに書いてディスプレイに貼る

Excelやメモ帳などにパスワードをそのまま保存していると、ファイルを盗まれた場合にパスワードもそのまま知られてしまいます。ふせんに書いてディスプレイに貼っているとオフィスに来た人全員に見えてしまいますね…。

ブラウザに保存する、忘れたら再発行する。この2つで十分です。

さらにログイン突破されるリスクを減らすために

パスワードを強くすることが大事ですが、2重、3重に対策をしておくと、より突破されづらくなります。

二要素認証

二要素認証は、パスワードが漏れても、スマホの確認コードがないと入れない仕組みです。鍵を2枚にするイメージですね。

「Two-Factor」のようなプラグインで導入できます。

Two-Factor – WordPress プラグイン | WordPress.org 日本語

ログイン試行制限

ログイン試行制限は、何回も間違えたらしばらくロックする仕組みです。短時間に繰り返されるログイン試行を制限できます。こちらも「SiteGuard WP Plugin」のようなプラグインや、サーバー側の機能で設定することが可能です。

この2つを組み合わせることで、「正面玄関で鍵を試す」ようなログインへの攻撃に対して、さらに強くすることができます。

SiteGuard WP Plugin – WordPress プラグイン | WordPress.org 日本語

パスワードは「覚えられるもの」から卒業しよう

WordPressの管理者アカウントを不正に利用されると、サイトの内容を書き換えられたり、不正なファイルを設置されたりするなど、さまざまな被害につながる可能性があります。

その入り口となるログイン画面を守るためにも、まずはパスワードを見直してみましょう。

ポイントは、

  • 長くてランダムなパスワードにする
  • 他のサービスと同じパスワードを使い回さない
  • 自分で覚えようとせず、ブラウザなどのパスワード管理機能を利用する
  • さらに二要素認証やログイン試行制限を組み合わせる

といったところです。

特に、「自分が覚えられるパスワードを考える」というところから卒業することが大切です。

WordPressが生成してくれるような長くてランダムなパスワードを設定して、パスワードマネージャーに覚えてもらいましょう。

最初は「こんな長いパスワードで大丈夫なの?」と思うかもしれませんが、自分で入力する必要はありません。

パスワードは人間が覚えるものではなく、パスワードマネージャーに管理してもらうもの、と考えておくと安全なパスワードを使いやすくなります。

そして、パスワードだけに頼るのではなく、二要素認証なども組み合わせながらWordPressのログイン画面を守っていきましょう。

WordPressでお悩みの方はお気軽にご相談ください。

ちょっとしたお困り事からサイト全体のリニューアルのようなご依頼まで、お悩みに応じて柔軟に対応いたします。

この記事を書いた人

はにわまん

HPcode代表。300件以上のWordPress案件を対応してきました。ちょっとしたWordPressのカスタマイズからブロックテーマでのリニューアルまで。更新できるWordPressサイトが好きです。