ブルートフォース攻撃の仕組み
「ブルートフォース(Brute Force)」は「力ずく」という意味です。4桁のダイヤル錠も、0000 から 9999 まで順番に回していけば、いつかは必ず開きます。ブルートフォース攻撃は、これをプログラムで自動的に、非常に速く行うものです。
実際には、すべての組み合わせを順に試すだけでなく、「password」「123456」のようなよく使われるパスワードや、辞書に載っている単語を優先して試す方法もあります(辞書攻撃と呼ばれ、ブルートフォース攻撃の一種として扱われることもあります)。パスワードが短く単純なほど、短時間で突破されやすくなります。
似た攻撃に、ほかのサイトから流出したIDとパスワードをそのまま試すパスワードリスト攻撃があります。
WordPressサイトでの例
WordPressのログイン画面は、標準では /wp-login.php という決まった場所にあります。そのため、多くのWordPressサイトが、自動化されたプログラムから日常的にログインを試されています。
- ログイン画面への連続アクセス:ユーザー名「admin」や、サイト名・ドメイン名に似たユーザー名で何度も試される
xmlrpc.phpの悪用:外部のサービスと連携するための窓口で、ログイン画面とは別にパスワードを試す経路として狙われることがある- ユーザー名の下調べ:投稿者のページなどから、実際に使われているユーザー名を調べたうえで試されることがある
WordPressは標準ではログインの失敗回数を制限しないため、対策をしていないと試行を何度でも繰り返されます。突破されると管理画面を乗っ取られ、バックドアの設置や改ざんにつながります。また、大量のアクセスでサーバーの負荷が高まり、サイトが重くなることもあります。
見つけ方・確認方法
- サーバーのアクセスログに、
wp-login.phpやxmlrpc.phpへの短時間の大量アクセスが記録されていないか確認する - セキュリティ系のプラグインを入れている場合は、ログイン失敗の記録を確認する
- サーバー会社から、負荷の上昇や不審なアクセスについて連絡が来ていないか確認する
- ユーザー > ユーザー一覧 で、作成した覚えのない管理者がいないか確認する




