← PC・IT用語集へ戻る

パスワードスプレー攻撃

Password Spraying
security beginner
よくある少数のパスワードを、多数のアカウントへ少しずつ試し、ロックを避ける攻撃。
パスワードスプレー攻撃 (Password Spraying)

概要(サマリー)

パスワードスプレー攻撃とは、よくある少数のパスワードを、多数のアカウントへ少しずつ試し、ロックを避ける攻撃である。
一つのドアを力任せに蹴るのではなく、同じ合い鍵を、廊下のドアへ一本ずつ静かに差すようなものだ。
パスワード認証で、多くの人が似たパスワードを選ぶことを前提にしている。
一つのアカウントへの失敗回数制限だけでは、止まりにくい。

詳細解説

一つの口座を叩き続けない

ブルートフォース攻撃は、一つのアカウントに対して、多くのパスワード候補を順に試す。
失敗が短時間に集中するため、アカウントのロックや追加の確認で気づかれやすい。

パスワードスプレーは、試すパスワードを少数に絞る。
その代わり、組織のたくさんのメールアドレスや利用者 ID へ、同じ候補を広げて試す。
一人あたりの失敗回数は少なく見える。組織全体では、どこか一人が推測しやすいパスワードだと当たる。

OWASP は、ブルートフォース、クレデンシャルスタッフィング、パスワードスプレーを並べて区別している。
スタッフィングは、他のサービスから漏れた「その人の組」を試す。
スプレーは、漏れた組がなくても、よくあるパスワードだけで広く試せる。

逆総当たりに近い、と呼ばれる理由

ブルートフォースの説明にある逆総当たりは、よく使われる一つのパスワードを、多数の ID へ試す手口である。
パスワードスプレーは、この考え方に近い。
対策資料では、候補を一つに限らず少数にし、時間を空けて試す形をパスワードスプレーと呼ぶことが多い。

名前が違っても、見るべき点は同じである。
「このアカウントはロックされていない」ことと、「組織のどこかで弱いパスワードが当たっていない」ことは別である。

初期パスワードの放置が材料になる

管理者が全員に同じ初期パスワードを配り、初回ログイン後の変更を強制しないサービスは、スプレーの的になる。
季節と数字の組み合わせ、会社名を含む短いパスワードも、人が選びやすい候補として試されやすい。

攻撃の材料は、有名人のパスワード一覧である必要はない。
組織のメールアドレスの形が 名前@会社のドメイン だと、ID の側も推測しやすい。
ID を隠すことだけが対策ではないが、誰でも作れる ID と、共通の初期パスワードの組み合わせは危険が大きい。

利用者側と、サービスを作る側

利用者は、他の人と被りやすいパスワードを避ける。
二要素認証やパスキーがあれば、パスワードが当たってもログインを完了させにくい。
OWASP は、パスワード攻撃全般への主要な対策として多要素認証を挙げている。

作る側は、アカウントごとの失敗回数だけでなく、同じパスワードが多数のアカウントへ試されていないかも見る。
初期パスワードは初回に変更させ、推測しやすいパスワードの登録を断る。
ログインの追加確認は、人に見せる回数を増やしすぎると、承認通知の連打で許可を押させるMFA疲労攻撃のような別の弱点を生む。通知の設計とセットで考える。

当たったあとの被害

一人のアカウントに入れれば、メール、ファイル、社内の別システムへ進むことがある。
その人の権限が小さくても、連絡先や文面が、次の詐欺の材料になる。
「自分のパスワードは複雑だから、組織の問題ではない」は成り立たない。隣のアカウントが入口になる。

身に覚えのないログイン通知や、自分で押していない承認が来たら、パスワードを変え、管理者へ共有する。

公開した直後の管理アカウント

個人開発で管理画面をインターネットに出すと、利用者数は少なくてもログイン口は世界から見える。
初期の管理パスワードが短かったり、ドキュメントの例のままだったりすると、スプレーの候補に含まれる。
公開前に、管理者のパスワードを例文から変え、管理画面の多要素認証をオンにする。

テスト用のアカウントを、本番と同じパスワードで残さない。
使っていない管理者アカウントは無効にする。
「まだ誰にも告知していないから試されない」は、ログイン URL が見つかれば成り立たない。

AIコーディングとの関係

AI に会員登録を作らせると、パスワードの文字数だけを条件にした実装になりやすい。
AI には「推測しやすいパスワードを拒否し、初期パスワードの使い回しを許さず、多要素認証の余地を残す登録画面にしてください」と頼む。

よくあるパスワードの実例リストを AI に作らせて、そのまま公開したりテスト以外で使ったりしない。
拒否の条件は、漏えい済みパスワードとの照合や、長さと使い回しの禁止として設計する。
本番の利用者一覧や、現在のパスワードを AI の会話に貼らない。

よくある勘違い

アカウントロックがあれば防げる?

ロックは、一つのアカウントへの連続失敗に効きやすい。
スプレーは一人あたりの失敗を少なく分散させるため、ロックの回数に届かないことがある。
組織全体での試行の見方と、多要素認証が必要になる。

自分のパスワードが長ければ、会社は安全?

狙いは、組織の中で一番推測しやすいアカウントである。
自分のパスワードとは別に、共通の初期パスワードや、同僚の弱いパスワードが入口になる。

クレデンシャルスタッフィングと同じ?

スタッフィングは、どこかで漏れた本人の組を別のサービスへ試す。
スプレーは、漏れた組がなくても、よくあるパスワードを多数の人へ試す。
どちらもログイン試行だが、材料が違う。

まとめ

  • パスワードスプレーは、少数のよくあるパスワードを多数のアカウントへ少しずつ試す攻撃である。
  • 一つのアカウントへのロックを避ける狙いがある。
  • 漏れた組を使うクレデンシャルスタッフィングとは、材料が違う。
  • 初期パスワードの変更、推測しやすいパスワードの拒否、多要素認証を組み合わせる。

情報ソース

より詳しくAIに聞いてみよう

  • パスワードスプレーを、同じ合い鍵を廊下のドアへ順に差す例で説明してください。
  • ブルートフォース、逆総当たり、パスワードスプレーの関係を初心者向けに整理してください。
  • 初期パスワードを全員で共有すると、なぜ危険なのか説明してください。
  • AI に会員登録を作らせるとき、推測しやすいパスワードを断る指示文を書いてください。
  • 利用者のパスワードを AI に渡さずに、登録ルールだけを相談する方法を教えてください。