IT·テック

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

暗証番号を忘れた自転車のダイヤル錠を、「0000」から「9999」まで手当たり次第に全部回して開けようとするのと同じです。

  • 約3分
  • 図 1点
  • 2026-10-12 検証

定義

総当たり攻撃(ブルートフォースアタック)とは、パスワードや暗号鍵を割り出すために、考えられる文字の組み合わせを最初から最後まで手当たり次第に入力していくサイバー攻撃の手法です。コンピューターの圧倒的な計算スピードを武器に、鍵が開くまでひたすらドアを叩き続けるような仕組みです。

自転車のダイヤル錠を最後まで回し続ける仕組み

4桁の数字でロックされた自転車の鍵の番号を忘れてしまったとき、一番シンプルな解決策は何でしょうか?それは「0000」から始めて「0001」「0002」と順番に、カチャリと開くまであらゆる番号を片っ端から試す方法です。

人間が手作業でダイヤルを回せば、1万通りの組み合わせを試すのに何時間もかかってしまいます。しかし、コンピューターのプログラムなら、わずか1秒の間に数千万回以上もの番号を代わりに試すことができます。

攻撃者はこの強力な計算能力を使って、私たちが設定したパスワードを手当たり次第に入力していきます。数学的にあり得るすべてのパターンを1つも漏らさず試すため、十分な時間さえあればいつかは必ず正解にたどり着く、力技ながら確実な手法なのです。

もう少し詳しく:なぜパスワードの長さにこだわるのか?

もう少し詳しく言うと、総当たり攻撃の成否は「組み合わせのパターン数」と「コンピューターの計算スピード」の勝負です。もしパスワードが数字4桁なら、組み合わせはたったの1万通りしかなく、コンピューターなら1秒もかからずに解いてしまいます。

しかし、そこにアルファベットの大文字・小文字や記号を混ぜ、長さを12文字以上に伸ばすと状況は一変します。作れるパターンの数が、想像を絶するほど天文学的な数字へと爆発的に跳ね上がるからです。

攻撃者の使う機材やサービスのパスワード保存形式にもよりますが、すべての組み合わせを総当たりで試すには、現実的に何百年以上もかかる計算になります。多くのサイトが記号を含めた長いパスワードの設定を求める理由はまさにここにあります。攻撃者がプログラムを走らせても、一生かかっても解けないほど時間を稼ぐための頑丈な盾なのです。

サービス側はどのようにこの攻撃を防いでいる?

どんなに複雑なパスワードでも、無制限に入力を許していては、いつか突破されてしまうリスクが残ります。そのため、Webサイトやスマートフォンには総当たり攻撃を食い止めるための様々な安全装置が用意されています。

端末やサービスによって仕様は異なりますが、スマートフォンのロック画面のように、パスワードを何度も間違えると一定時間入力を受け付けなくなったり、アカウントをロックしたりする仕組みがその代表例です。コンピューターが1秒間に何百万回試そうとしても、1回入力するごとに待機時間を挟ませれば、攻撃スピードが劇的に落ちて実質的に成功しなくなります。ただし、パスワード情報そのものが丸ごと漏洩してしまうと、攻撃者の手元で制限なく総当たりを試せてしまうため、こうした仕組みだけでは防げません。やはりパスワード自体の長さも欠かせないのです。

ぐにゃぐにゃと歪んだ文字を読ませる「CAPTCHA(キャプチャ)」や、スマホへ確認コードを送る「2段階認証」も、プログラムによる自動入力をシャットアウトする強力な防御壁となります。

よくある誤解

誤解

総当たり攻撃は、極めて高度で洗練されたハッキング技術だ。

事実

技術的には最も単純で、いわば「力技」の攻撃です。システムの隠れた欠陥を突くのではなく、コンピューターの計算スピードに任せて単調な入力作業をひたすら繰り返しているだけなのです。

日常で出会う場面

  1. ログインパスワードを何度も間違えたときに「5分後にやり直してください」と表示されるのは、総当たり攻撃を防ぐための仕組みです。

  2. 電子錠(スマートロック)の暗証番号を連続で間違えると、一定時間ロックされて入力できなくなるのも、総当たり攻撃への対策です。

つまり ひとことで

総当たり攻撃は正解が出るまであらゆる組み合わせを試す手法で、長いパスワードや2段階認証で防ぐことができます。

作成 2025-04-25 更新 2026-10-12 検証 2026-10-12