不正ログイン対策の整理

凌(しのぎ)です。相次ぐ不正ログインの対策およびその整理方法について書きます。

巷では様々な対策案、ソリューションが紹介されていますが、自社に取ってどれがベストなのか、どのように整理すればよいのか、決めかねている方が多いと伺いましたので、少しでもお役立ちできればと思い、私なりにまとめました。

■定義

まずここでの「不正ログイン」の定義ですが、攻撃者が正規ユーザになりすまし、正規のログインページを利用して、ログイン施行を行う攻撃とします。SQLインジェクションやXSS攻撃と異なり、単体のパケットやフローを見ても、正規の通信と同一であるため、対策が難しいと言われております。

■攻撃手法

 攻撃手法は主に以下の3つにカテゴライズできます。

 ●ブルートフォース攻撃
  ・1ユーザ名に対して複数の「使われがちな」パスワードを試す攻撃手法
  ・ユーザ名:パスワード=1:n

 ●リバースブルートフォース攻撃
  ・1つのパスワードを複数のユーザ名に対して試す攻撃手法
  ・ユーザ名:パスワード=n:1

 ●リスト型攻撃(別名、パスワードリスト型攻撃、リスト型アカウントハッキング)
  ・他のサイトで入手したユーザ名、パスワードを利用してログイン施行する攻撃手法
  ・被害者はアカウントを使い回していたユーザとなる
  ・ユーザ名:パスワード=1:1

 ここでポイントになるのはユーザ名とパスワードの関係となりますが、他に押さえるべき攻撃のパラメータとして、「攻撃間隔」と「IPアドレス」がございます。

 ●攻撃間隔
  ・短時間
    -短時間で大量のログイン施行を行う攻撃(例、1時間に1000回)
  ・スロー
    -ゆっくりとログイン施行を行う攻撃(例、1時間に1回)

 ●IPアドレス
  ・単一
    -1つまたは少数のIPアドレスから来る攻撃
  ・分散
    -BotnetやTorを利用して、複数のIPアドレスから来る攻撃

そして、最後に攻撃者にとって最も重要なパラメータである「目的」も意識すると対策の幅が広がります。

 ●目的
  ・アカウントのみ
    -ログイン成功したアカウント情報をブラックマーケットで売る
    -不正ログインしたアカウントを用いて、次の犯行の踏み台として利用する
    -例)標的型メール攻撃の送信元、ドライブバイダウンロード用URLの拡散
  ・個人情報収集
    -プロフィールに記載されている個人情報(住所、電話番号など)を収集する
  ・金銭目的
    -ポイントを不正換金する
    -ゲーム内のレアなアイテムを売買する(リアルマネートレード)

これらのパラメータを組み合わせると以下の通りとなります。

Attackvariability_3

図1.攻撃者の攻撃の手法と目的の組み合わせ

※点線の「n:n」も攻撃手法としては十分あり得ますが、対策を考える前提であれば、「1:n」、「n:1」に集約されるため、割愛することができます。

■対策の考え方

個々の対策は様々なサイトや著書で取り上げられているので、ここでは対策の整理方法をご紹介したいと思います。まずは「対策の強度」という観点です。

Defence_2 図2.対策の強度

左側の三角形が示すように下に行けばいくほど対策の強度が大きいということを示しています。

ブロックをしてしまうと攻撃者は対策されたことを検知し、しきい値などを調査した上でそれをかいくぐろうとします。欺瞞とはそうした攻撃者に攻撃が成功したと思わせることによって、攻撃を止めさせるという手法です。たとえば、予め、偽の個人情報を保存したダミーサーバを用意し、ロードバランサーによって攻撃者の通信をダミーのサーバに振り分けるというような方法です。

上記の図に具体的な対策をいくつか当てはめていくとこのようなイメージになります。

Solution

図3.個別の対策のイメージ

次に運用の観点で不正ログイン対策を見てみましょう。対策のライフサイクルを以下に示します。

Operation

図4.不正ログイン対策のライフサイクル

ポイントは2つあります。

 1つ目は解析から検知、リアクションまでを如何に迅速に実施し、被害を最小限に留めるかということです。

 実際のソリューションで考えると、トラフィックを自動的に解析し、攻撃を検知・遮断するデバイスとしてはWeb Application Firewall(以下、WAF)が該当します。製品にも依りますが、レイヤー7で動作し、ユーザのトレーサビリティー、迅速な遮断、カスタマイズの容易性などに優れており、FWやIPSでは実現が難しいことができるためです。

 2つ目のポイントは、ログの解析という点です。WAFは決められたルールの通りに動作するため、予めすべての不正ログイン攻撃をブロックすることは難しいです。つまり、WAFで防御できない攻撃についてはログの解析を行い、兆候により検知することが重要となります。

 次にログの解析が求められるフェーズとしては、事後対応となります。被害を受けたアカウントの抽出、ユーザへの通知が求められるわけですが、ログ解析ツールを使うことで迅速な対応ができます。たとえば、攻撃者が利用したIPアドレス・User-Agentをキーに、ログインが成功したログを検索し、そこから不正ログインされたアカウント名を抽出するという方法がございます。同フェーズにて、受けた攻撃のログを解析することで、攻撃者の手法(攻撃間隔、Acceptヘッダ、Tor経由)を特定し、それをWAFの検知メカニズムに追加することによって、検知力・防御力を上げられるということです。ログ解析エンジンはこのライフサイクルにおいては万能的な効果を発揮します。

■まとめ

ここまで、様々な対策の分類方法および考え方を書きましたが、最後に対策を比較する際のテンプレートをご紹介します。

Matrix

図5.対策リストと費用対効果のテンプレート(クリックすると拡大します)

左側は対策のカバレッジを表しており、右側は対策にかかるコスト、ユーザビリティなど、弊害をまとめています。記入例として含まれている対策、および○×、スコアは環境・実装方法によって変わりますので、参考情報として捉えていただき、必要に応じてカスタマイズいただければ幸いです。

上記の表は以下からダウンロードできます(Excel、15kb)。

matrix.xlsx

前へ

マルウェア解析奮闘記 ~暗号化を解除せよ~

次へ

無償のマルウェア検知ツール「CrowdInspect」を使ってみた