パスワードリスト攻撃とは?総当たり系攻撃との見分け方
情報セキュリティマネジメント試験 平成31年度春期 午前 問16 / セキュリティ › 情報セキュリティ
過去問にチャレンジ
特定のサービスやシステムから流出した認証情報を攻撃者が用いて,認証情報を複数のサービスやシステムで使い回している利用者のアカウントへのログインを試みる攻撃はどれか。
- ア
パスワードリスト攻撃
- イ
ブルートフォース攻撃
- ウ
リバースブルートフォース攻撃
- エ
レインボー攻撃
会話形式の解説
講師今回はパスワードを狙う攻撃の名前を答える問題です。問題文のキーワードは二つあります。「よそで流出した認証情報を使う」ことと、「使い回している利用者を狙う」ことです。
受験者選択肢がどれもパスワード関係の攻撃なので、名前だけだと迷います。総当たりで試すならブルートフォース攻撃かなとも思いました。
講師そこが迷いやすいところです。ブルートフォース攻撃は総当たり攻撃ともいい、一つのIDに対して、考えられるパスワードの組合せを一つずつすべて試します。流出した情報は使いません。
受験者なるほど。手当たり次第に試すのであって、流出したパスワードを材料にするわけではないのですね。
講師そうです。一方、パスワードリスト攻撃は、あるサービスから流出したIDとパスワードの組をリストにして、別のサービスへのログインに使う攻撃です。同じIDとパスワードを使い回す利用者が多いので、一つのサービスで流出すると他のサービスのアカウントまで乗っ取られるおそれがあります。
受験者問題文の二つのキーワードにそのまま当てはまりますね。では、リバースブルートフォース攻撃は何が「逆」なのですか。
講師通常の総当たりはIDを固定してパスワードを変えますが、リバースブルートフォース攻撃はパスワードを一つに決めておき、多数の利用者IDに対して順に試します。一つのIDへの試行回数が少ないので、アカウントロック、つまり一定回数失敗するとログインできなくする仕組みでは防ぎにくいのが特徴です。こちらも流出した認証情報は使いません。
受験者レインボー攻撃は名前から想像がつきません。これもログインを何度も試すのでしょうか。
講師いいえ、ログインを繰り返す攻撃ではありません。パスワードは通常、ハッシュ化、つまり元に戻しにくい値に変換して保存されています。レインボー攻撃は、パスワードとハッシュ値の対応表を使って、そのハッシュ値から元のパスワードを割り出す攻撃です。
受験者整理すると、IDを固定してパスワードを総当たりするのがブルートフォース、パスワードを固定してIDを変えるのがリバースブルートフォース、対応表でハッシュ値を元に戻すのがレインボー、流出したIDとパスワードの組をそのまま別サービスで試すのがパスワードリスト攻撃ですね。だから正解はパスワードリスト攻撃です。
講師その整理で正確です。攻撃者が何を固定して何を変えながら試すのかに注目すると、見分けやすくなります。
受験者対策も攻撃ごとに違いそうですね。
講師はい。パスワードリスト攻撃には、サービスごとに別のパスワードを使うことが有効で、パスワードマネージャを使うと管理しやすくなります。多要素認証の導入も効果的です。レインボー攻撃には、ソルトと呼ばれる値を付けてからハッシュ化する方法が対策になります。攻撃名と対策の組合せも問われやすいので、あわせて覚えておきましょう。
まとめ
流出したIDとパスワードの組を別のサービスで試し、パスワードの使い回しにつけ込む攻撃はパスワードリスト攻撃です。ブルートフォース攻撃は一つのIDに対してパスワードを総当たりで試し、リバースブルートフォース攻撃はパスワードを固定して多数のIDに試すため、アカウントロックでは防ぎにくくなります。レインボー攻撃はログインを繰り返すものではなく、対応表を使ってハッシュ値から元のパスワードを割り出す攻撃です。何を固定して何を変えて試すかに注目すると区別しやすく、対策としてはサービスごとに別のパスワードを使うこと、多要素認証、ソルト付きハッシュ化が挙げられます。
解答・解説
正解はアです
この問題のテーマ
流出した認証情報を別のサービスで試す攻撃の名前を問う問題です。パスワードを狙う代表的な攻撃手法を、何を材料にして何を試すかで区別できるかが問われています。
解き方の考え方
まず問題文から、「他所で流出した認証情報を使う」ことと「使い回している利用者を狙う」ことの二つを読み取ります。次に各選択肢を、攻撃の材料が何か(総当たりの組合せか、固定したパスワードか、ハッシュ値の対応表か、流出したIDとパスワードの組か)で分けます。流出したIDとパスワードの組をそのまま別のサービスで試すのはパスワードリスト攻撃だけなので、アが正解になります。
選択肢ごとの解説
- ○ア パスワードリスト攻撃パスワードリスト攻撃は、あるサービスから流出したIDとパスワードの組をリストにして、別のサービスへのログインに使う攻撃です。多くの利用者が同じIDとパスワードを使い回しているため、一つのサービスで流出すると他のサービスのアカウントも乗っ取られるおそれがあります。問題文の内容と一致します。
- ×イ ブルートフォース攻撃ブルートフォース攻撃(総当たり攻撃)は、考えられるパスワードの組合せを一つずつすべて試す攻撃です。流出した認証情報を使うわけではないので、問題文の攻撃とは違います。
- ×ウ リバースブルートフォース攻撃リバースブルートフォース攻撃は、パスワードを一つに決めておき、多数の利用者IDに対して順に試す攻撃です。一つのIDに対する試行回数が少ないので、アカウントロックでは防ぎにくいという特徴があります。流出した認証情報を使うわけではありません。
- ×エ レインボー攻撃レインボー攻撃は、パスワードとハッシュ値の対応表を使って、ハッシュ値から元のパスワードを割り出す攻撃です。パスワードは通常ハッシュ化して保存されているので、この攻撃はそのハッシュ値を狙います。ログインを繰り返し試す攻撃ではありません。
補足
パスワードリスト攻撃を防ぐには、サービスごとに別のパスワードを使うこと(パスワードマネージャを使うと管理しやすくなります)と、多要素認証の導入が有効です。レインボー攻撃には、ソルトを付けてからハッシュ化する方法が対策になります。選択肢を見分けるときは、攻撃者が何を固定して何を変えながら試すのかに注目すると整理しやすくなります。
POINT
- パスワードリスト攻撃は、流出したIDとパスワードの組を別のサービスで試し、使い回しにつけ込む攻撃です。
- ブルートフォース攻撃は、一つのIDに対してパスワードの組合せを総当たりで試します。
- リバースブルートフォース攻撃はパスワードを固定してIDの側を変えるので、アカウントロックでは防ぎにくくなります。
- レインボー攻撃は、対応表を使ってハッシュ値から元のパスワードを推測する攻撃です。
