ブルートフォース攻撃について

概要

・パスワード/暗証番号を破る手法の一つ
・英語で「brute force attack」。bruteは「総当たり」、forceは「力(チカラ)」。
 よって別名「総当たり攻撃」。
・一文字ずつ変えながら全ての組み合わせの文字列でパスワード解除を試みる。
・原始的であり確実な手法。ただ他の手法に比べ時間が掛かる。
・パスワードに使用可能な文字の種類(例:アルファベットの小文字は26文字)と、
 パスワードの桁数(例:4桁)によりパスワード解除を試みる回数が決まる。
・試みる回数が増えるほど、パスワードを解除までに掛かる時間が長くなる。

例(宅配ボックスの暗証番号を破る場合)

前提
暗証番号の条件は以下。
・数字で0~9の10種類
・4桁

流れ
0000で試みる→暗証番号間違いで宅配ボックスは開かない
0001で試みる→暗証番号間違いで宅配ボックスは開かない
0002で試みる→暗証番号間違いで宅配ボックスは開かない
0003で試みる→暗証番号間違いで宅配ボックスは開かない



のように一文字ずつ変えながらパスワード解除を試みる。
合計10,000回試みる
※10(種類)の4(桁)乗。「= 10 * 10 * 10 * 10」

どうすれば防ぐことができるか

1.パスワードで使用可能な文字の種類を増やす
2.パスワードの桁数を増やす

例えば以下にすると、総当たり回数の総数は96兆7千億回以上となり、やりきるには
50年以上の時間が掛かることとなり、ブルートフォース攻撃によりパスワード/暗証番号を
破ることは、現実的に不可となる。
・パスワードで使用可能な文字の種類を56種類
 ※「英字大文字(26種類)、小文字英字(26種類)、+ 数字(10種類)」
・パスワードの桁数を8桁以上

※ 総当たり回数の総数は56の階乗8(56 * 56 * 56 * 56 * 56 * 56 * 56 * 56)で
 96兆7173億1157万4016回。

3.ログインの試行回数に上限を設定する。
  ログインが3回以上失敗したらアカウントロックする等。

タイトルとURLをコピーしました