Shikata Ga Nai

Private? There is no such things.

パスワードのブルートフォース:ポリシーをすり抜ける攻撃手法とその実情

Hello there, ('ω')ノ

🔐 パスワードも総当たりで狙われる

ユーザー名が特定された後、攻撃者はパスワードの推測(ブルートフォース)に進みます。 ここで重要になるのが「そのパスワードがどれだけ強いか」です。


🔒 パスワードポリシーの一般的な要件

多くのWebサイトでは、以下のような強度を要求するポリシーが設けられています:

要件 内容例
✅ 最低文字数 例:8文字以上
✅ 英大文字・小文字の混在 例:Password
✅ 数字の含有 例:Password1
✅ 記号の使用 例:Password1!

→ このようなルールにより、理論上は推測されにくいはずです。


🤖 でも攻撃者は止まらない…

実際の攻撃では、こんな工夫がされています:

1. 🔁「覚えやすい」+「ポリシー対応」=予測可能

  • 多くの人は mypasswordMypassword1! にして通そうとします。
  • qwertyQwerty@123 など、パターン化された変形がよくある

2. 🧠 「人間の癖」を学習した辞書

  • **辞書型攻撃(dictionary attack)**を拡張した「賢いブルートフォース」が主流
  • 漏洩パスワードリスト(例:RockYou.txt)+変換パターンで精度が高い

3. 🔄 定期変更を悪用

  • 毎月変える人は Password1!Password2! のように単純な変更をする傾向あり

💡 攻撃者のワードリスト例

Password1!
P@ssword123
Welcome2023!
Admin@123
Myp@ssw0rd!
Summer2024!

→ 全て“ルールには従っているが予測可能な”パスワード


✅ 対策ポイント

対策 内容
✅ 強度だけでなく回避可能性も考慮する パスワードの“予測性”を検知するしくみ
✅ レートリミット・ロックアウトの導入 一定回数失敗したら一時的にロックする
✅ 二要素認証(MFA)の導入 例え突破されても追加認証でブロック
✅ 漏洩済みパスワードの使用禁止 登録時にハッシュを照合して拒否する

🧠 まとめ

  • 見かけ上は“強いパスワード”でも、人間の癖は攻撃者にとって好都合
  • ブルートフォースは単なる総当たりではなく、**“教育された攻撃”**になっている
  • パスワード強度+防御機構(リミッターやMFA)の両輪が重要

Best regards, (^^ゞ