「短いパスワードだと総当たりで破られます」
最初に聞いたとき、私は少し大げさではと思いました。ところが内容を知ると、派手な裏技ではなく、むしろ地味に怖いタイプの攻撃です。
結論から言うと、ブルートフォース攻撃は、考えられるパスワードの組み合わせを機械的に次々試して正解を探す攻撃です。特別なひらめきではなく、数を打つやり方なので、短いパスワードほど不利になります。
ブルートフォース攻撃とは? 一言でいうと「鍵番号を順番に全部試すこと」
一言でいうと、ブルートフォース攻撃は鍵番号を順番に全部試すことです。
英語の brute force は「力ずく」に近い意味で、正解が出るまで手当たり次第に試します。人が手でやると大変ですが、プログラムなら非常に速く繰り返せます。
ダイヤル式の鍵を思い浮かべるとわかりやすいです。0000 から 9999 まで順番に試せば、いつかは当たりますよね。ブルートフォース攻撃も同じで、組み合わせが少ないほど突破されやすくなります。
ブルートフォース攻撃が問題になる場面
ブルートフォース攻撃が問題になるのは次のような場面です。
- ログイン画面が公開されているサービス
- 短いパスワードが許されているシステム
- ログイン試行回数の制限が弱い仕組み
つまり、何度も試せて、しかも候補が少ない状態が危険です。
ビジネスの現場でブルートフォース攻撃という言葉が出る場面
1. 「管理画面へのブルートフォース攻撃が増えています」
意味: ログイン画面に対して、不自然な回数の試行が続いている、という報告です。
相手が伝えたいこと: パスワード強度やアクセス制御を見直す必要がある、ということです。
2. 「連続失敗時はロックするように設定しましょう」
意味: 何回でも試せる状態をなくし、総当たりを成立しにくくする、という対策です。
相手が伝えたいこと: 攻撃側の試行回数をシステム側で制限したい、ということです。
3. 「長いパスフレーズに変更してください」
意味: 短い単語や数字列ではなく、より長く推測しにくい認証情報へ変えてほしい、という依頼です。
相手が伝えたいこと: 候補数を増やして、総当たりにかかる現実的な負担を上げたい、ということです。
ブルートフォース攻撃と辞書攻撃の違い
| 比較ポイント | ブルートフォース攻撃 | 辞書攻撃 |
|---|---|---|
| 試し方 | あり得る組み合わせを順番に広く試す | よく使われる単語や定番の候補を重点的に試す |
| たとえ話 | 鍵番号を全部回す | ありがちな暗証番号だけ先に当てにいく |
| 強い相手 | 短く単純なパスワード | 人が思いつきやすい単語ベースのパスワード |
| 主な対策 | 長くする、回数制限、2段階認証 | ありがちな単語を避ける、長くする、2段階認証 |
辞書攻撃は「ありがちな候補を先に狙う」やり方で、ブルートフォース攻撃は「全部試す」やり方です。
よくある質問
長いパスワードなら記号が少なくても有利ですか?
一般に、短い複雑パスワードより、ある程度長さのあるパスフレーズのほうが有利になることがあります。大事なのは、短すぎず推測されにくいことです。
アカウントロックだけで十分ですか?
大事な対策ですが、それだけで十分とは限りません。多要素認証や不審なアクセスの検知も組み合わせるとより効果的です。
自分は狙われないので気にしなくてよいですか?
個人を特定して狙うだけでなく、公開されたログイン画面に機械的に試す攻撃もあります。目立つ人だけの問題ではありません。
関連記事
まとめ
- ブルートフォース攻撃は、パスワード候補を総当たりで試す攻撃です。
- 短く単純なパスワードや、試行回数を制限しない仕組みは特に不利です。
- 長い認証情報、多要素認証、失敗回数制限の組み合わせが基本対策になります。
明日からできる第一歩は、重要なアカウントのパスワードが「短い数字列」や「ありがちな単語」になっていないか見直すことです。そこを直すだけで、総当たりへの耐性はかなり変わります。