AiTM:パスワードだけでなくセッションを盗むフィッシング
長いあいだ、アドバイスはシンプルでした。「二要素認証を有効にすれば、フィッシングはもう怖くない」。このアドバイスは今でもとても有効ですが、それだけでは足りなくなりました。AiTM(Adversary-in-the-Middle、「間に入り込む敵」)と呼ばれる攻撃は、パスワードよりはるかに多くのものを盗みます。すでに開いているセッションそのものです。その仕組みを、かみくだいて見ていきましょう。
「Adversary-in-the-Middle」攻撃とは?
従来のフィッシングでは、偽サイトはコピーです。銀行やメールのページをまねて、入力されたパスワードを保存します。攻撃者は後でそれを自分で使う必要があります。
AiTM攻撃では、偽サイトはもはやコピーではなく、仲介者です。銀行の本物の窓口の手前に、偽の係員が座っている場面を想像してください。私たちが書類を渡すと、偽の係員はそれを本物の係員に渡し、返事を持って戻ってくる。その繰り返しです。すべては普通に進みます……ただ、途中で全部コピーされているのです。
技術的には、偽サイトは本物のログインページを表示します。本物のサービスからリアルタイムで取ってきたものです。この作業をこなす「すぐ使える」キットが、サブスクリプションのように貸し出されており、どんな詐欺師でもこの手口を使えるようになっています。
セッションCookieの盗難:フェスのリストバンド
サイトにログインしたあと、クリックのたびにパスワードを入れ直すことはありません。サイトはセッションCookieをくれます。ブラウザに保存される小さな札で、「この人はもう本人確認を済ませた」という意味です。
これは音楽フェスのリストバンドと同じです。入口でチケットと身分証を見せたら、あとはリストバンドを見せるだけ。ステージごとにチケットを確認し直す人はいません。
AiTM攻撃の狙いは、このリストバンドの複製を手に入れることです。そうなれば攻撃者には、パスワードもコードも必要ありません。Cookieを自分のブラウザに貼り付ければ、ログイン済みの状態でアカウントの中にいます。だからこそ、後からパスワードを変えるだけでは足りないことがあるのです。セッションが閉じられないかぎり、盗まれたリストバンドは有効なままかもしれません。
一部の二要素認証では足りない理由
二要素認証(2FA)は、パスワードに2つ目の証明を加えます。SMSで届くコード、認証アプリのコード、スマホで承認する通知などです。コピーサイトに対しては非常に強力です。しかし仲介者に対しては、ずっと弱くなります。コードは正しいのですが、入力する場所を間違えただけで、一瞬で本物のサイトに中継されてしまうからです。
耐えられるのは、サイトのアドレスを自分で確認する方式です。物理的なセキュリティキーとパスキーです。ログインの瞬間、キーは自分がどのドメインと話しているかを確かめます。本物でなければ、そもそも応答しません。人間はサイトを見間違えることがありますが、キーは見た目の似ていることにはだまされません。
AiTMのインフラを見分けるには
AiTMのわなは、私たちが本物のページを見ているという点にあります。本物のロゴ、本物のレイアウト、ときには自社の背景画像や、すでに入力済みの自分のメールアドレスまで。内容からは何も分かりません。だから別の場所を見る必要があります。
- ブラウザのアドレスバーにあるURL。仲介者が完璧にはまねできない唯一のものです。
login.microsoftonline.com.secure-auth.exampleにあるMicrosoftのログインページは、Microsoftのものではありません。本当のドメインはsecure-auth.exampleです。ドメインの正しい読み方はガイドクイッシング:QRコードの裏に隠れたフィッシングを、紛らわしい文字についてはPunycodeとホモグラフを参照してください。 - 何も提案しないパスワードマネージャー。パスワードマネージャーは見た目ではなくドメインで入力欄を埋めます。いつもは反応するページで黙っているなら、それは警報です。
- ページまでの回り道:「あなたは人間ですか?」の確認、1回または複数回のリダイレクト、メールやQRコードで届いたリンク。
- できたばかりのドメイン:数日前に登録され、CDNの後ろにあったり、無料のWebページ作成サービスでホストされていたりすることが多いです。
通報のために集めるもの
ホスティング事業者やレジストラにすばやく動いてもらうには、確認できる事実を渡す必要があります。そのページでログイン情報を二度と入力しないよう注意しながら、次のものを集めます。
- ページの完全なURLと、そこに至るリダイレクトの連鎖全体
- ページとアドレスバーが両方写ったスクリーンショット
- 確認した日時(この種のインフラはすぐに変わります)
- リンクが含まれていたメールのソース全体
- ドメインのレジストラと登録日、ページを配信しているホスティング事業者またはCDN
- なりすまされたブランド:Microsoft、Google、銀行など。各社のセキュリティチームはこうした通報を受け付けています。
Baitbackでインフラを通報する
こうした手口は、ほぼ必ず1通のメールから始まります。そのソース全体を Baitback に貼り付けましょう。ツールが送信元サーバーとそのホスティング事業者の通報窓口を見つけ、メール内のリンクのリダイレクトをたどり、行き先のおかしな点を指摘します。ブランドのそっくりドメイン、最近登録されたドメイン、無料ホスティング、ブラックリストに載っているドメインなどです。そのうえで、そのまま送れる通報文を用意します。
ページそのものについては、集めた情報をレジストラ、ホスティング事業者またはCDNに送り、Baitback が案内するサービス(Google Safe Browsing、Microsoft、Netcraftなど)にも届けます。こうしたメールがなぜ技術的なチェックをすべて通過できるのかは、チェックが「OK」でも、メールはうそをつくで説明しています。
AiTMのページでログイン情報を入力してしまったら
パスワードだけでは足りません。リストバンドも取り戻す必要があります。
- 信頼できる端末からパスワードを変更する
- 「すべてのセッションからログアウト」を使う。会社ならIT部門にセッションの無効化を頼む
- 新しい二要素認証の方法が追加されていないか確認する
- メールの振り分けルールを確認する。攻撃者は、特定のメールを転送したり隠したりするルールをよく追加します。
- AiTMサイトはログインページをまねるのではなく、本物をリアルタイムで中継します。
- 再ログインを不要にする「リストバンド」であるセッションCookieを盗むため、攻撃者にはもうパスワードもコードも要りません。
- コード(SMS、アプリ、通知)は中継できますが、セキュリティキーとパスキーはドメインを確認するので耐えられます。
- 確かな手がかりはURLだけです。黙り込むパスワードマネージャーは、すぐれた警報です。
- ログイン情報を入力してしまったら、パスワードを変え、さらにすべてのセッションを閉じます。