マルウェア

インターネット脅威の最新動向: フィッシング攻撃で偽装されやすいセクター、Webスキマーの事例分析 他

Clock Icon 3 min read

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

概要

2022年7月から12月にかけ、Unit 42のリサーチャーは6,700万件以上のユニークな悪性のURL、ドメイン、IPアドレスを観測・分析してきました。私たちはこれをもとに関連する悪意のあるネットワーク トラフィックをブロックしています。本稿は、悪性URL、ドメイン、IPアドレスの検出結果から、2022年下半期に観測された動向を取り上げます。

本稿では得られたインターネット上の脅威動向について以下の分析結果と知見を共有します。

  • インターネット上の脅威を取り巻く状況についての見解
    • 悪性URLの分布、ジオロケーション(地理的分布)、カテゴリー分析、観測されマルウェア攻撃試行を解説する統計情報
  • とくに注目すべき興味深いインターネット上の脅威
    • フィッシング ページで偽装されやすいセクター(業種)、ダウンロードされたマルウェアの統計、インジェクトされたJavaScript (JS)マルウェアの分析、悪性DNSの分析
  • Tranco Top 100 Millionにランクインしたサイトに感染した典型的Webスキマーのケース スタディ

パロアルトネットワークスのお客様は、Advanced URL Filtering、DNS Security、Advanced Threat Preventionなどのクラウド配信型セキュリティサブスクリプションにより、本稿で取り上げるWebおよびDNSの脅威からの保護を受けています。

関連するUnit 42のトピック Web threats, Phishing, Cryptomining

インターネット上の脅威を取り巻く状況

私たちは2022年下半期に2022年上半期と比べて52%以上の増加となる6,700万件以上の悪性ドメインとURLを収集しました。これら悪性ドメインやURLは被害者に広く影響をおよぼします。一部の悪性URLへのHTTPリクエストは毎日1,200万回以上、同じくドメインへのDNSリクエストは毎日6,000万回以上観測されました。これらの悪性URLはサードパーティ フィードと弊社社内のアナライザーから収集したもので、アナライザーにはまざまな種類があります。たとえば、Webクローラー、マルウェア トラフィック アナライザー、ディープ ラーニング モデルなどです。

例として、悪性JavaScriptサンプルをより詳しく見てみましょう。2022年下半期には、480万件の悪性URLと160万台のホスト名で提供されている、400万件以上の悪性JavaScriptサンプルが検出されました。上半期と比べ、悪性JavaScriptを含むURLの総数は99.3%増加しました。

画像1は2022年上半期と下半期に悪性Javascriptを提供していた一意なホスト名数と一意なURL数を表したグラフです。縦軸の単位は百万件です。2022年の上半期と比べ、下半期は一意なURL数が非常に多くなっています。一意なホスト名は下半期に若干増えていますが、一意なURLと比べると、上半期・下半期での測定値にはあまり変化が見られません。
図1. 悪性JavaScriptをホストしていたURL数とホスト名数を2022年の上半期と下半期で比較

悪性URLとドメインの分布

図2は、四半期ごとに新たに観測された悪性URL数を示したものです。2022年上半期と比べ、下半期は悪性URL数が52%増加しています。グレイウェアとコマンド&コントロール(C2)のカテゴリーについては、第4四半期に観測されたURL数が減少していました。ただし、上半期と下半期で分けると、下半期は上半期との比較でグレイウェアが80%増、C2が165%増となっています。

画像2は、2022年の第1四半期から第4四半期までに新たに観測された、悪性URL数を対数スケールで示したグラフです。このグラフは、マルウェア、フィッシング、グレイウェア、コマンド&コントロール(C2)のカテゴリー別に表されています。一番数が多いのがマルウェアで一番数が少ないのがC2です。
図2. 2022年第1四半期から第4四半期までに新たに観測された悪性URL数 (対数スケール)

図3は2022年7月〜12月に観測された新たな悪性ドメイン数です。グレイウェア カテゴリーとC2カテゴリーの月別の数値は、ある一連の特定攻撃キャンペーンとの関わりを主な理由として、検出数の分布が他のカテゴリーと比べて均等ではありません。

たとえばグレイウェア カテゴリーのURLの主なソースの1つは、同一キャンペーンに属する悪性ドメインのクラスターをそれらの登録時点で検出したものです。この検出ロジックの詳細は「DNS Securityで悪性ドメインをプロアクティブに検出・防止する」で解説しています。

画像3は2022年7月から12月に観測した悪性ドメイン数を示したグラフです。図2同様、一番数が多いのがマルウェアで一番数が少ないのがC2です。
図3. 2022年7月~12月に観測された悪性ドメイン数

悪性URLのジオロケーション分析

パッシブDNSデータと、IPアドレスを場所に変換するデータベースを参照することで、悪性URLをホストしているドメインが指しているIPアドレスがどこの場所にあるかを取得できます。以下の図4と図5は、グローバルで悪性URLをホストしているドメインの地理的分布を示したものです。

分布を表すヒートマップ
図4. 2022年7月~12月に悪性URLをホストしていたドメイン(単位:百万)のジオロケーション分布

悪性Webサイトをホストしている国や地域は150カ国以上ありますが、全体の85%以上は上位8カ国でホストされています(図5)。

2022年第1四半期2022年第2四半期での観測同様、悪性URL・ドメインの大部分は、引き続き米国でホストされています。2022年下半期はこれにブラジル、中国が続きました。

画像5は2022年7月から12月にかけてホストされた悪性URLの上位8カ国を円グラフにしたものです。もっとも多いのは米国の51.8%で、次いでブラジル、中国、ドイツの順となっています。
図5. 2022年7月~12月に悪性URLをホストしていた上位8カ国

カテゴリー分析

私たちはまた、収集した悪性URLやドメインについて、オリジナル コンテンツのカテゴリー分布分析も行いました。これはつまり、「悪意をもった利用が始まる以前」、「悪性であることの検知が行われる以前」に、「そのURLやドメインはもともとどのような意図をもっているのか」を判定した、ということです。この分析は、これらサイバー攻撃に共通するターゲットや、どのようにして被害者を騙そうとしているのかの確認を目的としています。

図6はAdvanced URL Filteringにおける悪性URLのオリジナル コンテンツのカテゴリー分布を示したものです。「Insufficient Content (コンテンツ不足)」、「Newly Registered Domain (新規登録ドメイン)」というオリジナル コンテンツ カテゴリーを持つURLが悪性URLの30%以上を占めていましたが、これに意外性はありません。十分なコンテンツをホストしておらずURLが分類できない場合は「Insufficient Content」という分類になります。攻撃者がドメインを登録後、悪質な目的でURLにコンテンツをホストしはじめる前はこの2つのカテゴリーに分類される可能性が高いことから、この結果は理にかなうものです。

画像6は2022年7月から12月にかけて悪性と判定される前のURLのカテゴリーを円グラフにしたものです。もっとも多いのは「Others (その他)」で28.5%、次いで「Insufficient Content (コンテンツ不足)」で23.6%、そして「Newly Registered Domain (新規登録ドメイン)」で17.1%の順となっています。第4位は「コンピューター/インターネット」で12.2%でした。
図6. 2022年7月~12月に確認された、悪性判定される前のURLのカテゴリー

悪性URL・ドメインによる影響

私たちが検出・収集した悪性ドメイン・URLのなかには、すでに名前解決されなくなったものや、被害者からのアクセスがなかったものもあります。脅威アクターが意図的にこれらを短命化させる場合があること、ほかのセキュリティ製品でブロックされる場合があることがその理由です。以下の図7、図8は、2022年10月から2022年12月の3ヶ月間にアクセスないし名前解決されたURL数・ドメイン数を示しています。

「一意なドメイン」と「一意なURL」は、一度でもアクセスされたことのある悪性ドメイン数やURL数を表しています。また「セッション数」は、これらのブロックされた悪性ドメインやURLに対するDNSクエリー数やHTTPセッション数を表しています。

これらの統計は、全悪性URL・ドメインによる影響を表しています。この数字は、弊社ファイアウォール、Advanced URL Filtering、DNSクラウドをあわせた検索結果をもとに算出しています。ファイアウォールではキャッシュが行われていることから、絶対数はさらに多い可能性があります。なお、これらすべてのドメインとURLは、パロアルトネットワークス製品をお使いのお客様がアクセスした場合はブロックされていていました。

以下の図7は「1回以上アクセスされたことのある悪性URLの数」と「それら悪性URLに対する全アクセス回数」を表したものです。2022年の10月から12月には、1回以上アクセスされたことのある悪性URL数は毎月8.7%増加していました。また、それらの悪性URLに被害者がアクセスした回数の合計は、毎月11.5%増加していました。

画像7は2022年10月から12月までの悪性HTTP/HTTPSのURLセッション数を示したグラフです。一意なURL数と、それらURLへの総セッション数の月ごとの増減を示しています。もっともセッション数が多いのは2022年12月の4億700万回です。
図7 2022年10月〜12月の悪性HTTP/HTTPのURLセッション数

図8は「1回以上名前解決された悪性ドメインの数」と「それらの悪性ドメインが合計で何回名前解決されたか」を示したグラフです。2022年10月から12月にかけて、1回以上名前解決された悪性ドメインが毎月4.5%増加していたことが確認されました。また、それらの悪性ドメインを名前解決した回数の合計は、毎月4.4%増加していました。

平均では、各悪性URLには10回のアクセスがあり、各ドメインは28回名前解決されていました。あるドメインが名前解決される回数は、潜在的被害者があるURLにアクセスする回数よりも多くなると予測されます。ある攻撃者が、同一のドメインを使いつつ、ターゲットごとに異なるURLパラメーターを用意して攻撃キャンペーンを行っていたことはその要因かもしれません。

画像8は2022年10月から12月までの悪性DNSセッションを表したグラフです。一意なドメインへのDNSクエリー数は毎月数千万件、DNSクエリーのセッション数の合計は毎月数十億件となっています。
図8. 2022年10月~12月の悪性DNSセッション

インターネット上の脅威の注目ポイント

フィッシング攻撃

下の図9は、フィッシング攻撃で偽装に使われたセクターの四半期ごと(第2四半期から第4四半期)の変化を示したものです。概してこれら全期間で以下の種類のサイトがもっとも偽装被害を受けていました。

  • オンライン ドキュメント、ストレージ
  • インターネット ポータル サイト、Webメール
  • 金融サービス サイト

第2四半期と比べて第3四半期と第4四半期はオンライン ドキュメントやストレージのプラットフォームを装ったフィッシング攻撃が増加し、27.8%から38.1%以上となりました。同じ期間、偽のオンライン ショッピング サイト、マーケットプレイス サイトもフィッシング キャンペーンの発信で人気を集めました。

画像9は2022年の第2四半期から第4四半期にかけて、偽装対象となったセクターごとに、フィッシングの分布の変化を示したものです。もっとも偽装被害を受けたセクターはオンライン ドキュメントとストレージでした。第2四半期は、金融サービスが多くなりました。動画ストリーミング サービスとインターネット接続サービス、保険、給与・税金の3分野は偽装被害が比較的少なくなりました。
図9. 2022年の第2〜第4四半期における、フィッシングの偽装対象セクターの分布変化

2022年の下半期、フィッシング攻撃は、より高度な技術を使い、クローラーの検知を回避したり、高度な認証を回避したりしていました。たとえば、正規のSaaSプラットフォームがフィッシング ページのホストとして悪用されるケースが増加していることが確認されました。また、CAPTCHAで保護されたフィッシング ページの増加傾向も見られました。さらに、二要素認証回避のため、中間者フィッシング攻撃も利用されていました。

検出された悪性ファイル

2022年下半期には、190万個の悪性ファイルを配布する270万件のURLを検出しました。マルウェアをダウンロードするこれらのURLのなかから、大量の悪性PDFファイルをばらまく攻撃キャンペーンが見つかりました。検出されたファイルの種類では、「PDF」が96.0%ともっとも多く、次いで「Windows PE」(EXEファイルとDLLファイルの両方を含む。1.8%)、「アーカイブファイル」(1.6%)の順でした。

図10はダウンロードされたこれら悪性PDFファイルのVirusTotalでのファミリー名上位5つを示したものです。これらのファミリーにはPDF.Spam.Heur.1Trojan.PDF.Phishingといった名前がついていますが、こうした名前は詐欺的なやりかたでの悪性コンテンツ配布と関連するヒューリスティック名ないし一般検出名です。

たとえばこれらPDFファイルの1つはユーザーからのクリックをさそうために偽のCAPTCHAボタンを使います。このボタンをクリックすると、ユーザーはまずでたらめなWebサイトを経由させられた後、悪性コンテンツ(偽のブラウザ拡張機能、偽のアンチウイルスなど)をホストする最終目的ページにリダイレクトされることがあります。

インジェクトされたJavaScriptマルウェアの分析

マルウェア クラスの分析

2022年下半期、総インジェクト数(=総ヒット数)の多かったJavaScriptマルウェアのクラスは上からJSダウンローダー、Webスキマー、クリプトマイナー、リダイレクター、Web詐欺でした。これらのクラスの定義については以前の分析ブログ「Web脅威の一年: クラウドホスティングを利用するWebスキマー 他」を参照してください。

図11に示すように、JSダウンローダーの脅威がもっとも活発で、次いでWebスキマー、Webマイナー(別名クリプトマイナー)の順となっていました。

マルウェア ファミリー分析

前のセクションで説明したインジェクト型JavaScriptマルウェアのクラスにもとづいて、これらのクラスをマルウェア ファミリーごとにさらに整理しました。

マルウェア ファミリーの分類はマルウェアのしくみを理解する上で重要です。なぜなら同一ファミリーのインジェクト型JavaScriptマルウェアは、表示されるHTMLランディング ページのレイアウトやスタイルが異なっていても、同じようなコードを共有しているからです。

前述の分析ブログで紹介したように、「コードのパターンや振る舞いが似ている」、「同じ攻撃者から発信されている」といった特徴をチェックすることで、私たちは「あるマルウェアがある特定のファミリに属するかどうか」を識別しています。

図12は、私たちが特定したインジェクト型JavaScriptマルウェアの上位10ファミリーについて、観測された類似するスニペットの数を示しています。前回同様、リダイレクター、Web詐欺、ダウンローダーのファミリー数は少なく、Webスキマーはコードや振る舞いが多様です。

悪性DNSの分析

攻撃者は依然として悪意のあるアクティビティに独自ドメインを登録することを好みますが、悪性ドメインの少なからぬ数(4.8%)が有名Webホスティング サービスのサブドメインであることが確認されています。これら悪性サブドメインはWebホスティング サービスの評判を継承することから、被害者にとってもセキュリティ アナリストにとっても、実際の意図を見抜きづらくなっています。攻撃者が悪用したWebホスティング サービスのうち、人気のある2つのWebホスティング サービスが、悪性Webホスティング サブドメイン全体の約70%を占めていました。

インターネット上の脅威のケース スタディ

私たちは、あるWebスキマーが、アクティブなモーターの通販サイトに感染していることを確認しました。このサイトはインターネットの上位100万サイトのランク付けを行う「Tranco 1 Million」にランクインしているサイトでした。このモーターの通販サイトは、機微情報を含むほぼすべてのページ(例: ログイン ページ、ショッピングカート ページ)に、悪性JavaScriptコード(motor.js)がインジェクトされていることが確認できます。目的は顧客情報窃取です。この情報にはユーザー名、ログイン パスワード、支払い情報などが含まれます(図13、図14)。

画像14は、感染したショッピング カート ページの悪性JavaScriptコードのスクリーンショットです。author (作成者)、region (地域)、description (説明文)などが表示されています。ユーザーの識別情報(ここでは削除済み)も含まれています。
図14. 感染したショッピング カート ページのスクリーンショット

これらのページには、マルウェア配信の履歴をもつ悪性ドメイン上に存在するmotor.jsという同じ名前のJavaScriptファイルが含まれていることがわかります(図15)。

画像15はVirusTotalでpersonaldelivered[.]comを確認したスクリーンショットです。この図からは、セキュリティベンダー3社がこのURLを「悪性」と判定していることがわかります。この図には[Detection (検出)]、[Details (詳細)]、[Relations (関連)]、[Telemetry (テレメトリー)]、[Community (コミュニティ)]のタブが表示されています。このURLは「shopping (ショッピング)」に分類されています。
図15. VirusTotal上でのpersonaldeliver[.]comのスクリーンショット
オリジナルのmotor.jsWebスキマーは難読化されています(図16)。

画像16は何行もあるコードのスクリーンショットです。これはmotor.jsのソースコードです。
図16. personaldeliver[.]com/motor.jsのソースコードのスクリーンショット
motor.jsのJavaScriptコードの難読化を解除し、このスキマーを詳しく見てみると、このコードは以下の構造を使っていることがわかります。

var1 == var2 ? statement1: statement2

この構造はコード自体の難読化と合わせてリサーチャーの分析妨害を意図したものです。このコードのロジックをもう少し詳しく見てみます。

図17に示すように、このコードには主な関数が2つあることがわかります。1つはHraHMoYftE()という関数で、もう1つはXGSsWznnKh()という関数です。関数HraHMoYftE()inputselecttextareaなどのフィールド経由でWebサイトのページから被害者の入力を取得しようとします。

これらの種類の機微情報を収集し終わると、関数HraHMoYftE()はそれらの機微情報を関数XGSsWznnKh()に渡します。後者の関数の主な役割は、機微情報を配列に格納し、攻撃者がホストしている悪性サーバーに文字列に変換した情報を送信すことです。そのさいは、図17に示したImageオブジェクトのsrcプロパティが使われます。

画像17は難読化を解除したmotor.jsのJavaScriptコードのスクリーンショットです。この図には2つの主な関数を示しています。1つめの関数は機微情報を収集して2つめの関数に渡し、2つめの関数は格納された情報を攻撃者がホストする悪性サーバーに送信します。
図17. 難読化を解除したpersonaldeliver[.]com/motor.jsのコード。2つの主要な関数が含まれている

結論

悪性URLのカテゴリー分析やジオロケーション分析などを含む2022年下半期のインターネット セキュリティ動向を追跡し、公開しました。

とくに注目されるポイントとして、2022年下半期は攻撃者が以下の種類の企業やサービスをよく偽装していたことがわかりました。

  • クラウドベースのドキュメント
  • クラウド ストレージ サービス
  • オンライン ショッピング サイト

悪性Webサイトでダウンロードされるファイルの種類は、依然としてPDFが主流でした。JSダウンローダー、Webスキマーは、インジェクト数が最多の悪性JavaScriptでした。

軽視できない数の悪性ドメインが、有名Webホスティング サービスのサブドメインだったことも確認されました。このほか、Tranco Top 1 Million にランクインしている小売サイトに感染したWebスキマーのケース スタディを紹介しました。

本稿で取り上げた脅威からシステムを保護するため、以下の対応を推奨します。

IoC

  • motor[.]js
  • eaadde9a724180a0318c13a9399ec30bda7a3ec6399ff43b8b7207bf0e74332b

悪性JavaScriptをホストしているURL

  • personallydeliver[.]com/motor.js

収集サーバー

  • personallydeliver[.]com/gatemotor.php
Enlarged Image