ブラウザ通知機能悪用手口~知識の新陳代謝の必要性を改めて感じた出来事~ - ラック・セキュリティごった煮ブログ

ラック・セキュリティごった煮ブログ

セキュリティエンジニアがエンジニアの方に向けて、 セキュリティやIT技術に関する情報を発信していくアカウントです。

【お知らせ】2021年5月10日~リニューアルオープン!今後はこちらで新しい記事を公開します。

株式会社ラックのセキュリティエンジニアが、 エンジニアの方向けにセキュリティやIT技術に関する情報を発信するブログです。(編集:株式会社ラック・デジタルペンテスト部)
当ウェブサイトをご利用の際には、こちらの「サイトのご利用条件」をご確認ください。

デジタルペンテスト部提供サービス:ペネトレーションテスト

ブラウザ通知機能悪用手口~知識の新陳代謝の必要性を改めて感じた出来事~

デジタルペンテストサービス部のGoDaiです。

去年の事になりますが11月のある土曜日の夕方に突然知り合いの方から画面にウイルスに感染等のメッセージが表示されているので助けて欲しいと連絡がありました。

幸い次の予定まで時間があったので折り返し連絡をして症状についてヒアリングを試みました。しかし、パソコン操作や用語に慣れていない方で電話口でのヒアリングでは埒があかず直接訪問して対応する事となりました。

その際に表示されていた画面(当時の画面ではなく別のサイトにアクセスして取得したスクリーンショットです。)

f:id:lac_devblog:20220315161957p:plain

相談された方の横に座って確認したい箇所について口頭で指示するのですが、PC操作に慣れてない事もあり確認作業は遅々として進まず相談者がギブアップされ依頼され筆者自ら作業する事になりました。

(相談者の方に万が一の事が発生した際にも責任を問わない事をお約束頂きました。)

 

相談者に聞いたところ相談してきた際に発生した事象ではなく気が付いたら表示されていて何時、どのような事をして発生したのか不明でした。また本事象は継続的に発生しており一時的に表示されなくなるがしばらくすると表示されていたとの事でした。

筆者は表示されているメッセージからもターゲットにクリックを促しその先で本来の目的を遂げようとするタイプの事象でありスパム又は望ましくないソフトウェアの類であると推察し対応を開始しました。

既にネットワークからは切断していたため、先ずは以下の確認作業から始めました。

  1. タスクマネージャーで不審なプロセスが無いかの確認
  2. レジストリで起動時に登録されているプログラムの確認
  3. アプリケーション一覧でユーザが入れたソフトウェアの確認

念のために以下も実施しました。

  • インストールされているアンチウィルスソフトで全ドライブに対して検索(何か検知してくれれば僥倖)
  • キャッシュファイルの削除

 

ここから作業再開です。しかし確認作業を再開したのですがタスクマネージャーでプロセスを確認しても起動レジストリを確認しても明示的に本事象の原因と思われるプロセス、プログラム等を確認する事は出来ませんでした。自分の所有PCであれば色々と調査用ツールなど導入して調査する事も可能ですが自分所有のPCでは無いのでソフトウェアのインストールは出来ればしたくありませんでした。

 

ここで一旦作業を中止して休憩してから改めて事象の整理をしました。

  • メッセージが出てくるのはネットワークにつないで正常確認をしているタイミング
  • メッセージが出てきてネットワークを切断すると再度表示される事はない
  • ブラウザを立ち上げている場合にも表示されるがブラウザを立ち上げてなくても表示される
  • メッセージは数パターンある

 

そしてメッセージが表示された時に何枚かスクリーンショットを撮って詳細を観察しました。その際に表示されるメッセージにある共通点がある事に気が付きました。どのメッセージにも”Microsoft Edge”の表示が含まれていました。何気なくメッセージの信ぴょう性を高めるために”Microsoft Edge”の名称を使っている程度に思ってなかったのですが、共通して表示されている事からMicrosoft Edgeの設定をチェックしてみる事にしました。

そこで「設定」にある「Cookieとサイトのアクセス許可」の項目に気になる項目をみつけました。

「サイトのアクセス許可」にある「最近のアクティビティ」です。この相談者の項目に以下のようなURLがある事を確認しました。

f:id:lac_devblog:20220314113302p:plain

他の「サイトのアクセス許可」にあるURLに比べ安価に入手できるxyzドメインであったり、特定のオペレーションシステムを表す文字と"scan"の文字を組み合わせたドメインであるなどの不審な点がありました。

そこでこの不審な複数のURLの設定の通知を「許可」から「ブロック」に変更してみたところ通知が止まりました。これがこの迷惑な通知の原因だったようです。

相談者にかいつまんで原因を説明しオンラインの状態でもメッセージが表示されない事を確認頂き、再度表示されるような事があれば連絡をもらう事にしてその場を後にしました。

後日あの現象についてネットで調べたところ割と色々なサイトでも取り上げられておりIPAからも注意勧告が出ていました。

安心相談窓口だより:IPA 独立行政法人 情報処理推進機構

(引用元:IPA

相談され対応する前にスマホなどで調べて上記のサイトに辿り着けていればもう少し迅速に対応できたのではと思うと共に、昔に似たような症状を対応した事でその成功事例の知識のまま対応してしまった事で対応が長引いてしまった事などしばらく反省しきりでした。

 

今回ブログを書くことになり筆者の検証環境で現象を再現してスクリーンショットなど撮ろうとしていたのですが、相談者のPCに登録されていた「サイトのアクセス許可」のURLでは現象の再現は出来ませんでした。改めてネットやtwitterなどで調べて現在も稼働しているだろう怪しいサイトを探して再現する事は出来ました。

その際に分かったのはアクセスして「通知の許可」を実施したURLと、「サイトのアクセス許可」に登録されていたURLは「application server」になるので、「サイトのアクセス許可」に登録されていたURLはこの「application server」が登録されます。

登録されていた他のサービスを確認すると「apple.com」や「facebook.com」など有名なサイトでは通知の許可のURLと「サイトのアクセス許可」に登録されているURLは同一である事が確認できましたが、不審なURLの場合では「通知の許可」のURLと「サイトのアクセス許可」に登録されているURLは同一ではない事が確認できました。

これはスパムメッセージを送信するURLや登録を促すURLは対策されブロックされる事が前提として使い捨てされるようになっているため正常なサイトのように1対1ではなくn対nのような組み合わせになっているものと推測されます。

 

通知サービスの構成

f:id:lac_devblog:20220314113402p:plain

(画像引用元:https://w3c.github.io/push-api/#sequence-diagram

https://w3c.github.io/push-api/#sequence-diagram
Copyright © 2021 W3C® (MIT, ERCIM, Keio, Beihang).

Status of This Document:work in progress *1

また、プロセスや通信などについてもツールを使って確認してみましたが、プロセスに関してはOSとしての正式な仕組みを利用していため不審なプロセスは確認ができませんでした。ただし通信に関して確認したところ今回のURLでは上記で記載したように通知の登録を促すURLとメッセージを送信するURLは違っており通知の登録を促すURLからいくつかのサイトをリダイレクトしている事が確認できました。

 

今回の一連の出来事から脅威の知識は陳腐化するため最新の脅威動向などを取り入れ更新していく事の大事さと、自分の知識が限界だと思った時にはスマホなどでインターネットの先にある先駆者の知識や経験を頼る事も大事だと改めて認識させられたそんな一日でした。

 

------

※1

Status of This Document
This section describes the status of this document at the time of its publication. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at https://www.w3.org/TR/.

This document was published by the Web Applications Working Group as an Editor's Draft.
Publication as an Editor's Draft does not imply endorsement by W3C and its Members.
This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
This document was produced by a group operating under the W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
This document is governed by the 2 November 2021 W3C Process Document.