This post is also available in: English (英語)
概要
Unit 42 のリサーチャーはある大規模なキャンペーンを発見し、このキャンペーンを ApateWeb と名付けました。ApateWeb は 13 万を超えるドメインのネットワークを使い、スケアウェアや迷惑プログラム (PUP) などの詐欺ページを配信しています。私たちはこれらの PUP から複数のアドウェア プログラムを特定しました。そのなかには、不正なブラウザーや、さまざまなブラウザー拡張機能が含まれていました。
同キャンペーンで使われていたプログラムは従来で言うところのマルウェアではありません。ただしこれらはサイバー犯罪者が初期アクセスを得るための手段となりうるもので、結果的には被害者をより深刻なサイバー脅威にさらしかねません。
攻撃者らは詐欺メールを作成し、被害者がキャンペーン URL をクリックするようにしむけます。さらに、Web サイトのページに JavaScript を埋め込んで、トラフィックを自分たちのコンテンツにリダイレクトします。ApateWeb は多くの階層からなるシステムを備えた複雑なインフラを持ち、そのなかでエントリー ポイントから最終的な悪性ペイロード配信までの間の一連の中間リダイレクトを行います。
ある集中管理インフラを使うグループが、被害者のトラッキングを行った後でキャンペーンの次の階層にトラフィックを転送することによって、エントリー ポイントを大規模にコントロールしています。このグループはこれに加えて回避戦術も使っていました。たとえば悪意のあるコンテンツのクローキング (隠蔽) や、ワイルドカード DNS の悪用などで、防御側によるキャンペーンの検出を防ごうとします。
私たちは 2022 年 8 月以降、ApateWeb のアクティビティ急増を観測しています。ただしこのキャンペーンは 2022 年、2023 年、2024 年を通じてアクティブでした。攻撃者の配下にある数百もの Web サイトが今も Tranco による Web サイト アクセス ランキング リストの上位 100 万件に入っていることから、同キャンペーンによるインターネット ユーザーへの影響は大きなものとなりえます。
私たちのテレメトリーからは、米国、ヨーロッパ、アジアを含む世界の複数の地域から、これらの Web サイトに対し、月間数百万件のアクセスがあることがわかっています。たとえば私たちは 2023 年 11 月のひと月で、このキャンペーンによる推定 350 万件のセッションを、74,711 台のデバイスでブロックしています。
Advanced URL Filtering や DNS Security などのサブスクリプションを有効にしたパロアルトネットワークスの次世代ファイアウォール製品をお使いのお客様は、本調査で解説したキャンペーンの既知の URL やホスト名に対する保護が強化されています。Cortex XDR は本稿で解説したアドウェアに「suspicious (疑わしい)」というフラグを立てます。侵害の懸念があり弊社にインシデントレスポンスに関するご相談をなさりたい場合は、こちらのフォームからご連絡いただくか、infojapan@paloaltonetworks.com までメールにてお問い合わせください (ご相談は弊社製品のお客様には限定されません)。
関連する Unit 42 のトピック | Scareware, Web threats |
キャンペーン インフラとワークフロー
このセクションでは同キャンペーンについて詳しく調査し、そのワークフローや特徴、インフラを理解します。また、キャンペーンのエントリー ポイント URL をサンドボックスで開き、トラフィックと悪意のあるペイロードを分析します。
図 1 は同キャンペーンによる複雑なリダイレクト チェーンを分解したもので、注目すべき主なインフラの特徴を示しています。
第 1 階層は ApateWeb キャンペーンのエントリー ポイントです。この第 1 階層では、攻撃者が電子メールを通じて被害者にエントリー ポイントとなる URL を配布します。第 1 階層を経たトラフィックは第 2 階層に転送され、そこでアドウェアやアンチボット検証など一連の中間リダイレクトが行われたのち、私たちが第 3 階層と呼ぶ最終階層へといたります。第 3 階層は、スケアウェア、PUP、詐欺ページなどの悪意のあるペイロードを配信します。
同キャンペーンの詐欺的戦略やセキュリティ保護検知逃れへの取り組みにもとづき、私たちはこのキャンペーンを ApateWeb と名付けました。これはギリシャ神話に登場する欺瞞を擬人化した女神、Apate にちなむものです。
第 1 階層: キャンペーンのエントリー ポイント
攻撃者らは、キャンペーンのエントリー ポイントとして機能するカスタム URL を作成し、そこから初期ペイロードを読み込みます。このペイロードは集中管理型のインフラで被害者をトラッキングしていて、その情報をサーバー側と共有し、次のリダイレクトを決定します。
第 1 階層は複数の安全対策をめぐらして自らを防御側から保護しています。彼らが使う技術にはたとえば以下のようなアクティビティが含まれています。
- 検索エンジンへのリダイレクト
- ボット/クローラーに対するエラー ページ表示
- ワイルドカード DNS の悪用 (これにより攻撃者は多数のサブドメインを生成できるようになる)
エントリー ポイントの URL
このキャンペーンは特定のパラメーター (キーやサブメトリクスなど) を持つ URL を使います (図 1)。このキャンペーンで悪性コンテンツが配信されるのはこれらの特定パラメーターが存在する場合のみです。パラメーターに変更や欠損があれば、被害者にはエラー ページが表示されるか、コンテンツが表示されません。
これらのパラメーターの値がどのように使われるのかは不明です。私たちはこれがサーバー側で内部的に使う (次のリダイレクト URL を決めるなど) ために定義されているのではないかと見ています。エントリー ポイント URL がブラウザーで開かれた後、キャンペーンは初期ペイロードを読み込みます。
初期ペイロード
初期ペイロードには重要なコード スニペットが 2 つ含まれています。1 つめのコード スニペットの例を図 2 に示します。これは、被害者をトラッキングするために集中管理インフラにクエリーを送るスクリプトです。
同キャンペーンの Web サイトに閲覧があるごとに、ApateWeb は集中管理サーバーに接続し、各閲覧者に固有の識別子 (UUID) を割り当ててトラッキングします。以下の一連のドメインは、最近、当該キャンペーンが集中管理サーバーに接続するさいにローテーションされていたものです。
- professionalswebcheck[.]com
- hightrafficcounter[.]com
- proftrafficcounter[.]com
- experttrafficmonitor[.]com
たとえば、当該キャンペーンは、professionalswebcheck[.]com/stats に接続して、上の図 2 を取得していました。この UUID は Cookie に保存され、サーバー側とも共有されます (後述)。
2 つめのコード スニペットを図 3 に示します。2 つめのコード スニペットは HTML フォームの非表示のフィールドに UUID を設定し、このフォームを自動送信して、サーバー側に情報を共有します。被害者のブラウザー タブがシークレット タブかどうかを示す識別子など、追加のデータもこのフォームには設定されています。これは /api/users/ という URL パスでサーバーに情報を送る HTTP GET リクエストです。サーバーはこの情報を使って次のリダイレクトを決定するものと考えられます。
回避戦術
このキャンペーンは、次の回避戦術を用いて第 1 階層を防御側から守っています。
- ドメインが検出されないよう保護する: 防御側の対策を検出した場合、ApateWeb は無害なコンテンツを表示することで攻撃者の配下にあるドメインを保護します。誰かが直接、ApateWeb が管理しているドメインの Web サイトを表示させた場合、当該ドメインから人気検索エンジンにリダイレクトされるか、下の図 4 に示すような空白ページにリダイレクトされます。このキャンペーンでは、被害者のブラウザーが特定パラメーターをもつエントリー用 URL でアクセスしてきた場合にのみ、トラフィックを次の階層に転送します。この戦略により、Web サイトの定期スキャンを実行するセキュリティ クローラーがキャンペーン用ドメインをブロックしづらいようにしています。
- ボット/クローラーにエラー ページを表示する: セキュリティ クローラーがエントリー URL にアクセスした場合、ApateWeb はエラー ページを表示して自身のクローキング (隠蔽) を図ります。このキャンペーンは User-Agent の検査でクローラーやボットを検出しています。図 5 は同キャンペーンが生成したエラー ページの内容を示しています。
- 多数の登録済みドメインとワイルドカード DNS を用意する: ApateWeb は 10,000 件を超える登録ドメインを管理し、ワイルドカード DNS を悪用しています。これにより、同キャンペーンでは事実上無制限にサブドメインを作り、そこから悪意のあるコンテンツを配信できます。私たちは ApateWeb ドメインの 92% 以上がワイルドカード DNS のパターンを使ってサブドメインを作成していると見ています。たとえば私たちは、pl[0-9].*\ という Perl 互換正規表現 (PCRE) にマッチするプレフィックスを検索することで、110,000 個のサブドメインを ApateWeb ドメインとマッチさせました。
このアプローチを取れば ApateWeb はランダム化された多数のドメインを通じてエントリー ポイント URL を拡散させられるので、その分防御側による検出が難しくなります。
DNS 名前解決
ApateWeb ドメインのほとんどは、限られた数のサーバーに解決されます。このキャンペーンに関連する DNS アクティビティを確認したところ、ApateWeb ドメインの 93% が次の 10 個の IP アドレスに解決されることがわかりました。
- 192[.]243[.]59[.]20
- 192[.]243[.]59[.]13
- 192[.]243[.]59[.]12
- 192[.]243[.]61[.]227
- 192[.]243[.]61[.]225
- 173[.]233[.]139[.]164
- 173[.]233[.]137[.]60
- 173[.]233[.]137[.]52
- 173[.]233[.]137[.]44
- 173[.]233[.]137[.]36
これらの IP アドレスは、2 つの AS (自律システム) 番号に属しています。先頭の 5 つの IP (192.243.*) は 1 つめの AS 以下に、残りの 5 つの IP (173.233.*) が 2 つめの AS 以下に属しています。
第 1 階層では大半のドメインがサーバーを共有していることから、このインフラは単一グループによって管理されていることがわかります。これが、私たちが最初にこのキャンペーンを特定するきっかけとなりました。私たちは、登録ドメインの WHOIS データを分析することで ApateWeb の正体を明らかにしました。WHOIS は登録者情報の提供をやめてしまっていますが、私たちは「単一の攻撃者がリセラー レジストラである eNom を通じ、当該キャンペーンに関連するドメインの 84% を登録していた」ということを示す一貫したパターンを特定しました。
第 2 階層: 中間リダイレクト
トラフィックが第 1 階層から転送された後、第 2 階層は一連の中間リダイレクトを生成します。同一の脅威アクターが第 1 階層と第 2 階層の両方を管理しているかどうかはいまのところ判断できていません。その理由は、第 2 階層のリダイレクトが悪意のあるペイロードの配信に先だってランダムなドメインを使うからです。検証実施のつど、同一の第 1 階層のエントリー URL が、異なる一連のリダイレクトを第 2 階層で生成しました。
検証実施中にリダイレクトされたトラフィックは、ありふれたアドウェアにつながるか、アンチボット検証につながり、そこでイベント チェーンを停止します。
人気アドウェアへのトラフィック転送
第 2 階層のリダイレクト トラフィックのなかには、tracker-tds[.]info や jpadsnow[.]com などのアドウェア サイトに転送される例が見られました。
リダイレクト URL には、アドウェア サイトと共有する複数のパラメーターが含まれています。これらのパラメーターを検査すると、トラフィックをアドウェアに転送するだけでキャンペーンを収益化できることがわかりました。
たとえば、図 4 は、tracker-tds[.]info というアドレスに転送される URL を示しています。この URL には COST_CPM というパラメーターがありますが、CPM というのは「広告 1 マイル (=1000 回表示) あたりのコスト」または「インプレッション単価」と言われる広告における一般用語です。URL 内のこのほかのパラメーターは、CAMPAIGN_ID (キャンペーン ID) や被害者のデバイス情報である BROWSER_NAME (ブラウザー名)、USER_OS (ユーザーの OS) など、キャンペーンに関連する情報を共有しています。このデータによって、アドウェア グループは ApateWeb の背後にいる攻撃者にお金を支払うこともできるし、このトラフィックを、被害者のオペレーティング システムを狙う悪質なペイロードへとさらにリダイレクトすることもできます。
アンチボット検証
私たちが実施した検証のなかには、リダイレクト トラフィックを一時停止し、人手による介入を求めるアンチボット検証を行うものもありました。図 7 はそうしたもののひとつで、リダイレクトが停止されてブラウザーが CAPTCHA を提示しています。CAPTCHA を解くとトラフィックの最終ページへのリダイレクトが続き、不正ブラウザーのダウンロードにいたります (図 9)。
検証中、第 1 階層が第 2 階層の中間リダイレクトをスキップし、第 3 階層に直接移動する例が見られました。
第 3 階層: 最終ペイロードへのリダイレクト
この攻撃チェーンの最終階層は第 3 階層で、ここで ApateWeb が最終ページに到達します。これが悪意のあるペイロードで、内容は PUP、スケアウェア、通知詐欺などの場合があります (図 8)。
私たちは、第 1 階層と第 3 階層の間でインフラが共有されているという証拠は見つけていません。こうした悪意のあるペイロードは通常、パブリック クラウド環境や ISP ないしデータ センターにホストされます。
最終コンテンツは、迷惑プログラムか何らかの詐欺です。
迷惑ブラウザーと拡張機能
ApateWeb が配布する PUP の例として、Browse Keeper や Go Blocker などの迷惑なブラウザー拡張機能や、Artificus Browser などの不正ブラウザーの実行可能ファイルがあげられます。一般的な検索エンジンでこれらの名前を検索すれば、これらを PUP として識別するさまざまなサイトによる削除手順が表示されます。
図 9 は ApateWeb による第 3 階層ページのひとつで、ここでは Artificius Browser 用の Windows 実行可能ファイルを提供しています。
Artificius の侵襲的な振る舞いは重大なリスクをもたらします。被害者のアクティビティを収益化しようとして、このブラウザーは被害者のデフォルト検索エンジンを更新し、広告を挿入し、不要なリダイレクトを実行します。
このブラウザーは、新たにタブやウィンドウを開くつど、artificius[.]com にある自らの Web サイトを開きます。図 10 は、被害者が Artificius Browser の URL バーに検索クエリーを入力したときのデフォルトの検索エンジンの例を示しています。
ApateWeb PUP のもうひとつの例である Go Blocker ブラウザー拡張機能はきわめて侵襲的な権限を取得します。これにはたとえば、ターゲットが閲覧する Web サイトへのアクセスを取得する、不要なリダイレクトを実行するなどが含まれます。
これらのプログラムは本質的には PUP で、それ自体は従来で言うところのマルウェアにはあたりません。ただし、これらは不正広告 (マルバタイジング) やリダイレクト、潜在的なスクリプト インジェクションといった方法を通じ、サイバー犯罪者に初期アクセスを提供可能です。そうした初期アクセスは、より深刻な、従来で言うところのマルウェア (ランサムウェアなど) にインターネット ユーザーをさらしかねません。
偽のアンチウイルス (AV) アラート
ApateWeb はこのほか、スケアウェアで偽のアンチウイルス アラートを配信し、被害者をだまして本物の AV ソフトウェアを購入させようとします。脅威アクターが悪意をもって正規製品のレピュテーションを悪用・転用するのは珍しいことではなく、悪用された正規製品側に必ずしもなにか問題や悪意があるということは意味しませんのでその点はご注意ください。
図 11 は、「デバイスが感染している」として閲覧者をだますスケアウェアのアラートを示しています。
このアラートは被害者を正規のアンチウイルス製品 Web サイトに転送します (図 12)。
このタイプのスケアウェアの最終リダイレクト URL には、affid のようなパラメーターが含まれています。このパラメーターは、ApateWeb がアフィリエイト プログラムを使ってこのアクティビティを収益化している可能性があることを示しています。
私たちの Advanced URL Filtering は、本稿で解説した悪意のあるコンテンツのサンプルをグレーウェアまたはフィッシングに分類します。通常、スケアウェア ページはフィッシングに分類され、PUP とアドウェアはグレーウェアに分類されます。
キャンペーンの拡散
ApateWeb は、ほかの Web サイトにスクリプトを読み込ませたり、詐欺メール経由でユーザーを騙し、URL をクリックさせたりすることで、自らのキャンペーンにトラフィックを呼び込みます。
Web サイトに埋め込んだリダイレクト用 JavaScript
ApateWeb の背後にいる脅威アクターは、悪意のある JavaScript コードを作成し、ほかの Web ページに埋め込むことで、キャンペーンにトラフィックを呼び込んでいました。典型的なスクリプトは、Web サイト上にオーバーレイを作成し、その Web ページをクリックした被害者を ApateWeb のエントリー ポイント URL に転送できるようにする、というものです。
ApateWeb の JavaScript は、第 1 階層で使っている攻撃者の配下にあるドメインにホストされています。埋め込まれた JavaScript の例を以下の図 13 に示します。
同様のスクリプトは、34,000 件以上の Web サイトに埋め込まれていることがわかりました。これらの Web サイトをランダムにサンプリングすると、そのほとんどが、大量のトラフィックを生成しうるアダルト コンテンツやストリーミング コンテンツを提供していることがわかります。
ApateWeb は、これらの Web サイトに料金を支払ってページ内にキャンペーンのリダイレクト スクリプトを埋め込んでもらい、そこからトラフィックを転送させている可能性がある、と私たちは考えています。このほか、これらのサイトは正規のもので、ApateWeb に侵害されて JavaScript コードを埋め込まれたのではないか、という可能性も考えられます。ただし、私たちはこれらの Web サイトが侵害されたという証拠は見つけていません。
詐欺メール
このほか、ApateWeb はターゲットにエントリー URL を拡散するのに電子メールも利用しています。こうした電子メールには被害者を騙すための件名が付けられていて、被害者にメッセージを開かせ、ApateWeb URL へのリンクをクリックさせやすいようにしてあります。
これらの電子メールの件名の例としては、次のようなものがあります。
- Your Ticket No. 10739979 payment is processed
- Shipment Update GS813211MC
- Did you send a cancellation letter to discard invoice no 60817749
- Dear User, You have no outstanding for order no 16405067
電子メールと Web トラフィックは ApateWeb が URL 拡散に使っている 2 つの方法の例ですが、このキャンペーンではほかの配布方法も使っている可能性があります。
結論
本調査では、私たちが ApateWeb と名付けた大規模キャンペーンのインフラを解剖しました。このキャンペーンでは、スケアウェア、PUP、そのほかの詐欺ページを含む、悪意のあるコンテンツが配布されていました。配布されたこれらのプログラムによって、サイバー犯罪者に初期アクセス取得のチャンスが生まれることから、被害者はより深刻なサイバー脅威にさらされかねません。
本稿では ApateWeb インフラのもつ複雑なリダイレクト システムを 3 つの階層に分けて解説しました。これらの階層では、最初のエントリー ポイントから最終的な悪性ペイロードの間に、一連の中間リダイレクトを生成します。
ApateWeb の第 1 階層はエントリー ポイントです。このエントリー ポイントでは、ワイルドカード DNS ドメインの大半を 10 個の IP アドレスにホストして使っています。この階層では、ボットやクローラーに無害なコンテンツを表示するなどの回避戦術を用いて検出を回避しています。この階層はまた、集中管理インフラを使って被害者をトラッキングし、そこからトラフィックを第 2 階層に転送します。
ApateWeb の第 2 階層は一連の中間リダイレクトを生成します。こうした中間リダイレクトには、アドウェア ドメインやアンチボット検証ページが含まれます。このキャンペーン最後の 第 3 階層は最終的な悪性ペイロードを配布します。これらのペイロードは、パブリック クラウド インフラや IPS、データセンター上にホストされています。
攻撃者らは、電子メールを使ってキャンペーンのエントリー ポイントとなる URL を拡散していたことが判明しています。このキャンペーンは 130,000 を超えるドメインをもつ広いネットワークを使い、これまでのところ 2022 年、2023 年、2024 年を通じ、依然アクティブなままです。数百もの Web サイトが依然として今年の Tranco による Web サイト アクセス ランキング リストの上位 100 万件に入っていることから、同キャンペーンによるインターネット ユーザーへの影響は大きなものとなりえます。
本稿をお読みの皆さまには、本稿を同キャンペーンの影響からの保護に役立ててていれば幸いです。Advanced URL Filtering や DNS Security などのサブスクリプションを有効にしたパロアルトネットワークスの次世代ファイアウォール製品をお使いのお客様は、本調査で解説したキャンペーンの既知の URL やホスト名に対する保護が強化されています。Cortex XDR は本稿で解説したアドウェアに「suspicious (疑わしい)」というフラグを立てます。
侵害の懸念があり弊社にインシデントレスポンスに関するご相談をなさりたい場合は、こちらのフォームからご連絡いただくか、infojapan@paloaltonetworks.comまでメールにてご連絡いただくか、下記の電話番号までお問い合わせください(ご相談は弊社製品のお客様には限定されません)。
- 北米フリーダイヤル: 866.486.4842 (866.4.UNIT42)
- EMEA: +31.20.299.3130
- APAC: +65.6983.8730
- 日本: (+81) 50-1790-0200
パロアルトネットワークスは、これらの調査結果を Cyber Threat Alliance (CTA: サイバー脅威アライアンス) のメンバーと共有しました。CTA のメンバーはこのインテリジェンスを使って、お客様に保護を迅速に提供し、悪意のあるサイバー攻撃者を体系的に阻害できます。詳細は Cyber Threat Alliance にてご確認ください。
IoC (侵害指標)
キャンペーンのエントリー ポイントのサンプル
- featuresscanner[.]com
被害者をトラッキングする集中管理インフラのドメイン パート
- professionalswebcheck[.]com
- hightrafficcounter[.]com
- proftrafficcounter[.]com
- experttrafficmonitor[.]com
キャンペーンのエントリーポイントをホストしている IP アドレス
- 192[.]243[.]59[.]20
- 192[.]243[.]59[.]13
- 192[.]243[.]59[.]12
- 192[.]243[.]61[.]227
- 192[.]243[.]61[.]225
- 173[.]233[.]139[.]164
- 173[.]233[.]137[.]60
- 173[.]233[.]137[.]52
- 173[.]233[.]137[.]44
- 173[.]233[.]137[.]36
アドウェアに転送されるトラフィック
- tracker-tds[.]info
- jpadsnow[.]com
- ad-blocking24[.]net
- Myqenad24[.]com
PUP のダウンロード サンプル:
- bd62d3808ef29c557da64b412c4422935a641c22e2bdcfe5128c96f2ff5b5e99
- artificius[.]com
そのほかのキャンペーン ドメイン:
- hoanoola[.]net
- allureoutlayterrific[.]com
謝辞
本稿執筆で支援していただいた Unit 42 チーム全員にお礼申し上げます。また、本稿について貴重な助言をくださった Bradley Duncan、Lysa Myers、Jun Javier Wang の各氏にはとくに厚くお礼を申し上げます。