総当たり攻撃(ブルートフォースアタック)は、パスワードを盗むための攻撃方法のひとつです。
パスワードを順番に試していくことで、いずれはそのパスワードにたどり着くかもしれない、という攻撃です。
総当たり攻撃(ブルートフォースアタック)とは?
総当たり攻撃(ブルートフォースアタック)は、パスワードを順番に試していき、本当のパスワードを探し出すものです。
たとえば、山田先生とりこちゃんが、こんな会話をしているとします。
せんせー、先生っていま何歳?
何歳だと思うべ? 当てたら、わたすのおやつあげるべ!
えっと、0歳?
違うべよ
1歳?
違うべ
2歳? 3歳? 4歳?
わわわ、そんなのずるいべ!
というのが、総当たり攻撃です。
この方法ならば、いつかは山田先生の年齢が分かってしまいます。
総当たり攻撃(ブルートフォースアタック)の詳しい説明
総当たり攻撃には大きな欠点があります。
一番の欠点は、ものすごく時間がかかることです。
山田先生の年齢ぐらいならばこの方法ですぐに分かりますが、パスワードとなると、何桁もの数字と文字、記号で作られています。そうなると、相当な数を試さなくてはなりません。
数字が0〜9で10個、アルファベットがa〜zで26個あります。さらにアルファベットは大文字と小文字があるので、合わせて52個、数字もあわせると62個です。記号が32個だとして、それも合わせると94個です。
さらにその組み合わせは、桁数が増えるほど、どんどん増えていきます。
たとえば、4桁までのパスワードを考えるならば、「94 + 94の2乗 + 94の3乗 + 94の4乗」通りの組み合わせになります。
そこで、ハッカーは考えます。どうせ記号なんて使ってないだろ、と。さらには、大文字なんて使ってないだろ、数字しか使ってないだろ、といったふうに、パスワードの条件をしぼります。
数字しか使っていなければ、4桁までのパスワードは「10 + 10の2乗 + 10の3乗 + 10の4乗」となり、試す組み合わせも一気に少なくなります。これが、数字のみのパスワードが危険な理由です。
総当たり攻撃を防ぐためには、複雑なパスワードにする、ログインを試みる回数を制限する、といったことが重要になります。
また、そのほかの攻撃の方法として、逆総当たり攻撃や、辞書攻撃などがあります。
まとめ
総当たり攻撃は、順番にパスワードを試していき、本当のパスワードを探す攻撃方法です。
しかし、その分時間がかかるという欠点も持っています。
総当たり攻撃を防ぐためには、複雑なパスワードにすること、ログインを試みる回数を制限することが、重要になります。