ブログ

攻撃ツールの増加: アカウントチェッカー

F5 サムネイル
F5
2015 年 1 月 21 日公開

本日は、当社の顧客の間で普及が進んでいる攻撃ツール「アカウント チェッカー」を紹介し、説明します。

この認証情報スタッフィングツールは新しいものではありませんが、以下で説明する理由により、使用が急増しています。 概念的には非常にシンプルで使いやすいですが、アカウント チェッカーは非常に強力です。

アカウントハッカー

アカウントチェッカーの説明

アカウント チェッカーは、漏洩したユーザー名とパスワードのペア (つまり「資格情報」) のリストを取得し、それを対象の Web サイトに対してテストする攻撃ツールです。

強力なアカウント チェッカー パッケージの価格はわずか 100 ドルで、攻撃者は Mechanize、PhantomJS、IEC.py、Sikuli、Selenium、iMacros などの既成の Web 自動化ツールキットから独自のアカウント チェッカーを作成することもできます。 これらのツールキットは、アカウント チェッカーの作成やクレデンシャル スタッフィング攻撃の実行にかかる技術的な負担を軽減します。

アカウントチェッカーの使用法の分析

  1. 攻撃者は、ウェブサイトの侵害またはパスワードダンプサイトから流出したパスワードを取得します。
  2. 攻撃者はアカウントチェッカーを使用して、多くのウェブサイトで盗まれた認証情報をテストします
  3. ログインに成功すると(通常全体の0.1~2%)、アカウントの乗っ取りが発生します。
  4. 攻撃者は盗んだアカウントから保存された金額、クレジットカード番号、その他の個人情報を流出させる
  5. 攻撃者はこのアカウントを他の不正な目的(スパム、さらなる取引など)に使用する可能性もあります。

良性アカウントチェッカーの例

以下は、アカウント チェッカーの仕組みを示す、 namechk.comと呼ばれる「無害な」アカウント チェッカーです。 このツールは、指定されたユーザー名がさまざまなソーシャル ネットワークで使用可能かどうかを確認します。 ユーザー名「shapesecurity」をチェックしたところ、このツールはそのユーザー名が使用されているすべてのサイトを正しく識別しました。

このサービスは、画像に表示されているすべての Web サイト (Blogger、Facebook、Youtube、Twitter など) に対して指定されたユーザー名を自動的にテストするスクリプトを使用します。

犯罪者のアカウント チェッカーは上記のツールと同じように機能しますが、さまざまなパスワード (推測アルゴリズムに基づくパスワード、または上位 25 のパスワードのいずれか) がそのサイトで機能するかどうかを確認するなどの追加機能も備えています。 ユーザー名とパスワードをチェックするプロセス全体が悪意のある意図と相まって、クレデンシャル スタッフィング攻撃が広まります。

Microsoft の調査によると、平均的なユーザーは 6 個強のパスワードを所有しており、各パスワードは 4 つの異なるサイトで共有されており、各ユーザーはパスワードを必要とするアカウントを約 25 個所有していることがわかりました。 つまり、どこで侵害されても、上位 3.9 サイトのパスワードが公開されることになります。

攻撃に備えたアカウントチェッカーの例

Brian Krebs 氏は、以下の市販のアカウント チェッカーについて書いています。 これはヒルトンをハッキングするために使用されたのと同じタイプのツールです。

このチェッカーは、資格情報が有効かどうかを確認し、ポイント残高、クレジットカード番号の最後の 4 桁、カードの請求先住所を取得することができます。

以下は、アカウント チェッカーの基礎となるコードのサンプルです。 このアカウント チェッカーは、多数の資格情報をテストします。 有効な認証情報のペアが見つかると、PII をスクレイピングし、アカウントから保存された値とクレジットカードの詳細を盗みます。

攻撃者はどこで資格情報のリストを入手するのでしょうか?

あらゆるアカウント チェッカーの燃料となるのは、資格情報のリストです。 攻撃者にとって幸運なことに、公開されている資格情報は膨大にあります。

  • 3,800万のAdobeアカウント
  • Facebookアカウント318,000件
  • 70,000 個の Google アカウント
  • 60,000 Yahoo アカウント
  • Twitterアカウント数22,000
  • 8,000 ADP アカウント
  • LinkedIn アカウント 8,000 件

この Twitter ハンドルtwitter.com/dumpmonでは、毎日何百もの認証情報が漏洩しています。 多くのセキュリティ専門家は、このリストを使用して、それぞれのサイト上のどのユーザー アカウントが侵害されたかを特定し、侵害されたアカウントをロックアウトします。 明らかに、攻撃者もこのリストをアカウント チェッカーと組み合わせて使用し、脆弱なアカウントを見つけて、さまざまな不正行為に使用します。

アカウントチェッカーを抑制し、攻撃者がユーザーアカウントを乗っ取るのを防ぐために、セキュリティ専門家は何ができるでしょうか?

答えを得るには、アカウント チェッカーが機能するメカニズムを理解する必要があります。

アカウント チェッカーは、ログイン ページの静的フォーム要素を暗黙的な API として使用して動作します。上記のコード サンプルでは、攻撃者はさまざまなフォーム要素名を参照して、対象の Web ページとやり取りしています。 ほとんどのウェブサイトは、このようなやり取りを通常の人間同士のやり取りと区別することができない。

そして、攻撃トラフィックを喜んで受け入れます。 これにより、攻撃者はアカウント チェッカーを使用して Web サイトを自動化し、数日または数週間にわたって数百万のテストを簡単に実行できます (多くの場合、レートとボリュームの制限を回避するために、大規模な分散ボットネットと膨大な数の IP アドレスが使用されます)。 したがって、非常に経験の浅い攻撃者であっても、世界最大の Web サイトの多くに対して強力な攻撃を簡単に仕掛けることができます。

私たちが「望ましくない自動化」と呼ぶこのようなアクティビティからウェブサイトを守るために、私たちは攻撃者によく知られているアプローチ、つまりページビューごとにサイトの基盤となるコードを変更するアプローチを採用しています。 マルウェア作成者が長い間、ポリモーフィック コードを使用してさまざまなシグネチャを常に提示することでウイルス対策製品を回避してきたのと同様に、Shape のソリューションは、Web サイトの自動化を試みるスクリプトを妨害する動くターゲットを作成します。 これにより、システム管理者は、攻撃者が特定の Web サイトのスクリプトを作成または自動化するのに必要な労力を増やすことができます。

もちろん、賢明な読者は、さまざまな方法で攻撃を実行するためのさまざまな方法を指摘するでしょう。 このような攻撃 (DOM、GUI、その他) について検討することはこの記事の範囲を超えています (ただし、今後の記事のテーマになるかもしれません)。 もちろん、Shape はそのような攻撃をすべて包括的に打ち負かすことに重点的に取り組んでおり、それぞれのレベルでソリューションを提供しています。