ブルートフォース攻撃とは、文字列の組み合わせを総当たりで試すことによって、暗号やパスワードを解読する攻撃手法である。
ブルートフォース攻撃の概要
ブルートフォース攻撃の手法を大まかに述べると、以下のようになる。
- 攻撃者は、パスワードの長さや使用できる文字種を推測する。
- パスワードの長さや使用できる文字種に基づいて、すべての可能性のある文字列を生成する。
- 生成した文字列を、パスワードの入力欄に入力して、ログインやアクセスを試みる。
- ログインやアクセスに成功した場合、攻撃は成功となる。
ブルートフォース攻撃は、単純な手法であるため、比較的簡単に実装できる。また、攻撃対象となるシステムのセキュリティが脆弱な場合、短時間でパスワードを解読できる可能性がある。
ブルートフォース攻撃の種類
ブルートフォース攻撃の手法には、以下の種類がある。
単純なブルートフォース攻撃
単純なブルートフォース攻撃は、文字列の組み合わせを「辞書」に掲載されている単語や、数字、記号などの組み合わせで試す攻撃手法である。
例えば、パスワードが「password」の場合、ブルートフォース攻撃では、以下の組み合わせを試すことになる。
password
password1
password2
...
単純ブルートフォース攻撃は、最も原始的な攻撃であるが、時間とコストをかければ、どのようなパスワードでも解読できる可能性がある。
辞書攻撃
辞書攻撃は、単純なブルートフォース攻撃に加えて、辞書に掲載されていない単語や、数字、記号などの組み合わせも試す攻撃手法である。
例えば、パスワードが「password」の場合、ブルートフォース攻撃では、以下の組み合わせも試すことになる。
pa$$word
pa$$w0rd
p4ssw0rd
...
辞書攻撃は、単純ブルートフォース攻撃よりも効率的にパスワードを解読することができる。しかし、パスワードが辞書に収録されていない場合は、解読に時間がかかる可能性がある
マスク攻撃
マスク攻撃は、パスワードの一部を推測して、その部分を固定して試行する攻撃である。
マスク攻撃は、パスワードの一部が特定できる場合、効率的にパスワードを解読することができる。
辞書とマスク攻撃の組み合わせ
辞書攻撃とマスク攻撃を組み合わせた攻撃である。辞書に収録されているような単語やフレーズを、マスク攻撃で推測した部分に当てはめて試行する。
この攻撃は、単純ブルートフォース攻撃、辞書攻撃、マスク攻撃のそれぞれの長所を組み合わせた攻撃であり、最も効率的にパスワードを解読することができる可能性がある。
リバース ブルートフォース攻撃
リバースブルートフォース攻撃とは、特定のパスワード(よく使われるパスワード)に対して、大量のユーザー名を試行する攻撃手法である。ブルートフォース攻撃の一種であり、ユーザー名の組み合わせが膨大なため、処理に時間はかかるものの、成功する可能性は高い。
分散ブルートフォース攻撃
分散ブルートフォース攻撃は、複数のコンピュータを同時に利用してブルートフォース攻撃を行う攻撃である。
分散ブルートフォース攻撃は、単一のコンピュータで行うブルートフォース攻撃よりも、解読速度を大幅に向上させることができる。
ブルートフォース攻撃の被害
ブルートフォース攻撃は、企業や個人を問わず、さまざまな被害をもたらす可能性がある。
個人への被害
アカウントの乗っ取りによる個人情報の漏洩
ブルートフォース攻撃によって、SNSやECサイトなどのアカウントが乗っ取られると、攻撃者はアカウントに登録された個人情報を盗み取ることができる。これにより、なりすましによる悪用や、個人情報の売買などの被害につながる可能性がある。
クレジットカードなどの不正利用
ブルートフォース攻撃によって、クレジットカードや銀行口座などのアカウントが乗っ取られると、攻撃者はこれらのアカウントを利用して、不正に商品やサービスを購入したり、現金を引き出したりすることができる。
名誉棄損や誹謗中傷
ブルートフォース攻撃によって、SNSやメールなどのアカウントが乗っ取られると、攻撃者はアカウントを利用して、本人になりすまして、名誉棄損や誹謗中傷などの行為を行うことができる。
企業への被害
顧客情報の漏洩
ブルートフォース攻撃によって、ECサイトや顧客管理システムなどのアカウントが乗っ取られると、攻撃者はこれらのアカウントを利用して、顧客情報を盗み取ることができる。これにより、顧客の信用を失ったり、訴訟などのトラブルに発展したりする可能性がある。
システムの改ざん
ブルートフォース攻撃によって、システム管理者アカウントを乗っ取られると、攻撃者はシステムを改ざんして、サービス提供の停止や、機密情報の漏洩などの被害を加えることができる。
ブランドイメージの低下
ブルートフォース攻撃によって、企業のシステムやサービスが被害を受けると、企業のブランドイメージが低下する可能性がある。これにより、顧客離れや、株価の下落などの影響が出る可能性がある。
ブルートフォース攻撃の事例
ブルートフォース攻撃は、さまざまなサービスで被害が発生している。以下に、代表的な事例をいくつか挙げる。
2014年:JALマイレージに不正アクセス
2014年、JALマイレージプログラムにブルートフォース攻撃が行われ、約100万人分の個人情報が流出した。攻撃者は、JALマイレージプログラムのパスワードの組み合わせをすべて試行し、約10日間でユーザー名を特定した。
2019年:宅ふぁいる便の個人情報481万件が流出
2019年、宅ふぁいる便の顧客情報約481万件が流出した。攻撃者は、宅ふぁいる便のパスワードを推測するために、ブルートフォース攻撃を行ったとされる。
2020年:SBI証券に不正ログイン9,864万円被害
2020年、SBI証券の顧客6人の証券口座から9,864万円が不正に流出した。攻撃者は、SBI証券のパスワードを推測するために、ブルートフォース攻撃を行ったとされる。
2020年:ドコモ口座で相次ぐ不正出金
2020年、ドコモ口座から相次いで不正出金が発生した。攻撃者は、ドコモ口座のパスワードを推測するために、ブルートフォース攻撃を行ったとされる。
これらの事例からわかるように、ブルートフォース攻撃は、さまざまなサービスで被害が発生している。
ブルートフォース攻撃の対策
パスワードの強度を高める
パスワードの長さや使用できる文字種を増やすことで、ブルートフォース攻撃の解読時間を遅らせることができる。
具体的には、以下の点に注意するとよい。
* パスワードの長さは、12文字以上を推奨する。
* パスワードには、大文字・小文字・数字・記号を組み合わせる。
* 単語やフレーズをそのまま使わない。
* 個人情報や、推測されやすい文字列を使わない。
二要素認証を利用する
二要素認証とは、パスワードに加えて、ワンタイムパスワードや指紋認証などの認証方法を組み合わせる認証方法である。二要素認証を利用することで、パスワードが漏洩した場合でも、アカウントの乗っ取りを防ぐことができる。
アカウントのロック機能を利用する
一定回数連続してログインに失敗した場合、アカウントをロックする機能を利用することで、ブルートフォース攻撃の成功率を下げることができる。
また、Webサイトやオンラインサービスでは、ブルートフォース攻撃を検知するための対策を講じることが重要である。たとえば、一定回数連続してログインに失敗した場合、アカウントをロックするなどの対策を講じることで、ブルートフォース攻撃の成功率を低下させることができる。
まとめ
ブルートフォース攻撃は、単純な攻撃手法ではあるが、パスワードが短く複雑でない場合、効果的に機能する。そのため、パスワードの設定には十分注意し、ブルートフォース攻撃による被害を防ぐ必要がある。