総当たり攻撃と辞書攻撃 攻撃方法を知ってパスワードを強固に!

password-cracking-logo

「パスワードが短すぎます」
「推測されにくい文字列にしてください」

アカウント登録の際に、上記のような警告を見たことはありませんか?あなたはきっとパスワードの再入力を求められたはずです。パスワードは強固である必要があります。簡単なパスワードは、簡単に解読されてしまうのです。改めてご自身のパスワードを確認してください。それは強力ですか。推測されにくいものですか。

忘れないでください。パスワードは、あなたの情報や信用を詰め込んだ宝箱の鍵なのです。攻撃者は脆弱な鍵を容易に解読し、あなたの情報を盗み出すだけでなく、あなたに成りすまして、オンライン上で様々な悪事を働くかもしれません。例え、それが攻撃者によるものと証明できても、アカウントを盗まれたというあなたの失態は、あなた自身の信用を大きく傷つけます。

この記事では、攻撃者がパスワード解析に用いる代表的な攻撃方法を2つ紹介します。これを学べば、なぜ『短いパスワード』や『推測されやすいパスワード』がダメなのか、その理由が明らかになります。

スマートフォンが普及し、誰もが複数のアカウントを所持するようになった昨今、LineやTwitterやFacebookという宝箱の中には、氏名や電話番号など、より具体的な個人情報が多数含まれるようになりました。私たちはそれらを、少なくとも簡単な理由でパスされないために、これまで以上のセキュリティ意識を持つ必要に迫られているのです。

代表的な攻撃手法
総当り攻撃(ブルートフォースアタック)
ありそうなパスワードを機械的に全て試す方法です。

ダイヤルチェーンの4桁の数字の組み合わせ(0000~9999)を全て試せば、必ず答えが見つかるのと同じように、機械の高速度を用いてパスワードをシラミ潰しに調べます。普段意識こそしませんが、私たちがパスワードに利用できる文字の種類は限られています。最大で96種類(大小英字+数字+記号)です。1つのダイヤルに96個の文字があるチェーンを想像してください。2文字からなるパスワードであっても、その組み合わせは96×96で9216個。人間ならば正解を求めるのに時間が必要ですが、機械を用いれば、その正解を瞬時に発見できます。

 対策方法 

パスワード試行回数に上限を設ける
誤入力が続いた場合にログイン禁止にすれば、総当たり攻撃をほぼ無力化することが可能です。総当たり攻撃は、膨大な数の検証を繰り返してパスワードを特定する方法なので、そもそも検証のチャンスを与えなければ良いのです。

強固なパスワードを使用する
機械といえども計算速度には限界があります。96文字のダイヤルチェーンでは、文字を1つ増やすたびに組み合わせ数を爆発的に増やすことができます。10桁の場合、その組み合わせは約6648京通りです。機械はそれでも解読できないわけではありませんが、あまりに膨大な時間を有す場合、事実的にそれは解読不能とされます。『長いパスワード』の安全性は、機械の限界に裏付けされています。『短いパスワード』の危険性は、その不十分な組み合わせ通りから生じるのです。

近年はD-waveなど量子コンピュータの登場により、パスワードの安全性が改めて議論されています。量子コンピュータは、理論上スーパーコンピュータの3,600倍もの処理速度があるとされていて、莫大な検証時間に裏付けされた今日のパスワードの安全性が大きく揺らぐと危惧されているのです。

辞書攻撃(ディクショナリアタック)
利用者は、氏名や生年月日、地名などをパスワードの一部にする傾向があります。辞書攻撃は、これを利用して「利用者がパスワードとして使いそうな単語」に狙いを定めます。「password」「123456」に始まり、例えば標的の誕生日が1990年10月26日なら「1990」「1026」などの文字列が含まれていると推測します。
利用者が上記のような非常に脆弱なパスワードを設定している場合は、成功確率が極めて高くなります。

 対策方法 

意味のある単語や自身にまつわる情報をパスワードにしない
辞書攻撃における攻撃者は、標的の様々な情報をパスワードの手がかりにします。アカウント作成時に「推測されにくいパスワードにしてください」と警告されるのはこのためです。意味不明な文字列を用いるのが理想です。

パスワード試行回数に上限を設ける
総当り攻撃と同様、辞書攻撃も標的がよほど単純なパスワードでない限り、複数回の検証が必要です。予めパスワード試行回数に上限を設定し、検証のチャンスを与えないことで、これを無力化できます。

暗号学を学ぶ
パスワードは私たちに最も身近なセキュリティのひとつです。あなたがアカウントを所持している以上、攻撃者の標的にされる可能性があります。パスワードは、ログインをするためだけのものではありません。あなたの情報を第三者から守るために設定するのです。鍵は強固なものに限ります。簡単に破られてしまう鍵は、鍵ではないのです。

もしあなたがセキュリティについて興味を抱いているのなら、下記の書籍を勧めます。暗号学は人類史に他なりません。情報を機密にするための取り組みは、はるか昔から行われてきました。『暗号解読』(サイモンシン著)は、シーザー暗号に始まり、今日の量子暗号まで様々な暗号を網羅しています。この書籍は初学者にも優しく、技術的な面でのパスワードの原理についても説明されています。攻撃者と対策者との戦いは、セキュリティ脅威をより深刻に考えるのに役立ちます。