セキュリティ

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

2019年9月29日

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

ブルートフォース(Brute force)とは「力づくで」という意味で、別名「総当たり攻撃」とも呼ばれているパスワードを破る手法の一つです。

「力づくで」そして「総当たり攻撃」の名前の通り、パスワードに使用されていると想定される文字列を1つずつ試していくことで、パスワードを破る手法です。

チェーンロック

例えば自転車のチェーンロックに「ブルートフォース攻撃」をする場合

  • 1回目:「0000」
  • 2回目:「0001」
  • 3回目:「0002」
  • 4回目:「0003」
  • 5回目:「0004」

※一般的な自転車のチェーンロックは4桁

とパスワードに設定される可能性のあるすべてのパターンを一つずつ試していきます。その結果、時間さえあれば、必ず正解のパスワードに必ず辿り着くことができます

スポンサーリンク

ブルートフォース攻撃でパスワードを解読するまでの時間はどのくらい?

ブルートフォース攻撃は、コンピュータを使用してパスワードを解読していきます。IPA 独立行政法人 情報処理推進機構が提供している2008年(2015年9月追記)のデータより、パスワードの桁数が短いと、ブルートフォース攻撃で簡単にパスワードが解読できることが判明しています。

※現在の処理能力のパソコンで計測すると異なる結果となる点、ご了承ください。(2015年9月追記)

使用する文字の種類4桁6桁8桁10桁
英字(大文字、小文字区別無)約3秒約37分約17日約32年
英字(大文字、小文字区別有)+数字約2分約5日約50年約20万年
英字(大文字、小文字区別有)+数字+記号約9分約54日約1千年約1千万年

※すべての組み合わせを試すために必要な時間を計算。記号は31文字使用できるものとした。使用パソコンOS:Windows Vista Business 32bit版、プロセッサ:Intel Core 2 Duo T7200 2.00GHz、メモリ:3GB

参考URL:https://www.ipa.go.jp/security/txt/2008/10outline.html

パスワードの桁数が6桁以内だと簡単に解読されちゃうんだね・・・
コンピュータはどんどん進歩しているので、最新のコンピュータで測定すればもっと早く解読できるはずです。

ブルートフォース攻撃の対策方法

パスワードの桁数や文字列の組み合わせを増やす

「ブルートフォース攻撃でパスワードを解読するまでの時間はどのくらい?」で紹介したように、パスワードの桁数や、パスワードで使用する文字の種類を増やすことで、ブルートフォース攻撃でパスワードを解読することを困難にすることができます。

ログイン試行回数に制限を掛ける

ログイン試行回数に制限を掛けることは、ブルートフォース攻撃に有効な手段です。

例えば「一定時間内に連続して5回パスワードを間違えた場合、30分間ログインできなくする」といった制限を掛ければ、ブルートフォース攻撃でパスワードを解読することは困難となります。

helpful