前回は、オンラインにおけるスタンダードなパスワードの突破手法とその逆パターンの手法について紹介しました。第3回となる今回は、昨今、不正ログインによく用いられていると考えられている、俗に言う「リスト型」の突破手法(以下、リスト型攻撃)について説明します。

著者プロフィール

辻 伸弘氏(Tsuji Nobuhiro) - ソフトバンク・テクノロジー株式会社


セキュリティエンジニアとして、主にペネトレーション検査などに従事している。民間企業、官公庁問わず多くの検査実績を持つ。

また、アノニマスの一面からみ見えるようなハクティビズムやセキュリティ事故などによる情勢の調査分析なども行っている。趣味として、自宅でのハニーポット運用、IDSによる監視などを行う。

Twitter: @ntsuji

リスト型攻撃とは

皆さんもご存知のとおり、4月頃から不正ログインに関する事件が相次いでいます。

発生した事件すべてがこの手法とは限りませんが、被害に遭った各社の発表からリスト型攻撃を用いられたと伺えるものが多くありました。

では、そのリスト型攻撃がどういった手法なのか、皆さんはご存知でしょうか。

リスト型攻撃とは、その名の通り、予め用意したユーザIDとパスワードが対になったリストファイルを用いる攻撃のことです。前回紹介したディクショナリ攻撃は、ユーザIDかパスワードのどちらか一方をある程度固定し、もう一方に辞書ファイルに登録された文字列を代わる代わる入れ込むという方式でしたが、リスト型攻撃ではユーザIDとパスワードがペアで辞書ファイルに記載されており、毎回そのペアを変化させていくというイメージです。

ディクショナリ攻撃のイメージ(左、中央)とパスワード攻撃のイメージ(右)

リスト型攻撃が危険なのは……

このリスト型攻撃は、果たしてどのようなケースで効果を発揮するのでしょうか。

特に有効なのは、Webメールやオンラインストレージ、SNSといった複数のサービスで同一のパスワードを「使い回し」しているユーザに対してです。

これがそれほどまでに危ないのか。以下のような状況を想像していただければご理解いただけるかと思います。

例えば、ユーザIDにメールアドレスを使用しているどこかのサービスが、脆弱性を悪用されるなど何かしらの方法で侵入の被害に遭ったとします。そして、そこからユーザIDとパスワードの一覧が盗まれ※1、それがリストファイル化され、一般的なサービスに次々とリスト型攻撃をしかけたらどうなるでしょうか。

※1 盗み出されたパスワードはすべてそのまま利用可能というわけではありません。平文で保存されていた場合はそのまま利用できますが、ハッシュ化されるなど何からの保護手段が講じられている場合は、オフラインによるパスワード突破を行い平文に復号するという手順が発生する場合もあります。

パスワードを使いまわしているユーザは、自身が使っているサービスのほとんどを乗っ取られてしまうことでしょう。

上の例において、脆弱性を利用されて侵入の被害に遭ったサービスがもし多くの利用者を抱えるポータルサイトなどであった場合、被害の大きさを考えただけでもぞっとします。

現実にリスト型攻撃を受けた組織のリリースの中には、それをうかがわせるものも存在します。「eBook Initiative Japan」などは、過去に類を見ないほど詳しく解説した発表を出していますので一読をお勧めします。レポートされている内容からリスト型攻撃の突破精度の高さを伺い知ることができることと思います。

また、トレンドマイクロの発表によると「IDおよびパスワードでのログインが求められるWebサイトを利用中のユーザ(18歳から59歳までの男女) 316名を対象に、Webアンケート調査を2012年11月26日から11月27日」に行った結果、「パスワードでログインが必要なWebの利用状況は1ユーザあたり13.95サイト(標準偏差)を利用」であり、「約7割が3種類以下のパスワードを複数のWebサイトで使いまわしている(2~3種類のパスワード55.4%、1種類のパスワード13.9%)」だったそうです。

今、この記事を読んでいただいている方の中にも上記に当てはまる方がいらっしゃるのではないでしょうか。

対策としては、もちろん複数のサイトでのパスワードの使い回しをやめることです。といっても、複数のサイト(アンケートによると1人平均約14サイト)のパスワードをすべてバラバラにして、なおかつ、安易な単語を用いず長い文字列を設定し、記憶することは容易ではないでしょう。

今回は、文字数の都合上、解説できないのでここまでにしておきますが、次回はその使い回しをやめるためにどのような方法があるのかについて解説いたします。可能な限り早く次回を公開したいと考えていますのでしばしお待ちを!!