Advanced URL Filteringによるゼロ号患者Web脅威のリアルタイム検出

A conceptual image representing problems on the web, such as the patient zero web threats discussed here.

This post is also available in: English (英語)

概要

ブロックリストやデータベースを利用したURLフィルタリングソリューションではふつう、「ゼロ号患者のWeb脅威」、つまり初めて目にした悪意のあるURLを捕捉することはできません。その理由としては、このような分類は本質的に事後対応にならざるをえないこと(悪意のあるURLやドメイン、IPアドレスの特定は、少なくともまず1度確認されてから分析やブロック、許可の処理を行うことになる) のほかに、洗練されたアクターが使用するクローキング技術もあげられます。ワンタイムURL、短命ドメイン、ボット検知などの対策は、セキュリティクローラやスキャナへの回避として、マルウェアやフィッシングキャンペーンで広く利用されています。

弊社のインライン分析器と機械学習技術は、2021年の6月から9月にかけて、50万件以上のゼロ号患者URLと、約20万件の悪意のあるスキャンリクエストを検出し、ブロックしました。本稿では、そのデータセットでもっとも目立ったキャンペーンの例と、それらのキャンペーンで使用されていたステルス技術の種類について解説します。データセットからは、マルウェア配信、コマンド&コントロール(C2)のURL、フィッシングリンク、グレイウェアの詐欺などが観測されました。さらに、インラインで処理を行う利点を活かし、悪意のあるスキャンアクティビティや攻撃リクエストも検知することができました。

私たちは、1日に数千件のゼロ号患者URLを検出しています。Unit 42のリサーチャーは、検出したこれらのゼロ号患者URLの中に、従来の検出用クローラでは捕捉できないようなキャンペーンを複数発見しています。こうしたゼロ号患者URLでは、さまざまなクローキング技術(ブラウザバージョンのクローキング、CAPTCHA対策など)が使われています。さらに、正規のホスティングプラットフォームやファイル共有プラットフォームが悪用されていたり、最近侵害を受けたWebサイトの子URLも多く見受けられました。このようなケースでは、ルートドメインのレピュテーションスコアが良性であることが多く、ブロックリストでカバーすることは困難です。そのため、私たちのインライン分析器による初回検出から48時間が経過しても、VirusTotalのベンダにはこれらゼロ号患者検出の40%が捕捉されていない、というのはとくに驚きではないでしょう。こうしたことからも、インライン処理によるリアルタイム分析の利点は明らかといえるでしょう。

Advanced URL Filtering機能を備えたパロアルトネットワークスの次世代ファイアウォール製品をご利用のお客様は、本稿で解説したゼロ号患者のような悪質なキャンペーンから保護されています。本稿に記載したすべての悪意のある指標(ドメイン、IP、URL、ハッシュ)は、DNS SecurityおよびWildFire製品でもカバーされています。

ゼロ号患者のWeb脅威をどう検出するか

図1 従来型URLフィルタリングとAdvanced URL Filteringとの比較
図1 従来型URLフィルタリングとAdvanced URL Filteringとの比較

図1(a)は、従来型URLフィルタリングサービスの仕組みを示したものです。クライアントがあるURLにアクセスすると、ファイアウォールはそのリクエストをしばらくの間保持し、URLカテゴリデータベースに問い合わせて、許可するかブロックするかを決定します。リクエストがこのデータベース検索で合格すると、ファイアウォールはターゲットとなるホストサーバーからWebコンテンツを受信してクライアントに渡します。遅れて、オフラインのクローラが訪問したURLを分析のためにピックアップし、同じURLを再びクロールします。Webコンテンツをクロール分析し、そこでようやくURLカテゴリデータベースが更新されます。

この従来型URLフィルタリングプロセスにはよく知られている弱点があります。まず、従来型URLフィルタリングソリューションでは、保護対象の組織内で脅威が1度は確認されないと検知できません。つまり、その組織は最初の1回の攻撃にはさらされてしまうことになります。たしかに2回目以降保護されることは歓迎すべきですが、1回目の攻撃がきわめて危険な場合もあります。たとえば、ネットワークトラフィックに新たなURLが出現したものの、URLカテゴリデータベースではブロックされなかったとしましょう。たとえ図1(a)のmybank-account-ma234[.]comのようにひと目で疑わしいことがわかるURLであっても、ファイアウォール設定によっては、このトラフィックがファイアウォールを通過してしまい、組織は侵害されてしまう可能性があります。既存データベースに依存することの問題点は、ほかにもあります。たとえば、悪意のあるホストは、クローキングやCAPTCHAなどのテクニックを使い、オフラインのクローラを欺くことができます。オフラインクローラは、実際に訪問者が受け取る内容とはまったく異なるWebコンテンツを悪意のあるホストから受け取る場合があります。この方法なら、悪意のあるURLがオフラインクローラベースの検出を回避できます。

図1(b)のように、URLデータベースとリアルタイム検出器の両方を備えたシステムでは、データベースのみの場合の問題点に対応できます。組み込まれたインライン検出器が、脅威の初回出現時点での検出を可能にしてくれるからです。クライアントがあるURLにアクセスしようとしたとき、クラウドベースのシステムは、URLデータベースとリアルタイム検出器の両方をチェックしてから、トラフィックのファイアウォール通過を許可できます。リアルタイム検出器がリクエストにセキュリティ上の脅威が含まれていることを識別した場合、たとえそのURLがURLデータベースにとって未知ないし良性のものであっても、ブロックすることができます。たとえば、図1(b)では、URLカテゴリデータベースやブロックリストにない新たなURLがネットワーク上に現れていますが、インライン機械学習やパターンマッチング技術の力でリアルタイム分析器はこれを悪意のあるものとして検出し、ブロックすることができます。

一例をあげると、パロアルトネットワークス Advanced URL Filtering は、異なるタイプの脅威に対し、複数の機械学習モデルを採用しています。たとえば、2021年に開催された第4回Deep Learning and Security Workshop(第42回IEEE Symposium on Security and Privacyとの同時開催)で発表された弊社の研究論文「Innocent Until Proven Guilty (推定無罪)」では、Advanced URL Filteringに導入されている新基軸の深層学習パラダイムの1つを紹介しました。このフレームワークには、敵対的ノイズへの耐性や、データ分布シフトによる性能低下への耐性など、複数のメリットがあります。つまり、ノイズに強く、モデル化されたクラスを一意に識別できる特徴を発見することで、分布外コンテンツに対するモデルのロバストネス(頑健性)を向上させているのです。さらに、Advanced URL Filteringには、機械学習を用いた継続的なシグネチャマイニングプロセスによって生成された数百万のシグネチャに加え、Unit 42のリサーチャーが特定の悪質ないし疑わしいキャンペーンをカバーするために追加したシグネチャも組み込まれています。

悪意のあるクローキングキャンペーン

悪意のあるWebサイトは、セキュリティスキャナやクローラによる自動分析を回避するために、マルウェアやフィッシングコンテンツを人間以外の訪問者から隠し、被害者数を最大化するさまざまなテクニックを展開することがあります。たとえば、攻撃者は居住地のIPアドレス範囲をチェックしたり、特定のブラウザのバージョンをターゲットにしたり、さらにはユーザーが自動化されたボットではないことを確認するためにCAPTCHAチャレンジを表示したりします。このような技術は、一般に「クローキング」と呼ばれています。最近のいくつかの研究論文では、古典的なサーバーサイドクローキングにくわえ、フィッシングキャンペーンでのクライアントサイドクローキングの効果の高さが示されています。たとえば、そうしたキャンペーンでは、既知のクローラをフィンガープリントして回避したり(出典: "PhishPrint: Evading Phishing Detection Crawlers by Prior Profiling." Acharya et al. Usenix Security. 2021)、ページ上にさまざまな動的チェックを展開することがあります(出典: "CrawlPhish: Large-scale Analysis of Client-side Cloaking Techniques in Phishing." Penghui et al. IEEE Symposium on Security and Privacy. 2021)。

クローリングのこうした制限はインライン分析にはあてはまりません。インライン分析では元のコンテンツをリアルタイムで見ることができます。しかも、いずれのケースについても、元のURLは検査可能です。これは攻撃者が隠すことのできないものなので、ここから悪意のある兆候や既知のキャンペーンへのリンクなど、確信を持って検出するのに十分な情報が見つかることがあります。実際、静的URL解析を利用することで、ほかのクローラベースの分析器では検出できないクローキングを利用したさまざまな悪意のあるキャンペーンを追跡することができます。

本稿では、もっぱらモバイルブラウザをターゲットにする人気のあるクローキングのトレンドに着目しました(初出: "PhishFarm: A Scalable Framework for Measuring the Evasion Techniques Against Browser Phishing Blacklists." Oest et al. IEEE Symposium on Security and Privacy. 2019)。私たちは、この手法を用いる悪質なクローキングキャンペーンを特定するため、モバイルOSプラットフォームを模した有名なモバイル版Webブラウザを含む、さまざまなブラウザプロファイルを使い、日毎のURLフィードのごく一部を繰り返しクローリングしました。その後、デスクトップでクロールした場合は良性と判定され、モバイルブラウザでクロールした場合にのみ悪意のあるものとして検出されたURLを選択しました。6月から8月にかけて、この方法で15,948件の悪意のあるクローキングURLを確認しました。このうち、2,601件は弊社の静的URL解析(Advanced URL Filteringに導入されているものと同様のもの)では検出されましたが、それ以外はクローラでは検出されませんでした。言い換えれば、この16.3%という数字がURLのみによる検出器のクローキング検出効果の下限で、しかもこの数字は単一のクローキング手法しか使われていない場合の数字です。検出されたこれらの悪意のあるクローキングURLの中には、モバイルブラウザをエミュレートした場合にのみ、想定されたフィッシングコンテンツが実際に表示されるモバイル専用フィッシングページの例もあります。そのほかの注目すべきキャンペーンは以下の通りです。

多段フィッシングキャンペーン

まず、古典的なフィッシングキャンペーンに加えて、下図のように偽のCAPTCHAプロンプトの後ろに悪意のあるリンクを隠したPDFファイルを最初に提供する、人気のある多段フィッシングキャンペーンが確認されています。その後、このリンクはいくつかのリダイレクトを行い、さらにボット避けのチェックを行います。

図2 人気のある偽CAPTCHAのPDFフィッシングキャンペーンの例(aliceinformaticasrl[.]com/user/pages/20991962233.pdf)
図2 人気のある偽CAPTCHAのPDFフィッシングキャンペーンの例(aliceinformaticasrl[.]com/user/pages/20991962233.pdf)

マルウェア配布のクローキング

2つ目は、マルウェア配布のクローキングです。たとえば、悪意のあるAPKのダウンロードを配布するURLはふつう、AndroidのChromeのユーザーエージェントを持つブラウザでのみ動作します。その例 cq6ydl[.]qp8u[.]com/yx/22238.apkでは、SHA256: d3b0fbd6ff688034471e4400717742ffa21dcb1c909b0c1a1b2e82b34ae91d03のAndroid用アドウェアを提供していました。Android用Chromeのユーザーエージェントを使用していないブラウザでアクセスした場合、ダウンロードは機能しない場合があります。

さらには、モバイルユーザーをターゲットにするのではなく、弊社セキュリティクローラが使用するデフォルトブラウザに対してクローキングを行うマルウェア配信URLも確認されています。たとえば、以下のキャンペーンがそれにあたります。

  • 178stu[.]com/new2_r_login.exe?collcc=739845076&collcc=3630194067&
  • 25697[.]xc[.]wenpie[.]com/down/matlab%202017a%20???????????????@1166_3054.exe
  • xz[.]duote[.]com[.]cn/softdown/minjiehf@_29773.exe
  • down2[.]abckantu[.]com/tui/tips/2/v1.2.0.17/tips2-4.exe
  • govole[.]info/d23c1cda8c7736f9842243148d5eaf5b/getfp.exe
  • 48995[.]xz[.]dy008[.]com/acdiu/setup_2000.exe
  • 48156[.]xc[.]zhongguohao123[.]com/down/%E6%B8%85%E5%8D%8E%E5%A4%A9%E6%B2%B3pccad2015%2064%E4%BD%8D%E7%A0%B4%E8%A7%A3%E7%89%88@1166_9653.exe
  • 72jdxe[.]securedfile[.]ru/b2/3/7/888e525e633be262a4412eff50518a2f/SpywareTerminatorSetup.exe
  • 24910[.]xc[.]wenpie[.]com/down/cfree@1577_2873.exe
  • 48272[.]xz[.]dy008[.]com/czasd/Setup_2000.exe

このほかにも、悪意のあるVBScriptマルウェア(Internet Explorerブラウザが対象)をインジェクトし、WScriptシェル上でコマンドを実行しようとするキャンペーン(図3)では、サーバーサイドの技術を用いて弊社のクローラに対してクローキングを試みていたことが確認されました。

図3 悪意のあるVBScriptがhttp://www[.]bjcslper[.]com/info/js/js/js/css/js/js/js/js/js/css/js/js/css/js/js/css/js/js/css/js/js/css/js/js/js/js/js/js/css/js/css/js/js/css/js/js/css/css/js/js/js/js/js/js/css/js/js/js/css/style.cssにインジェクトされている
図3 悪意のあるVBScriptがhttp://www[.]bjcslper[.]com/info/js/js/js/css/js/js/js/js/js/css/js/js/css/js/js/css/js/js/css/js/js/css/js/js/js/js/js/js/css/js/css/js/js/css/js/js/css/css/js/js/js/js/js/js/css/js/js/js/css/style.cssにインジェクトされている

マルバタイジングURL

3つ目はクローキングがマルバタイジングで広く使われていることです。通常、モバイルブラウザでクロールした場合、悪意のあるランディングページにリダイレクトされる可能性は高まります。しかもそのURLには、何度も訪問させられる可能性があります。以下に示したその手のURLはやや複雑で、フィンガープリント可能な構造やパターンを持っていることから、インラインでの検出に役立ちます。

  • hxxp://best-targeted-traffic[.]com/install.php?pais=Unknown&unq=19o721145058oildxbc&version=1.7
  • click[.]imageperfect[.]in/lp/lp.php?urlid=2bccd82ee1&adst=152313&nsrc=5090&visitor_id=bmconv_20210809015727_8eea308d_b7d0_4637_9aa6_214ef468fbb9&siteid=2_to

ゼロ号患者のWeb脅威とは

静的URL検出でクローキングキャンペーンのカバー率が広がることを考えれば、悪意のあるWebページのクローキングが、弊社のAdvanced URL Filteringにより初めてリアルタイムで検出された例があることにとくに驚きはないでしょう。たとえば、URL coursera-quiz-answers-quora.pageinternetinfo[.]pwは、2021年6月19日にドメイン登録され、2021年7月18日 16:49:51.414 UTCに弊社顧客のトラフィックにて初めてインライン検出され、ブロックされました。VirusTotalによるこのURLの初回スキャンは、2021年7月22日 22:28:45 UTCに行われていましたが、私たちが再分析をリクエストした2021年8月19日04:10:43 UTCの時点では(図5参照)、VirusTotalのどのベンダもこのURLを検出していませんでした。このドメインは、CAPTCHAのようなクローキング技術を用いてから、図4に示すようなフィッシングやグレイウェアのWebサイト(迷惑なブラウザ拡張機能を配布するWebサイトなど)にユーザーをリダイレクトします。VirusTotalで検出されなかったのは、このクローキング技術のせいかもしれません。

図4 悪意のあるURL coursera-quiz-answers-quora.pageinternetinfo[.]pwからリダイレクトされた後のCAPTCHAで保護されたページ

図4 悪意のあるURL coursera-quiz-answers-quora.pageinternetinfo[.]pwからリダイレクトされた後のCAPTCHAで保護されたページ
図4 悪意のあるURL coursera-quiz-answers-quora.pageinternetinfo[.]pwからリダイレクトされた後のCAPTCHAで保護されたページ
図5 2021年8月19日時点でのVirusTotalによるURL coursera-quiz-answers-quora.pageinternetinfo[.]pwのスキャン結果
図5 2021年8月19日時点でのVirusTotalによるURL coursera-quiz-answers-quora.pageinternetinfo[.]pwのスキャン結果

ランサムウェアのゼロ号患者

ランサムウェアは今日のサイバーセキュリティにおける最大の脅威の1つで、Unit 42でも長年ランサムウェアの脅威を追跡しています。弊社が先日公開した2021年のランサムウェアファミリでよく観測された行動に関する調査によれば、ランサムウェア配布方法で2番目に多いのがWeb閲覧となっています。

私たちの技術のランサムウェアに対するゼロ号患者予防効果を評価するため、2021年1月から2021年8月までにランサムウェア配布が観測されたすべてのURLに対し、Advanced URL Filteringのリアルタイム分析器をテストしました。その結果、Advanced URL Filteringのリアルタイム分析器は、これらのランサムウェアのURLの29.18%をブロックすることができることがわかりました。これらのURLは、私たちが同期間中に収集したランサムウェアのサンプルの29.6%を占めます。

なお、今回のテストで使用したサンプルの多くは、すでにデータベースでカバーされているものです。今回のテストの意義は、データベースからみてゼロ号患者にあたる初見のWeb脅威についても、このリアルタイム分析器が私たちのテストしたランサムウェア配布URLのほぼ3分の1をブロックできることを実証した点にあります。

以下の図6は、弊社のリアルタイム分析器で捕捉できたランサムウェアファミリの内訳です。こちらの先行調査からもわかる通り、これらランサムウェア亜種は非常に多様ですが、リアルタイム検出器では、そうした多種多様なランサムウェアも補足できています。

図6 Advanced URL Filteringで検出されたランサムウェア亜種の内訳
図6 Advanced URL Filteringで検出されたランサムウェア亜種の内訳

また私たちは、Advanced URL Filteringに搭載されているリアルタイム検出器が、異なるランサムウェアの亜種をどの程度ブロックできるかについても測定しました。下の図が示すように、リアルタイム検出器はTorrentLockerとXoristに対しては非常に優れた性能を発揮していますが、人気の高いVirLockの亜種やそのほかの小規模なランサムウェアファミリに対してはさらなる改善が必要でしょう。

図7 異なるランサムウェアの亜種に対するリアルタイム検出器の検出カバー率
図7 異なるランサムウェアの亜種に対するリアルタイム検出器の検出カバー率

侵害されたWebサイトと悪用されたWebサイト

侵害や悪用の対象となるWebサイト(Webやファイルのホスティングサービスなど)は、人気Webサイトであることも多く、そのぶん攻撃者は多数の被害者にリーチしやすくなっています。従来型URLフィルタリングデータベースの場合、こうした人気Webサイトが侵害ないし悪用されてもブロックできないことが少なくありません。というのも、そのWebサイトは正規のコンテンツと悪意のあるコンテンツの両方をホストしている可能性があり、悪意のあるコンテンツのURLはつぎつぎ変更されるためです。

この点にはゼロ号患者のWeb脅威に対するインライン検出を追加することで対処できます。とくに、Webやファイルのホスティングサービスを悪用して生成されている、次々に変化していくような悪質な子URLから保護することができます。たとえば、Advanced URL Filteringでは、この技術を用いて、毎日平均して100件以上の侵害されたWebサイトや悪用されたWebサイトを検出しています。以下は、000webhostとDiscordのURLを悪用している2つの例です。

000webhostの悪用

000webhost(000webhostapp.com)は、もっとも人気のあるWebホスティングサービスの1つですが、マルウェアやフィッシングのホストとしても悪用されてきました。次の例は、このサービスでホストされているマルウェアの1つです。このサービスでホストされている悪意のあるWebサイトは非常に短命の傾向があります。

  • http[:]//udskhhkdsjdjskjdds[.]000webhostapp[.]com/nnv.exe
    • ダウンロードしたサンプルのSHA256: 335cf91959d1dcb04c2e68431300d06a62035e31daba1d19dbfcca0aa398bda2
図7 マルウェア(例: nnv[.]exe)をホストしており、インデックスWebページが設定されていないURL http[:]//udskhhkdsjdjskjdds[.]000webhostapp[.]comのスクリーンショット
図7 マルウェア(例: nnv[.]exe)をホストしており、インデックスWebページが設定されていないURL http[:]//udskhhkdsjdjskjdds[.]000webhostapp[.]comのスクリーンショット

Discordの悪用

Discord (discordapp.com)は、コミュニティづくりを意図してデザインされたVoIP、インスタントメッセージング、デジタル配信プラットフォームです。Discordのコンテンツデリバリーネットワーク(cdn.discordapp.com)は、Discordが画像そのほかのファイルをホストしている場所ですが、ここがマルウェアの保存に悪用されることがあります。次の図は、このサービスに格納されている2つのマルウェア(Setup2.exeSNitro_Gen.exeを示したものです。Googleのクラウドストレージの権限変更により、一部のマルウェアサンプルにはすでにアクセスできなくなっていることが確認されています。

図8 discordapp[.]comからダウンロードされた2つのマルウェア(図のブラウザ下部のダウンロードバー参照)。マルウェアサンプルの1つは、権限変更によりすでにアクセスできなくなっている(XMLエラー)
図8 discordapp[.]comからダウンロードされた2つのマルウェア(図のブラウザ下部のダウンロードバー参照)。マルウェアサンプルの1つは、権限変更によりすでにアクセスできなくなっている(XMLエラー)
  • https[:]//cdn[.]discordapp[.]com/attachments/873992598220599389/873994139908313148/Setup2.exe
    • ダウンロードしたサンプルのSHA256: 0984c3c6a8ab0a4e8f4564ebcd54ab74ae2d22230afafe48b346485251f522e2
  • https[:]//cdn[.]discordapp[.]com/attachments/831792884545093653/834461595358199908/Nitro_Gen.exe
    • ダウンロードしたサンプルのSHA256: f5b7b51ef8f1d1e76c86bd1e78d99c439c6e65361d4560b2c9e7345cebffdcca

コマンド&コントロール(C2)のURL

リアルタイム検出器は、さまざまなC2ファミリの特定のパターンやシグネチャを認識することで、C2のURLを捕捉することもできます。従来、リサーチャーは悪意のあるファイルを分析してC2の指標(IoC)を収集した後、それらをURLフィルタリングデータベースに公開していました。ただしこの方法はリアルタイム検出器に応用することもできます。たとえば、WildFireの膨大な悪意のあるファイルのデータベースを使い、Unit 42のリサーチャーが悪意のあるファイルの振る舞いのパターンやシグネチャを掘り出し、それらをAdvanced URL Filteringに応用することができます。そうすることでAdvanced URL Filteringは、すでに観測されてWildFireに追加されている内容と類似する新たなC2のURLを捕捉できるようになります。8月の1ヶ月で、Advanced URL Filteringは、1,685件の初見のC2通信をリアルタイムで検出・ブロックしました。以下はその一例です。

C2/Sality-Aは、Salityマルウェアファミリのメンバーが使用するC2サーバに関連した脅威名です。以下はC2/Sality-Aの検出例です。

  • www[.]eri[.]edu[.]pk/images/logo.gif?213c963=209107026
  • st1[.]dist[.]su[.]lt/logoh.gif?397ab36=301357070
  • motherengineering[.]com/images/logo.gif%3f345a38=24016776
  • cart133[.]org/images/main.gif?1f3bc6f=163753515
  • cacs[.]org[.]br/novosite/logos.gif?5f4e290=499674320
  • web4m[.]de/wordpress/wp-content/themes/twentyfourteen/image.gif?2df1b=1505496

トロイの木馬Ursnifは、被害者のシステムアクティビティを収集し、キーストロークを記録し、ネットワークトラフィックやブラウザのアクティビティを追跡することができます。このマルウェアは、データをアーカイブに保存し、C2サーバに送信します。以下はそのUrsnifの検出例です。

  • 13[.]59[.]135[.]197/wp-includes/fqhw5-6k88r-dgufy.view/
  • 35[.]233[.]127[.]71/zjed1-iae7t-kdzwv.view/
  • 114[.]116[.]171[.]195/wp-includes/h5zf-65kb9-btmdu.view/
  • 119[.]9[.]136[.]146/ctkfp-ebmhpu-vifzs.view/
  • 13[.]127[.]110[.]92/wcs3-94yxcd-vpne.view/
  • 128[.]199[.]72[.]218[:]4700/wp-content/uploads/b4t7-uqcaw8-bvfis.view/

悪質な新規登録ドメイン

新規に登録されたドメインはよくフィッシングサイトやマルウェアのホスティングに利用されます。攻撃者は、新しいドメイン上で、いつでも好きな時に、時には遅れて悪意のあるコンテンツをホストすることができます。こうしたドメインでは、従来型URLフィルタリングが良性ないし未知のフラグを立ててしまった後から悪用が始まる可能性があります。ただし、新規に登録されたドメインが初めて悪意のあるコンテンツをホストし始めてファイアウォールに現れたとき、URLに基づいて検出することは可能です。たとえば、7月中旬から8月中旬にかけて、Advanced URL Filteringは、新規登録されたドメインを使用した3,594のセッションを検出し、ブロックすることに成功しました。

さらなるフィッシングキャンペーン

フィッシングは、一見正規のものに見えるリンクをユーザーがクリックするようにしむけ、偽Webページに誘導して認証情報を盗む攻撃です。攻撃者は通常、カモフラージュ技術を使ってフィッシングURLを正規のものに見せかけます。たとえば、攻撃者はURLにスクワッティングドメインを表示することで、ユーザーを騙してクリックさせることがあります。ただしこれは深層学習モデルが補足・分析できる意味論上の情報をも公開してしまっています。

たとえば、Advanced URL Filteringは、何億もの悪意のあるURLと良性のURLを使って学習した複数の機械学習モデルを搭載しており、フィッシングキャンペーンによく関連するような悪意のあるURLを検出します。以下は、私たちが最近検知したフィッシング攻撃の例です。

このURL hxxp[:]//securty-supporrt[.]sun2seauvprotection[.]com[.]au/customer_center/customer-IDPP00C793/myaccount/signin/ は、下図のようなPayPalユーザーを狙ったフィッシングサイトです。このドメイン自体は何年も前から登録されていて、正規のWebサイトを指していることから、侵害されたものである可能性が高いと考えられます。

図10 フィッシングURLのスクリーンショット http[:]//securty-supporrt[.]sun2seauvprotection[.]com[.]au/customer_center/customer-IDPP00C793/myaccount/signin/
図9 フィッシングURLのスクリーンショット http[:]//securty-supporrt[.]sun2seauvprotection[.]com[.]au/customer_center/customer-IDPP00C793/myaccount/signin/

スキャンを行うURLの検出

URL内に見られる攻撃パターンやスキャンパターンを検出することも重要です。ほかのWeb上の脅威とは異なり、Webトラフィックに含まれるURLをスキャンしたり攻撃したりしている場合それは通常、不正プロセスを実行しているクライアントが存在しており、それが正規Webサーバーを探査ないし侵害している、ということを意味しています。とくにその場合は、ほかのサーバーへの拡散を図るマルウェアにあるホストが感染している兆候とも考えられます。

従来型ブロックリストベースURLフィルタリングプラットフォームでは、スキャンや攻撃を行うトラフィックをフィルタリングすることができません。これは、攻撃者のターゲットURLが頻繁に変更されるためです。その攻撃は、遠隔地にあるサーバーの脆弱性を探し出してそれを利用しようとするものです。また、リモートサーバーは、侵害を受けるまでは正規のものなので、先にブロックリストに追加しておくこともできません。

ここでリアルタイム検出器は形勢を変えてくれます。リアルタイム検出器はスキャントラフィックや攻撃トラフィックをインラインでブロックできるので、ブロックリストに正当なターゲットURLを追加する必要はありません。たとえば公開後の3ヶ月間(6月~8月)で、Advanced URL Filteringは悪意のあるスキャンアクティビティやプローブアクティビティを複数捕捉し、ブロックしています。以下はその一例です。

LokiBotのスキャンアクティビティ:

  • 192.xx.xxx.xxx/sqladmin/fre.php
  • 192.xx.xxx.xxx/axis2/axis2-admin/fre.php
  • 192.xx.xxx.xxx/websql/fre.php
  • 192.xx.xxx.xxx/phppma/fre.php192.xx.xxx.xxx/mysql/dbadmin/fre.php

Ursnifのスキャンアクティビティ:

  • 192.xxx.xx.xx/index.php/Index/images/images/calendar/images/css/css/css/js/css/js/images/user.gif
  • 192.xxx.xx.xx/index.php/Index/images/images/calendar/images/css/css/css/js/css/js/images/logo.gif
  • 192.xxx.xx.xx/index.php/index/css/images/calendar/js/css/js/js/js/js/js/images/key.gif
  • 192.xxx.xx.xx/index.php/index/css/images/calendar/js/css/js/js/js/js/js/images/user.gif

パストラバーサル:

  • 192.xx.xxx.xx/..../..../..../..../..../..../..../..../..../windows/win.ini
  • 159.xxx.x.xx/iisadmpwd/..\..\..\..\..\../winnt/system32/cmd.exe?/c%2Bdir%2Bc:
  • 212.xxx.xxx.xx/pbserver/..\..\..\..\..\../winnt/system32/cmd.exe?/c%2Bdir%2Bc:/%2B/OG
  • owner-experience.com/httpInboundTracking/modules/profile/user.php?aXconf%5Bdefault_language%5D=../../../../../../../../../../../../../../../../../../etc/passwd
  • 212.xxx.xxx.xx/php.exe?c:\boot.ini

結論

URLフィルタリングをより効果的に行うためには、データベースを使って既知の脅威を収集する従来型アプローチからさらに踏み込んだ対策が必要です。本稿では、悪意のあるURLのフィルタリング用データベースとリアルタイム検出機能を組み合わせることで、ゼロ号患者の脅威を捕捉・防止する方法について解説しました。

また、Advanced URL Filteringの検出例についても取り上げました。機械学習とUnit 42のリサーチャーによる調査結果を活用したAdvanced URL Filteringのインライン分析器は、公開以降数十万件のゼロ号患者URLを検出し、ブロックしてきました。

このほか、ランサムウェア、フィッシング、C2など、従来のURLフィルタリングのアプローチではすり抜けやすいキャンペーンを、リアルタイム分析器が補足した例をいくつか取り上げました。キャンペーンによっては、オフラインクローラに検出されないよう、クローキングをはじめとするさまざまな回避技術を利用していますし、URLブロックリストへの登録を回避するために人気Webホスティングサービスや新規登録ドメイン上で悪意のあるコンテンツがホストされる場合もあります。さらに本稿では、リアルタイム分析によるスキャンアクティビティ遮断の重要性についても解説しました。

Advanced URL Filtering機能を備えたパロアルトネットワークスの次世代ファイアウォール製品をご利用のお客様は、本稿で解説したゼロ号患者のような悪質なキャンペーンから保護されています。本稿に記載したすべての悪意のある指標(ドメイン、IP、URL、ハッシュ)は、DNS SecurityおよびWildFire製品でもカバーされています。

謝辞

本稿について貴重なご意見をいただいたJun Javier Wang氏、Kelvin Kwan氏、Erica Naone氏、Laura Novak氏にお礼申し上げます。ありがとうございました。

IoC

疑わしいURL、フィッシングURL、クローキングで隠されたマルウェアの指標、侵害または悪用されたwebサイト、C2/Sality-A、Ursnifトロイの木馬についてのIoC(侵害指標)は、こちらの GitHub リポジトリからご確認ください。

更新履歴

  • 2021-12-13 09:45 JST『悪質な新規登録ドメイン』の内容を英語版に即して更新