はじめに
2024年4月、Zscaler(ゼットスケーラー)の調査チームであるThreatLabZによると、Google広告を悪用したサイバー攻撃が2024年3月より発生しています。攻撃の標的となっているのは、セキュリティ製品を検索するIT管理者たちです。
攻撃の手法は、Google広告を悪用したものです。IT管理者が検索エンジンで特定のキーワードを検索した際、検索結果に正規のセキュリティ製品サイトを装ったWebサイトを表示させて、検索者をマルウェアのダウンロードへ誘導するというものでした。そのWebサイトに誘導されるがままにダウンロードボタンを選択してしまうと、端末にバックドアがインストールされてしまいます。
新たなバックドア
今回、新たに発見されたバックドアは、以下の特徴があります。
・多段階DLLサイドローディング:正規のアプリケーションに悪性のDLLを配置して実行させることで、セキュリティ製品の検知を回避する方法
・コマンド&コントロール(C2)通信用のDNSトンネリング:FWで許可されているDNSリクエストを悪用して、攻撃者が作成したサーバーとユーザーの端末の間に接続を確立させること)
・アンチダンピングなどの回避技術を使用して、メモリフォレンジックを回避:ダンプ(記録を表示)させないことで、メモリ上のデータを解析しても不正行為が見つけられない状況にする)
この攻撃は、C2通信にDNS MXクエリを使用しており、C2リクエストの間隔が非常に短いことから、「MadMxShell」と名付けられました。
標的はIT管理者
この攻撃は、IT管理者を標的とする傾向があり、NOBELIUMを始めとするAPT(Advanced Persistent Threat/高度な持続的脅威を行う)グループも同様の活動をしています。攻撃者がIT管理者を標的とする理由は、彼らがITセキュリティチームやネットワーク管理チームに所属している事が多く、組織のシステムやネットワークへの特権アクセス権限を持っているためです。
上記の理由によって、IT管理者はAPTグループだけでなく、初期アクセスブローカー(IAB/Initial Access Broker/標的へ不正アクセスする手段を提供する組織)にとっても魅力的なターゲットとなっています。
今回のようなGoogleの検索結果を悪用するマルバタイジングは、過去にも事例がありました。それは、サイバー攻撃者が「Advanced IP Scanner」と呼ばれる、特定のポートスキャンツールをトロイの木馬化してダウンロードさせようとした事例です。この攻撃の際に使用されたマルウェアの配布方法も今回と同じ手法ですが、現状では、より高度なマルウェアを配布しているとが分かっています。
攻撃の手法 テクニック
攻撃の手法は、マルバタイジングと呼ばれるものです。マルバタイジングとは、以下のような活動を指します。
・特定の製品やサービスを提供する正規のドメインに似たドメインを複数作成する。
・それらのドメインを使って正規のWebサイトに似せたWebサイトを作成し、インターネット検索ツールの検索結果の上位に表示させる
・ユーザーが特定の製品やサービスを検索した際、攻撃者が作成したドメインにリダイレクト(遷移)させることで、マルウェアに感染させる
今回の調査では、ユーザーがいずれかに関連するキーワードを検索した際、検索上位に危険なWebサイトへリダイレクトされる広告が表示されました。
・正規の監視ツール、IT管理ソフトウェア
Advanced IP Scanner(フリーのネットワークスキャンツール)
Angry IP Scanner(フリーのネットワークスキャンツール)
PRTG IP Scanner by Paessler
Manage Engine
・仮想ローカルエリアネットワーク(VLAN)に関するネットワーク管理
・IPプロトコルスキャン
例えば、以下のようなキーワードを検索すると、広告の上位に攻撃者のWebサイトに繋がる広告が表示されることになります。
「advanced ip scanner」
「ip address scanner」
今回は英語のキーワードでしたが、言語を少し変えるだけで、同様の攻撃はどの言語でも可能です。
感染の仕組み
ステージ1 インジェクションー端末への侵入
次に、Zscalerは、この一件でサイバー攻撃者が作成したWebサイトの調査を試みました。
見つかった特長は以下の通りです。
・リダイレクトされたWebサイトの見た目は、正規の製品・サービスのWebサイトと全く変わらなかった。
・ただし、Webサイトのソースコードに、軽微な編集が行われていた。
・行われた編集の結果、ユーザーがダウンロードボタンを選択すると、悪意のあるファイルをダウンロードするようにリダイレクトをさせていることが分かった。
今回の調査対象となった危険なWebサイトからダウンロードされる悪意のあるファイルは、以下の二種類です。
・Advanced-ip-scanner.exe:正規のMicrosoft EXEの名前が変更されたコピーです。
・IVIEWERS.dll:ステージ 2 で使用するペイロードを含む 22 MB の DLLです。このDLLには10MBの未使用のオーバーレイ(プログラムを分割したもの)が埋め込まれており、分析するファイルサイズを制限するセキュリティ製品の場合、スキャンをすり抜ける場合があります。
これらが実行されると、難読化されたシェルコード(コンピューターの脆弱性を突いて乗っ取りを行うための悪質なプログラムコード)がDLLセクション内の色々な場所からロードされます。最終的に、シェルコードは、DLLセクションからXOR(暗号化手法の一つ。鍵が分かればすぐに復号化できる仕組みだが、暗号が長くなる特長を持つ)を使用して実行可能ファイルを抽出し、デコードの上、プロセスの空洞化(プロセスインジェクション。正規のアプリケーション用に確保した割り当てプロセス内に、新しいプロセスに注入すること)を行い、EXEをコンピューターへ挿入します。
ステージ2 端末へプログラムをドロップ
挿入されたEXEには、次の段階に進むペイロード(マルウェアに感染させるためのプログラム)が含まれています。そのファイルは、XORで暗号化され、zlib(可逆圧縮アルゴリズム。完全に元に戻すことができる圧縮ライブラリ)で圧縮されています。
このリソースをデコード(復号)して、圧縮を解除すると、2つのファイルが現れます。
その際、ステージ1で使用したEXEを削除してから、ドロップを行っています。
ステージ3 実行
正規の署名されたEXEファイル(今回は、OneDrive.exe)を悪用し、ステージ4でシェルコードを実行する前に、永続的なサイドローディング(2つのデバイス間でファイルを転送すること。バックドアの準備)を設定します。
そして、アイコンリソースIDからデータをXORでデコードし、ステージ4で実行するシェルコードを取得します。
併せて、マルウェアは、レジストリからWindows Defenderを無効化しようとします。無効化に成功すると、次回からWindowsにログオンした時にWindows Defenderを無効化するタスクを構成し、セキュリティツールを永続的に使用させないように立ち回ります。
ステージ4 バックドアの構成
シェルコードは、サイバー攻撃者がシステム情報を収集し、コマンドを実行、ファイルの読み取り、書き込み、削除などの基本的なファイル操作を実行できるようにするバックドアです。
セキュリティツールによる分析と検出を阻止するために、マルウェアは8バイトのXORキー(ステージ2で使用されたのと同じキー)を使用して各関数のコードをデコード(復号)し、関数を呼び出してから、すぐにコードを再エンコード(暗号化)します。これにより、実行中のどの時点でも、完全にデコードされたシェルコードのコピーがメモリ内に存在しないことになります。
また、C2ドメイン、C2通信をエンコード/デコードするためのルックアップテーブル、前述のXORキーなど、機密性の高い文字列やデータがスタックされた文字列として保存されるため、セキュリティ製品が行う解析の妨げとなります。
C2プロトコル
マルウェアは、攻撃者が作成したC2サーバーへ要求を送信し、DNS MX クエリとエンコードされたコマンドを受信します。
データエンコーディング
バックドアが設置された端末は、DNS MXクエリパケットの完全修飾ドメイン名(FQDN)のサブドメイン内のデータをエンコード(暗号化)することで、C2サーバーにリクエストを送信します。C2サーバーは、対応するDNS MX応答パケットのサブドメインとしてコマンドをエンコード(暗号化)することで、同様に応答します。
このように、サイバー攻撃者は高度な戦術、技術、手順(TTP)を使って、IT管理者を標的にしています。メモリフォレンジックやネットワークセキュリティツールを回避することで、検出されないように多大な努力を払うだけの対価が、IT管理者の扱う端末にはあるということでしょう。
更に詳細な情報を確認されたい場合は、引用元のZscalerのブログ(英語)をご覧ください。
対策 マルバタイジングを防ぐには?
マルバタイジングという脅威は、残念ながらなくなることはありません。組織レベル、或いは個人で、マルバタイジングを発見・防止する手段を知る必要があります。それらの対策には以下の手法が含まれます。
・DNSフィルタリングソリューションを使用して、悪意のあるドメインとの通信を防止
・次世代のウイルス対策ソフトウェアを使用して、マルウェアの自動ダウンロードを防止
・Webブラウザーによる メディアの自動再生をオフ
・広告ブロッカーを使用して、広告をブロックする
・FlashとJavaは、マルバタイジングの攻撃につながる脆弱性がある場合があるため、使用しない
・ブラウザとプラグインを定期的に更新する
・広告をクリックせずに検索を行う
・最新のマルバタイジング攻撃の最新情報を入手する
DNS脅威予防で、マルバタイジングを使った攻撃を対策
上で多くの手法を紹介しましたが、設定作業が大きな手間になったり、手動で行った設定が元に戻ってしまう場合もあります。そいうった課題に対して、DNS脅威予防が役立ちます。
弊社のDNS脅威予防は、組織の内部DNSと、外部DNSの間にSaaSのサーバーを通すことで、危険なドメインには接続させず、正しいドメインにのみ接続をさせる仕組みを持っています。
Google検索を始めとする検索ツールからもたらされる情報を利用しないという選択肢は、もはやありません。しかし、どれほど気を付けて使用をしても、一定数の広告を目にした理、参考にしたりする場合はありますし、コンテンツの自動再生機能をオフにしているユーザーが少ないのが現状です。
DNS脅威予防を用いてHttp、Https、DNSの通信を全て保護することで、今回MadMxShellの標的にされたIT管理者だけでなく、組織内のすべてのユーザーを守ることが出来ます。
おわりに
MadMxShellを始めとする、攻撃対象を絞って資格情報を盗み取ろうとする攻撃は、今後も増加することが予測されます。サイバー攻撃者たちは、これからも想像もつかない方法でマルウェアを端末へ注入しようとする事でしょう。その際も、攻撃者はDNSという便利な通信を使って、C2サーバーへの接続を使用とします。C2サーバーへの接続を根本的に絶つことができるDNS脅威予防は、より、必要性を増していくといえます。
本日ご紹介したDNS脅威予防製品については、以下のリンクより確認が可能です。
ここまでご覧いただき、ありがとうございました。
参考URL 一覧
Zscaler Malvertising campaign targeting IT teams with MadMxShell
Heimdal Deceptive Google Ads Mimic IP Scanner Software to Push Backdoor