パスワードを推測したり、暗号文を解読したりするために取られる手法の1つで、可能性があるすべてのパターンを片っ端から試していく方法のことです。
もちろん手動で行うのではなく、プログラムを使って、コンピュータに行わせるのが普通ですが、それでも、パターンの数が膨大ならば、かかる時間は現実的でないものになります(そのため、パスワードの文字数は長い方がいい)。効率を上げるために、可能性が高いものをリストアップしておき、それらを優先して試す方法(辞書攻撃)と組み合わされることがあります(そのため、ありがちなパスワードを避けた方がいい)。
かかる時間を無視していいのならば、いつか必ず正解にたどりつけるので強力な手法ですし、非常に単純なので、汎用的に使える手法でもあります。ただし、ログインパスワードを試行するといった場面で用いられる場合、ログイン失敗が数回繰り返されたときに、システム側でロックをかける仕組みによって阻まれます(時間をおいて再試行したり、異なる IPアドレスから試行したりすることで、この手の仕組みを回避できる可能性はあります)。
関連する攻撃手法として、リバースブルートフォースアタックがあります。ブルートフォースアタックは、1つのユーザーID をターゲットにして、すべてのパスワードを試すかたちですが、リバースブルートフォースでは、複数のユーザーID に対して、1つのパスワードを順に試すという考え方です。1つ1つのユーザーID に対する試行回数は1回だけなので、前述した、ログイン失敗が数回繰り返されたときに、システム側でロックをかける仕組みでは防げません。
Programming Place Plus のトップページへ
はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
X で ポスト/フォロー | LINE で送る | noteで書く |
RSS | 管理者情報 | プライバシーポリシー |