LoginSignup
4
3

ブラウザ通知スパムの背景とか、あまりよく分かっていなかったので、勉強のつもりで書いてみた。

ブラウザ通知スパムについて

インターネットを使って色んなサイトを巡っている時に、このようなものが表示されたことがないだろうか。
スクリーンショット 2024-01-23 21.58.13.png

ブラウザ通知の許可を求めてきて、許可を押すと、サポート詐欺サイトに誘導する通知が表示される。
・マカフィーを装ったサポート詐欺サイトへ誘導
sample01.png
スクリーンショット 2024-01-23 22.00.31.png

・マイクロソフトを装ったサポート詐欺サイトへ誘導
スクリーンショット 2024-01-27 18.28.44.png
スクリーンショット 2024-01-27 18.29.08.png

また、マカフィーの正規サイトに誘導して、商品を購入させようと誘導している例もある。
sample02.png
スクリーンショット 2024-01-23 22.24.51.png

このように、ブラウザの通知機能を悪用して、偽の広告や警告メッセージを表示し、詐欺に誘導する手口をブラウザ通知スパムという。

ブラウザ通知スパムサイトの例

スクリーンショット 2024-01-23 22.16.59.png
スクリーンショット 2024-01-23 21.58.13.png
スクリーンショット 2024-01-27 17.59.22.png
スクリーンショット 2024-01-23 22.10.07.png
スクリーンショット 2024-01-27 18.00.25.png
スクリーンショット 2024-01-27 18.04.51.png

なぜブラウザ通知スパムが存在するのか

主な理由は、以下の通り。
・アフィリエイトで収益を稼いでいる攻撃者が、クリック数を稼ぐため。
・他の攻撃者の悪性Webサイトにトラフィックを流すことで、手数料をもらうため。

ブラウザ通知スパムを使って、正規のセキュリティ製品の購入ページや詐欺サイトなどにアクセスさせることで、広告収入を得ているようです。

この記事では、以下の2つの事例を紹介する。
・Webサイトを改ざんして誘導する例
・誘導サイトからリダイレクトする例

Webサイトを改ざんして誘導する例

Webサイトにアクセスした際に、不正なスプリクトを読み込ませるように改ざんすることで、ブラウザ通知スパムに誘導させる。
WordPressなどのCMSの脆弱性をついて、不正なスプリクトを埋め込む例がよく観測されている。

ここでは、VexTrioという攻撃者のアフィリエイトネットワークの例を紹介する。

VexTrioは、大規模なトラフィック配信システム(TDS)を運営しており、他のサイトから流れてきたトラフィックをフィルタリングしたり、ロードバランサーとして機能したりしている。
改ざんしたサイトからのトラフィックを捌いて、詐欺サイトやマルウェア配布サイトなどの悪性Webサイトにリダイレクトさせることで、広告収入を得たり、他の攻撃者から手数料を得たりして稼いでいる。
その悪性Webサイトの中には、ブラウザ通知スパムも含まれている。

以下のサンプルにおいて、VexTrioが埋め込んだ不正スクリプトの一例は以下の画像のようになっている。

※難読化を解除したスクリプトは下の段に表示されている。
スクリーンショット 2024-01-27 22.55.21.png
VexTrioが使っているドメイン(logsmetrics[.]com)をGoogleのDNSサービスを使って名前解決しようとしていることがわかる。
※「host」は改ざんされたサイトのドメイン、「ip」はIPアドレスとなっている。
スクリーンショット 2024-01-27 23.17.41.png
そして、リダイレクト先として、lookup-domain[.]comが返ってきている。
スクリーンショット 2024-01-28 12.38.57.png

ブラウザ通知スパムを表示する際に読み込まれている二つのスクリプト(trls.js,static-pl.js)を見てみる。

また、ブラウザ通知スパムのURLパスの一例を記載する。

/eyes-robot/?pl=CHiI7Gh3GUyTa8XGgNqDyQ&sm=eyes-robot&click_id=cmq7r32jvq3d7n36pu3g&nrid=50b20c71cf714b378c0cbff479727c9d&hash=i7FeLA4ekC-brYGgnn43IQ&exp=1706327737

trls.jsは、アダルトコンテンツやブラウザ通知スパムを表示するのに使われており、表示させるコンテンツによって、スクリプトに書かれている内容が異なっている。
また、同じコンテンツでも、対応している言語が異なっているものも存在している。(おそらくバージョン違いだと思われる)
ブラウザ通知スパムを表示するものを見てみると、サイトを見てる人の言語に合わせて、コンテンツを翻訳しているように見えた。
スクリーンショット 2024-01-28 0.59.24.png
スクリーンショット 2024-01-28 1.00.16.png

static-pl.jsは、URLパスから値を取得し、リダイレクト先にあるスクリプト(ps.js)のURLを指定する。
スクリーンショット 2024-01-28 1.03.42.png
スクリーンショット 2024-01-28 1.04.27.png
スクリーンショット 2024-01-28 1.04.58.png
サンプルの例だと、以下のファイルが読み込まれている。
スクリーンショット 2024-01-28 1.11.57.png

ps.jsでは、コンテンツの生成を行なっているように見えた。
スクリーンショット 2024-01-28 1.23.59.png

ブラウザ通知スパムが表示されるまで、何回かリダイレクトする攻撃チェーンがあるので、中間のドメインでブロックすることが重要だと思われる。
スクリーンショット 2024-01-28 12.38.57.png

誘導サイトからリダイレクトする例

インターネット上には、ブラウザ通知スパムサイトに誘導するために作られたサイトが存在している。

ユーザの関心を引くように、様々なコンテンツの誘導サイトが存在しており、スクリプトを読み込ませて、ブラウザ通知スパムサイトに誘導することで、広告収入を得ようとしている。

誘導サイトのサンプルは以下のようになる。

サンプルを見ていくと、外部のスクリプト(invoke.js)が読み込まれていることがわかる。
スクリーンショット 2024-01-28 14.13.20.png
スクリーンショット 2024-01-28 14.11.04.png

中身を見ていくと、難読化されているため、読みにくくなっているが、ブラウザやOSの情報を取得している様子が見られる。
スクリーンショット 2024-01-28 14.27.27.png
スクリーンショット 2024-01-28 14.28.10.png
また、リダイレクト先のURLが書かれていた。
URLパスの部分は、広告の識別番号みたいになっていて、keyの値によっては、ブラウザ通信スパムにリダイレクトする。
スクリーンショット 2024-01-28 14.36.04.png

最後に

インターネット上の詐欺といえば、フィッシングサイトや偽ECサイトなどが話題になっていたりするが、ブラウザ通知スパムサイト、怪しいアダルトサイト、アンケート詐欺サイトなどの脅威も猛威を振るっている。
そして、それらのコンテンツの裏では、様々なアフィリエイトアクター達が、広告収入を得るために暗躍している。
こうした攻撃者のアフィリエイトネットワークにも気をつけていく必要がある。

関連記事

4
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
3