フィッシングキットから生成されたサイトの調査 (インターンシップ体験記)

はじめに

こんにちは、ドコモグループのウインターインターンシップ2023に参加した猪飼です。 普段は、大学院でマルウェアの動的解析に関する研究をしています。

「サイバー攻撃の原理を理解し、攻撃インフラ(マルウェアインフラ)を解明するセキュリティアナリスト」のポストに参加させていただきました。

この記事では、私がインターンシップで取り組んだ内容について紹介します。

NA4Secプロジェクトについて

まずは、私がお世話になったNA4Secプロジェクトについて紹介します。 正式には「Network Analytics for Security」というNTTコミュニケーションズ イノベーションセンターのプロジェクトであり、通称NA4Sec(なよせ)と呼ばれています。

NA4Secプロジェクトは、「NTTはインターネットを安心・安全にする社会的責務がある」という理念に基づき、攻撃インフラの解明、撲滅の実現を目指して活動しているプロジェクトです。

参加のきっかけ

現場で業務を体験できるインターンシップを調査していた際、過去にドコモグループのインターンシップを体験した方々のブログを発見しました。ブログの内容が非常に興味深く、「このインターンシップはとても面白そうだな」という印象を受けました。

そこから調べていく間に、セキュリティに関する業務を現場で体験できる点に魅力を感じ、「実際に働く雰囲気を体験したい!」と考え応募しました。また、自分が興味を持っている攻撃インフラに関連するポストが存在したことも、応募の決め手でした。

インターンシップ概要

2/5から2/16までの約2週間、プロジェクトメンバーとして業務を体験させていただきました。

業務はオンラインで実施し、NeWorkというオンラインコミュニケーションツールを活用しました。気軽に相談できる環境・雰囲気であったため、非常に働きやすかったです。

インターンシップにて、「サイバー攻撃の原理を理解し、攻撃インフラ(マルウェアインフラ)を解明すること」をテーマに、私は以下のことに取り組みました。

  • 脅威調査
    • ペネトレーションテストツールであるCobalt Strikeについて調査し、理解する。
  • 脅威分析1
    • Cobalt Strikeが悪用された攻撃事例を調査し、ダイヤモンドモデルに基づいて分析する。
  • 脅威探索
    • デバイス検索エンジンであるCensysを使用し、インターネット上に存在するCobalt StrikeのC2サーバを調査する。
  • 脅威検証
    • 攻撃者が、インフラの秘匿に使用するクローキング技術について調査し、サーバに実装する。
  • 脅威分析2
    • フィッシングについて調査し、フィッシングキットを解析する。
    • URLスキャンサービスであるurlscan.ioを使用し、フィッシングサイトを調査する。

今回は、「脅威分析2」について紹介したいと思います。

「脅威分析2」以外の内容に関しては、過去にインターンシップに参加された方の記事が公開されているのでそちらをご覧ください1 2

脅威分析:フィッシングキットの解析

私は今回、フィッシングキットの解析に取り組み、以下のワークを行いました。

  • フィッシングについての調査
  • フィッシングキットについての調査
  • フィッシングキットの解析
  • フィッシングサイトの調査

フィッシング詐欺について

フィッシング詐欺とは、通販サイトや会員ページのログイン画面を模倣し、利用者にIDやパスワード、カード情報などを入力させ、情報を搾取する犯罪の一種です。 近年では、フィッシング詐欺の件数は年々増加傾向にあります。フィッシング対策協議会によると、2024年1月に報告された件数は、85,827件でした3

フィッシング詐欺の分業化

フィッシング詐欺の件数が増加している背景として、分業化が考えられます。それぞれの工程を担当する業者が分かれることで、フィッシング詐欺の実行が容易になっています。 以下に、各工程と内容の例を挙げます。

工程 内容
計画 対象の調査・決定
調達 必要ツールや情報の取得
構築 フィッシングサイトの構築
誘導 フィッシングメール、SMSなどの送信
詐取 情報を騙し取る
収益化 盗んだ情報を金銭に変換
強化拡大 攻撃の強化・拡大

フィッシングキットについて

フィッシングキットとは、フィッシングサイトを容易に構築可能なテンプレートのことです。高度なスキルを必要とせずにフィッシングサイトの構築が可能となります。このようなフィッシングキットは、秘匿性の高いチャットサービスであるTelegramやダークウェブなどのコミュニティ、配布サイトなどで配布されていると考えられます。

フィッシングキットに含まれるソースコードを解析することで、実装されている調査・解析妨害のテクニックや、通信先といった攻撃者についての知見を得ることができます。また、フィッシングサイトを構築しているファイルのハッシュ値に着目することで、同じフィッシングキットから作成された他のサイトについても調査可能です。

フィッシングキットに含まれるファイルの解析

実際に、フィッシングキットに含まれるファイルの解析に取り組みました。今回対象としたフィッシングキットには3つのファイルが含まれており、各ファイルのソースコードから処理内容を解析しました。 その中で、一部のファイルには、解析を困難にする目的で「難読化」と呼ばれる処置が施されていました。難読化の解除にも取り組みましたが時間が足りず、プロジェクトの方から解除後のソースコードを提供していただき解析を続行しました。自力で難読化を解除できず悔しかったです...

解析から、各ファイルの処理内容、及びフィッシングサイトの挙動は以下の通りだとわかりました。

ファイル 内容
ファイル1 フィッシングサイトを生成し、入力された情報を攻撃者サーバ内のファイル2に送信するphpファイル
ファイル2 受け取った入力情報を攻撃者のTelegramやメールに送信するphpファイル
ファイル3 メール送信に関する処理が記述されたjsファイル

ファイル1が生成したフィッシングサイトに、被害者が情報を入力して送信ボタンをクリックすると、攻撃者サーバに入力した情報が送信されます。この情報をファイル2が受信し、さらに攻撃者のTelegramとメールに送信します。この際、メール送信処理を担当するファイル3も使用されます。

フィッシングサイトの調査

次に、urlscan.io というサービスを用い、同じフィッシングキットから作成されているフィッシングサイトを調査しました。

urlscan.ioでは、調査対象ページに代理でアクセスし、スクリーンショットや、ブラウザが受信したファイルの一覧、その他の詳細情報を閲覧可能です。また、過去に他のユーザによってスキャンされた結果についても検索できます。

今回、調査した手順は以下です。

  1. urlscan.ioにフィッシングサイトのURLを入力し、過去のスキャン結果を検索します

  2. フィッシングサイトを構築するHTMLファイルのハッシュ値を取得します

  3. 取得したハッシュ値をurlscan.ioに入力し、同一ハッシュ値を持つサイトのスキャン結果を検索します

  4. 同じフィッシングキットから作成されたと考えられるサイトのURLが、900件以上表示されました(2024年2月15日時点)

上記の調査結果より、同一のフィッシングキットから延べ900件以上のサイトが作成された可能性があることが分かりました。 このことから、フィッシング詐欺が増加している一因として、フィッシングキットの流通により、フィッシングサイトの複製が容易になったことが考えられます。

学んだこと

本インターンシップに参加して、さまざまなことを学びました。技術的なことはもちろん、チームで業務を進める雰囲気も体験できました。

以下に学びをピックアップして紹介します。

  • 能動的に情報を収集し、攻撃インフラを発見する体験ができた
    • Cobalt StrikeのC2サーバや、フィッシングサイトのURL調査を能動的に実施した
    • C2サーバのIPアドレスや、フィッシングサイトのURLを発見する経験を積めた
  • セキュリティインシデント事例の調査を体験できた
    • ネット上に公開されている、インシデントに関する記事・情報の調査を実施した
    • Cobalt Strikeを用いた攻撃の流れや脆弱性の悪用、C2サーバに関する情報などの知見を吸収できた
  • 現在でも使用されている攻撃手法や技術について触れられた
    • 攻撃者の視点でクローキングを実装することで、アクセス制御に関する理解が進んだ
    • 年々件数が増加しているフィッシング詐欺について、その背景にあるフィッシングキットの解析を体験できた
  • チームで仕事をする雰囲気を体験できた
    • 情報共有が盛んであり、発言し易い環境を作る重要性を学んだ
    • 疑問点があれば積極的に質問することで、自分が担当している作業の目的が明確になった

おわりに

約2週間という期間でしたが、あっという間に過ぎ去ってしまいました。楽しい時間は、過ぎるのが早いです。

今回所属させていただいたNA4Secプロジェクトは、質問や情報共有が非常にしやすい雰囲気であり、素朴な疑問・質問にも丁寧に答えていただきました。また、技術的な学びだけでなく、チームで働く際に必要な事を自分なりに考えるきっかけにもなりました。

受け入れてくださったNA4Secプロジェクトの皆さま、ありがとうございました。 特にインターンシップを担当してくださった神田さん、坪井さん、鮫嶋さんには、非常にお世話になりました。 ありがとうございました。

メンターからのコメント

坪井です。猪飼さん、まずは2週間のインターンシップお疲れ様でした。

今回2週間という短い期間かつ3連休も重なったため、実際に手を動かして作業してもらう期間が短い中、スケジュール通りに予定していた範囲の業務を完遂していただけました。今回のインターンシップではNA4Secの全員と対面で会う機会がなかったものの、NeWorkに参加しているチームメンバに対して積極的に質問をして課題解決をされており、技術スキルだけではなく、社会人としてチームで働くということを経験していただくことができたかと思います。

猪飼さんの持ち前の高いコミュニケーション能力と課題解決能力でこれからもご活躍されることを心より信じています。

次回インターンシップのお知らせ

ドコモグループでは2024夏インターンシップを開催します。
猪飼さんが参加された現場受け入れ型インターンシップも下記スケジュールにて開催予定です。

エントリー期間 開催日
6/3(月) ~ 6/21(金) 8/26(月) ~ 9/6(金) ※ 土日除く

詳細については今後順次公開される予定です4

興味を持たれた方はぜひご応募ください。

(5/23追記)

サマーインターンシップ2024の情報が公開され、現場受け入れ型インターンシップの受け入れポスト情報も公開されました。

本記事に関連するポストは「D2.脅威インテリジェンスを生成・活用するセキュリティエンジニア/アナリスト」(PDFファイル、4ページに記載)です。

参考文献

フィッシング対策協議会 : フィッシング対策ガイドライン 2023年度版


  1. 「脅威調査」「脅威分析1」「脅威探索」については、「インターンシップ体験記 〜Cobalt StrikeのC2サーバ追跡〜」で紹介されています
  2. 「脅威検証」については、「攻撃者はいかにしてフィッシングサイトを隠すか?(インターンシップ体験記)」で紹介されています
  3. 月次報告書 | 2024/01 フィッシング報告状況
  4. 予めマイページに登録していただければ、インターンシップ募集開始時にメールでお知らせが届きます
© NTT Communications Corporation 2014