フィッシング対策が破綻する理由:13のドメインを横断するログインでURLを見なくなったユーザーたち

フィッシング対策が破綻する理由:13のドメインを横断するログインでURLを見なくなったユーザーたち

サイバーセキュリティ不正対策インフラ

データソース:HN + web research

あるソフトウェア開発者のもとに、見知らぬ番号からショートメッセージ(SMS)が届いた。大手銀行のカスタマーサポートを名乗る送信者は、公式の連絡窓口や公開ディレクトリのどこにも掲載されていない見慣れない電話番号へ折り返すよう求めてきた。さらに本人確認のためとして、クレジットカードの裏面に記載された機密番号を電話口で読み上げるよう指示してきた。驚くべきことに、このSMSは銀行が正規に送った本物の連絡だった。しかしその振る舞いや運用ロジックは、国際的な特殊詐欺グループの手口と何ら変わりがなかった。

十数個のドメインを跨ぐ正規のログインフロー

セキュリティ専門家は毎日のように「不審なリンクをクリックしてはいけない」と口を酸っぱくして啓発を続けている。だが、企業自身が日々の業務フローの中でその防犯ルールをことごとく踏みにじっているのが現実だ。開発者のmaurycyz氏は、現在多くの企業で常態化している典型的なエンタープライズ級ログインフローを詳細に解剖した。ユーザーはある企業の公式サイトを訪れるが、安全な正規ルートドメインにとどまることは許されず、直ちにサードパーティSaaS事業者の認証ログインアドレスへとリダイレクトされる。

そのページでユーザーは、さらに長い16進数のUUIDで構成された認証ハブのドメインを経由させられ、続いて二要素認証(2FA)の検証を受けるためにまったく別の無関係な外部事業者のURLへと飛ばされる。幾度もの転送を経た後、利用動向を収集するためのデータ収集サイト(エクスペリエンスセンター)へとルーティングされ、最後にようやく元の企業のルートドメインへとよろめきながら戻ってくる。

この複雑な認証プロセスを終えるまでに、ユーザーがユーザー名、パスワード、SMS認証コードを入力した画面の入力欄は、ただの1つとして企業自らが保有する公式ドメイン上にはホストされていなかった。正規の業務フローそのものが、まるで怪しげなリダイレクトの障害物競走のようになっているのであれば、攻撃者が高度なゼロデイ脆弱性を探す必要などどこにもない。社名のスペルをわずかに変えたタイポスクワッティングドメインを数百円で取得し、企業のロゴとパスワード入力欄を配置した簡素なWebページを作るだけで、一般ユーザーをいとも簡単に騙し取ることができる。日々の業務中に認証トークンの期限切れによってログイン画面が唐突にポップアップする環境では、どれが正規のシステムでどれがフィッシング詐欺なのかを判別できる人間など存在しない。

フィッシング詐欺とまったく見分けがつかない公式SMSのスクリーンショット 図:宅配業者から届いた公式SMSのスクリーンショット。出典:Troy Hunt / troyhunt.com

日常業務が破壊したURLへの信頼

インターネットのDNS(ドメインネームシステム)は、本来きわめて明快な階層構造として設計された。最上位のトップレベルドメインから運営組織、そして個別のサーバー名へと至る整然とした構造は、デジタル空間においてもっとも信頼できる正統性の証となるはずだった。しかし、大手企業が無秩序に進めた外部委託やクラウドサービスの複雑な継ぎ接ぎによって、最も識別しやすいはずのセカンドレベルドメインは、乱雑極まりないリダイレクトの経路上に埋没してしまった。

現代のユーザーは、スマートフォン上で毎日のように無数の認証や承諾のクリックを求められている。深刻な認知的疲労の中で、正当性の判別という重い責任を一般ユーザーに押し付けること自体、設計者側の責任放棄にほかならない。正規の銀行や金融機関が短縮URLを埋め込んだマーケティングSMSを日常的に送りつけ、公式サポートメールに記載されたアンケート調査のリンクが無名の外部配信プラットフォームを指している現状は、企業自らがユーザーに対して「URLの構造など気にするな」と日々教育し続けているようなものだ。

翌日に同じ送信元から届いた別のSMS 図:翌日に同じ送信元から届いた別のSMS。こちらも真偽の確認は不可能。出典:Troy Hunt / troyhunt.com

ユーザーに「危険なリンクを警戒せよ」と求める警告は、もはや中身のない形骸化した建前と化している。企業が発信する正規のリンクのほうが、巧妙に偽装されたフィッシングリンクよりもはるかに怪しく見えるからだ。あるセキュリティ専門家は、Microsoftが送信してきた公式の業務メールをスパムとしてマークせざるを得なかった経験を明かしている。無数の追跡パラメータや外部リンクが複雑に組み込まれた公式メールのメタデータは、現代の標的型フィッシングメールの指標と完全に一致していたからだ。技術系フォーラムでは、セキュリティ部門の杜撰な運用を問題視させるため、利用している銀行の公式メールをあえてフィッシング通報していると告白するエンジニアも少なくない。

3日後に届いたフォローアップメール 図:3日後のフォローアップメールでは、公式の連絡と詐欺の手口の境界線が完全に消失している。出典:Troy Hunt / troyhunt.com

システムの信頼を取り戻す4つのエンジニアリング原則

形骸化した啓発活動に辟易した開発者コミュニティは、RFCのプロトコル仕様に準拠したエンジニアリングの実践に基づく厳格な最低基準を提示している。

何よりも優先されるべきは、ルートドメインの集約である。大規模組織は、広く認知された単一のルートドメイン上ですべてのコア業務を展開しなければならない(MUST)。認証や重要情報に関わる内部サービスは、すべてそのメインルートドメインのサブドメイン配下に配置されなければならない(MUST)。業務で頻繁に見受けられる場当たり的な独自ドメインや、サードパーティのホスティングプラットフォームに依存した怪しげな命名規則は、エンジニアリング標準において全面的に排除されるべきである。

メールやSMSといった通信チャネルにおける対話導線に対しても、同様に厳格な基準が求められる。ユーザーをサードパーティのWebサイトへ誘導して情報入力を求める場合、技術チームは自社サーバー上にリダイレクトの中継プロキシを構築しなければならない(MUST)。ユーザーがクリックするリンクはあくまで自社の検証済みドメイン上に存在し、そこから透過的に最終サービスへとルーティングされる仕組みを整える必要がある。

この原則は、電話回線網にもそのまま適用される。企業はプロモーションやサポート案内のSMSで、出所の定かでない臨時の短縮電話番号への架電を求めてはならない(MUST NOT)。必要な連絡先情報は、信頼できる元メッセージのリンクから遷移した公式Webページ上に明記されるべきであり、改ざんや偽装が容易なSMSの平文の中に放置されてはならない。

インドがわずか半年で収拾したドメインの混乱

泥沼化したフィッシング被害に対し、啓発によって人間の認知の隙を塞ごうとするアプローチは初めから限界を迎えている。真の解決策は、インフラストラクチャ層における物理的な隔離以外に存在しない。インド政府は昨年、国内のすべての金融機関に対して専用のドメイン隔離区画を強制的に設定し、極めて有意義なモデルケースを示した。

新たな規制の下、インドのすべての商業銀行は銀行業専用のトップレベルドメイン(TLD)の使用が義務付けられ、ノンバンクなどの金融機関にも金融専用のドメイン拡張子が強制された。Webポータル上でサービスを提供する際も、メールで明細書を送付する際も、さらには認証用の中継インターフェースに至るまで、すべての通信はこの専用ドメイン配下に集約されなければならない。

さらに徹底していたのは、電話サポートネットワークに対する通信当局の規制強化だ。銀行からの発信専用番号は、「1600」で始まるプレフィックスへと一括統合された。この専用番号帯はインド電気通信省が直接管理し、銀行、金融サービス、保険業界、および一部の政府機関のみに排他的に割り当てられている。その目的は、資産取引や公式サービスに関する通話を、端末の画面上で一般の営業電話から物理的に識別できるようにすることにある。認可を受けていない事業者には番号の取得権限が一切ない。インド政府が設けた猶予期間はわずか6か月だったが、国内の銀行ネットワークは瞬く間にこの移行を完了させた。

システムの不備をユーザーに押し付けるのはセキュリティの怠慢だ

ネットワークインフラのレイヤーから断行される強制的な分離は、巨額の予算を投じて何万回もの防犯講習を行うよりもはるかに高い効果を発揮する。ユーザーはDNSの仕組みを学ぶ必要も、複雑なリダイレクト経路の是非を見極める必要も、高度なITリテラシーを身につける必要もない。指定された正規の金融ドメインでないWebサイトや、規制当局が定めた専用プレフィックスからではない着信は、考えるまでもなくすべて詐欺とみなせばよいからだ。世界中のユーザーがこれと同様のジレンマに直面しており、正規の銀行案内と詐欺メッセージの境界線は、ブラックリストに登録されているか否かという紙一重の差でしかなくなっている。

セキュリティエンジニアリングの専門家であるKelly Shortridge氏は、セキュリティ業界が「セキュリティ文化」というスローガンに対して非現実的な執着を抱いていると鋭く指摘している。その執着の本質は、エラーを誘発するように作られた不完全なシステムの中で、人間に過剰な注意力を強い、1日に何百回も繰り返される操作において一度のミスも犯さないよう求める構造的な甘えに他ならない。

十数回ものリダイレクトの渦中で正規の認証プロバイダを見分けろと一般ユーザーに要求するのは、ホテルの宿泊客に対して客室カードキーのRFID暗号化プロトコルの安全性を自力で検証しろと迫るようなものだ。インドが断行したインフラ改革は、明確なエンジニアリングの回答を突きつけている。破綻したシステム設計のツケをユーザーに押し付けることこそ、セキュリティ業界最大の怠慢である。認証の入り口を単一のドメインに統合することすら怠る企業にとって、どれほど反詐欺教育を叫んだところで、それは欺瞞にすぎないのだ。

参考リンク:

  • maurycyz.com 原文
  • Lobsters ディスカッション
  • Troy Hunt 関連記事
  • HN ディスカッション