pilotes malveillants
脅威の調査

Microsoft、7 月の定例パッチで悪意のあるドライバーを削除

Microsoft が発表したセキュリティアドバイザリ ADV230001 では、Microsoft などによってデジタル署名された数多くの不正なドライバーに対処しています。

**本記事は、Microsoft Revokes Malicious Drivers in Patch Tuesday Cullingの翻訳です。最新の情報は英語記事をご覧ください。**

Microsoft は 2022 年 12 月に公開した月例 Windows Update パッケージ内で、Microsoft やその他のコード署名機関によって署名された悪意のあるドライバーに関するアドバイザリを発表しました。この種のドライバーは、攻撃者によって悪用されることが Sophos X-Ops (およびその他の企業) によって確認されています。本日 (2023 年 7 月 11 日)、Microsoft は 7 月の Windows Update の一部として、セキュリティアドバイザリ ADV230001 を発表しました。このアドバイザリは、Microsoft などによってデジタル署名された、100 件以上の悪意のあるドライバーに対処するものです。これらのドライバーは、少なくとも 2021 年 4 月から存在していました。

同時に、Knowledge Base (サポート技術情報) の記事 5029033 番も公開され、これらの悪意のある署名付きドライバーからユーザーを保護するために Microsoft が講じた技術的対策について、詳細情報が掲載されています。ソフォスは 2022 年以来、これらのドライバーの存在を検出し、インストールをブロックする対策を講じてきました。(検出についての詳細は、本記事末尾に記載しています。)

最新世代の 64 ビット Windows のセキュリティモデルの一部として、Microsoft は 2016 年に (Windows 10 version 1607 より)、セキュアブートを有効にした Windows OS がカーネルドライバーをロードするには有効なデジタル署名を必要とする、というポリシーを制定しました。

サードパーティ製ドライバーの多くは、極めて原始的な OS コンポーネントとして機能するため、このポリシーは非常に重要です。ドライバーの作成方法やインストールの方法によっては、OS の他の部分 (エンドポイント保護ソフトを含む) が起動する前にドライバーがロードされることがあります。

ソフォスは 12 月にも悪意のある署名入りドライバーに関する記事を公開し、攻撃の実態を解明しました。攻撃者は、事前に取得した管理者権限を使って、セキュリティ保護ソフトが実行されるより前のブートプロセス中にドライバーをロードするように設定します。いったんロードされると、ドライバーはさまざまなタイプのセキュリティ (およびその他の) アプリケーションを妨害し、仕様通りの実行を妨げます。ソフォスのエンドポイント保護製品も、妨害対象となったセキュリティツールの 1 つでした。

悪意のある EDR キラードライバーのロードと常駐化に使用されたスクリプト

昨年 12 月に、(本来の機能を無効化された) ドライバーがソフトウェアパブリッシャーによって発行されたコード署名証明書を使用して署名され、盗み出され、インターネット上で公開された事例もあります。また、不思議なことに、Microsoft Windows ハードウェア互換性パブリッシャー (WHCP) 証明書を用いて有効に署名されているものもありました。

Microsoft が WHCP 証明書を使用してコードに署名するのは、それ以前に Microsoft の Windows ハードウェアデベロッパーセンタープログラムに登録し、Extended Validation コード署名証明書を所有しているソフトウェアまたはハードウェアベンダーが、署名を求めてドライバーを Microsoft に提出した場合に限られます。

(何者かが Windows マシンに物理的にアクセスでき、Windows ブートローダーをリブートできる場合、Windows が起動する前に [ドライバー署名の強制を無効にする] オプションを使い、この機能を逐次オフにできます。ソフォスが調査した事例では、攻撃者が物理的にマシンにアクセスすることはありませんでした。)

トラストチェーンの破壊

Microsoft は昨年、ソフォスが報告したドライバーを無効にし、ロードできないように設定しました。この発表と同じ日に、ソフォスは Microsoft との緊密な連携のもと、コンピューター上で発見されたこの種のドライバーを検出して削除するエンドポイント保護シグネチャの更新版を公開しました。

2022 年初めにはドライバーの署名に使用されていた WHCP 証明書

ドライバーファイルに埋め込まれたデジタル署名から、この問題はソフォスや Microsoft の予想よりも遥かに大規模であることが判明しました。その後数週間で、ソフォスは 133 件の悪意のあるドライバーを発見しました。そのうち 100 件は Microsoft の WHCP 証明書によって署名されていました。

WHCP 以外で署名されていたドライバーの証明書の詳細を確認したところ、中国を拠点とする企業に対して発行されていることがわかりました。これらの証明書は以下の会社名義で所有されていました。

  • Beijing Kate Zhanhong Technology Co.,Ltd.
  • Zhuhai liancheng Technology Co., Ltd.
  • Beijing JoinHope Image Technology Ltd.
  • 海南巨灵网络科技有限公司 (Hainan Giant Spirit Network Technology Co., Ltd.)
  • Shenzhen Luyoudashi Technology Co., Ltd.
  • Chengdu Lule Cube
  • Bopsoft

また、署名されていない悪意のあるドライバーの中には、署名されたドライバーと機能的に同一のものが少なからず存在したことも注目に値します。SophosLabs のアナリストは、これらの署名されていないドライバーが、後に WHCP のようなコード署名メカニズムに提出された可能性があるのではないかと推測しました。

Microsoft 以外の一部のドライバー署名証明書は失効させられた

署名されたドライバーの多くも、ランタイムパッカーソフトウェアを使って圧縮されています。パッカーユーティリティは、実行ファイル (ドライバーは Windows Portable Executable (PE) の一種) 内の機能を難読化し隠蔽する目的で、正規のソフトウェアパブリッシャーとマルウェア作成者のどちらにも使用されることがあります。しかし、正規のドライバーのほとんどは圧縮されていません。一部のドライバーは、市販のランタイムパッカーである VMProtect を使って圧縮されていました。

詳しく調べるうちに、悪質なドライバーに署名させる攻撃者の動きを解明するヒントとなる興味深い事実が判明しました。署名されたドライバーと、その基礎となるバイナリを分析したところ、悪意のあるドライバーの作成者は、そのドライバーの「親」ドライバーを作成し、親ドライバーを 1 つまたは複数のパッカーユーティリティで 1 回または複数回圧縮することで、時として数十もの「子」ドライバーを作成し、そのすべてを署名のために Microsoft に提出したようです。

ドライバーの機能

ソフォスが発見したドライバーは、2 つのカテゴリーに分類されます。1 つは、昨年発見されたドライバーと機能的に類似した「エンドポイント保護キラー」、もう 1 つは、感染したコンピューター上でバックグラウンドで実行されることを意図したルートキットの一種です。先述の通り、これらのドライバーはシステムの管理者権限を持っていない限りはインストールできません。

「エンドポイント保護キラー」ドライバーのうち、68 件は Microsoft によって署名され、13 件は他社の証明書によって署名されていました。

ルートキットドライバーのうち、32 件は Microsoft によって署名されており、4 件は他社によって署名されていました。また、上述の 4 件のドライバーのうちの 1 件の、署名されていない変種が 16 件ありました。

一部の署名証明書は期限切れになりましたが、多くの証明書は定例パッチのリリースまで有効でした

ルートキットドライバーの大半は、Windows フィルタリングプラットフォーム (WFP) を使用してネットワークトラフィックを監視する機能を有しており、インターネット上で送受信される機密データの監視が可能です。

ルートキットのいくつかは、FU ルートキット、Fivesys ルートキット、FK_undead ルートキット、Netfilter ルートキットなど、既知の Windows ルートキットファミリの亜種だと考えられます。これらのルートキットの中には、Windows のユーザーアカウント制御 (UAC) 機能を無効にできるものがあり、ルートキットの操作者は、画面に UAC プロンプトを表示させることなく、他のアプリケーションの権限を管理者レベルに昇格させられます。

また、ルートキットの多くは、ドメイン生成アルゴリズム (DGA) に基づくアドレスを持つ C2 サーバーと通信する機能を有しており、そのアドレスは時間とともに変化します。これらのルートキットは、.xyz トップレベルドメイン (TLD) を使用する DGA ドメイン名と通信していました。

検出とガイダンス

今回の調査で発見されたものと同様の機能を持つドライバーは、以下のシグネチャのいずれか、あるいはすべてとして検出されます。Mal/Rootkit-BE、Troj/Rootkit-VE、Troj/Agent-BJJB、Mal/Rootkit-VF、Troj/Rootkit-ND、Troj/Rootkit-NH、Troj/Rootkit-NO、Troj/Rootkit-NP、あるいは Troj/Rootkit-NS

ソフォスが Microsoft に報告したドライバーファイルは、2023 年 7 月 11 日のパッチリリース時点で、Microsoft によるアップデートメカニズムによって無効化され、署名が取り消され、実行できなくなりました。Microsoft はまた、悪意のあるドライバーと出所が一致する他のドライバーを、将来のいかなる時点でも無効にする可能性があります。

ソフォスは、SophosLabs の Github で、悪意のある署名付きドライバーに関するハッシュやその他の関連情報を公開しています。

謝辞

ソフォスは、悪意のあるドライバーのプロファイリングとリスト作成への協力に対し、Andrew Ludgate と Andreas Klopsch の両名に謝意を表します。