WordPress保守 公開日: 最終更新日:
自分でできるWordPress保守の基本:パスワードは大切に!複雑に!
仕事や趣味で小規模なWordPressのサイトを運営している方へ向けた、サイト保守・運用の基本です。今回は、パスワードの管理についてのお話です。
サイトのセキュリティに関するお話ですが、ここでは、あまり詳しくない人でも想像しやすいように、簡単に説明をします。
このシリーズの投稿はこちらをご覧ください。
Contents
パスワードアタックとは?
「パスワードアタックで、不正アクセスされた」
「パスワードを破られた」
などという話を聞いたことがあるかもしれません。
WordPressサイトでパスワードアタックが起こる場合、攻撃者はダッシュボードへログインする画面から、機械を使ってユーザーアカウントとパスワードを入力し、ログインを試みます。
機械を使って攻撃を行うので、攻撃者は自動で作業を行っているということになります。
管理者としてログインできてしまえば、サイト内で自由に操作できることになります。
例えば、
- プラグインやテーマを勝手にインストール。不正なファイルを含む、偽のテーマやプラグインをインストール
- インストールした不正ファイルを利用して、バックドアを設置しサーバーに侵入
- 勝手に投稿内容を改ざん。サイトと関係のない不正な内容の投稿
- テーマファイルカスタマイザーから、ファイルに不正なコードを追記
- ECサイトの場合は、お客様の情報を収奪
- サイトを介してスパムメールを送信
など、パスワードアタックを契機として様々な攻撃が可能となってしまいます。
どうやって不正ログインを行うのか?
通常、サイトのURLに続いて
/wp-logon.php
と入力すると、ログイン画面に遷移することが可能です。(サブディレクトリを使っている場合やセキュリティプラグインを使っている場合等は、この限りではありません)
ログイン画面では、
「2つも入力箇所があり、ユーザー名とパスワードの組み合わせが必用なのに、攻撃者はそんなに簡単に見破ることができるものなのか?」
という疑問がわくと思います。
いくつかの対策をとっていない場合、また、攻撃者によっては、この答えは「Yes」となってしまいます。
まずはユーザー名です。
ユーザー名(アカウント)はばれてしまう可能性がある
WordPressのコアが少し古い場合は、インストール時に、ユーザー名に「admin」が初期状態で入力されていました。そのまま管理者ユーザーをadminにして、パスワードだけ自分で設定しているケースが多くありました。
ですので、機械によるパスワードアタックでは、adminというユーザー名を使って様々なパスワードを試行することがあります。
また、サイト内でお問合せ用のメールアドレスを公開している場合、そのアドレスが管理者のメールアドレスであることも予測できるため、ユーザー名は比較的簡単に割り出せる場合があると言えます。
難しい話になるのでここでは説明しませんが、サイトによっては、いくつかの方法で管理者のユーザー名を外部から割り出すことが可能です。これらの方法を攻撃者が攻撃プログラムに組み込んでおり、ユーザー名を把握できるサイトだけを攻撃対象にした場合、パスワードを見つけ出すだけで、ログインが可能となります。
パスワード
ここまできておわかりのように、こうなるとパスワードが最後の砦になってしまいます。
パスワードの突破の代表的な手法を紹介します。
まず「辞書攻撃」というものがあります。辞書に登録されている単語や人物名などを組み合わせたものをパスワードに使用してログインを試みる方法です。攻撃するためのツールが存在します。ユーザー側では、パスワード忘れ防止のために、単語や人名などを使ったパスワードを使用する場合も多く、そういったケースを想定したパスワード破りの方法です。
他には、ブルートフォースアタックと呼ばれるものがあります。ブルートフォースとは、「力任せ・強引な」といった意味ですが、総当たりの攻撃です。使用可能な文字すべてを使用して文字列を組み合わせてパスワードとして試行する攻撃手法です。
最近は機械で攻撃することが増えています。
機械(攻撃ツール)を使ってしまえば、桁数が少ないパスワードや、わかりやすい文字や数字の羅列のパスワード、記号等を使わないものは、自動的に、比較的短時間で解読されてしまいます。
近年行われているWordPressのパスワードアタック
途方もない数の組み合わせの文字列を使って攻撃するにあたって必要なことは、攻撃側のマシンの処理能力です。自動的な攻撃で、マシンの処理能力が高ければ、速くパスワードを見破れるようになります。
ハッキングやサイト改ざん、フィッシング詐欺の攻撃者が多くいると言われている中国では、2021年に仮想通貨の取引と採掘(マイニング)を全面的に禁止されました。
その後、2022年頃から、パスワードアタックの被害が増えてきていると言われています。
この背景として、中国ではこれまで仮想通貨のマイニングをしていた処理能力の高いマシンが使えなくなってしまい、これらのマシンが攻撃用に流用されているのではないかと言われています。
自分でできるパスワードアタック予防策
このように、パスワードアタックは危険な攻撃方法です。
最後に、予防策をいくつかご紹介します。
第一の基本は、複雑なパスワード
基本の予防策として、パスワードを複雑にすることが第一にあげられます。
・桁数を多くする
・英語数字記号を組み合わせる
・意味のある単語の使用は避ける
・他のアプリやサイトとの使いまわしはしない
シンプルなパスワードでログインしている方は、上記に注意してパスワードを変更しましょう。
攻撃者のマシンが高性能になっても、桁数が多くランダムな組み合わせの文字列は、割り出しまでに時間がかかり、突破されにくくなります。
WordPressダッシュボードやインストール時の設定画面では、パスワードの自動生成が可能です。
また、自分で作ったパスワードについても安全度の表示がされますので、なるべく強力なパスワードを使用しましょう。
その他にできること
セキュリティ系のプラグインを使うと、ユーザー名を隠す・ログイン画面のURLの変更・2要素認証などをすることができます。
会員制のサイトやお客様の個人情報を預かるサイトの場合は、こういったプラグインを使うことも検討すると良いと思います。
とはいえ、セキュリティには100%安全、ということはありません。
ですので、パスワードが複雑なら必ず大丈夫!プラグインを使えば、必ず大丈夫!ということも断言はできないものです。
まず、長い桁数の複雑なパスワードに設定しておくことは、万一攻撃をされても突破されにくくなる予防策として最も簡単な方法ですので、簡単なパスワードを使用している方は、是非変更してみてください。
また、こうしたパスワードに関する攻撃は、WordPressに限らず、他のアプリケーションやWEBサービスにも言えることですので、気をつけましょう。