Microsoftが今週初めに警告したWindows Hardware Developer Program(MWHDP)によって認証された一部のドライバーが悪用されていることを受け、Cisco Talosのセキュリティ研究者は、悪意あるドライバーの数は数千に上る可能性があると述べた。
Talosの研究者Chris Nealは、セキュリティ上の問題がどのように進展したかをブログ記事で論じた。
Nealは、「悪意あるドライバーの脅威に対抗するため、Windows Vista 64ビット以降、Microsoftはカーネルモードドライバーに対し、信頼できる認証局の証明書でデジタル署名することを義務付け始めた」と記した。「署名の強制がなければ、悪意あるドライバーはマルウェア対策ソフトやエンドポイント検知を容易に回避できるため、防御は極めて困難になる」
Nealによると、MicrosoftはWindows 10 バージョン1607以降、カーネルモードドライバーについて、Developer Portalによる署名を義務付けている。「このプロセスは、ドライバーがMicrosoftの要件とセキュリティ基準を満たしていることを確実にするためのものだ」と同氏は記した。
それでも例外は存在する。特に注目すべきなのは、有効期限が切れた証明書、または2015年7月29日より前に発行された証明書で署名されたドライバーに関する例外だ。
新たにコンパイルされたドライバーが、その日付より前に発行され、失効していない証明書で署名されていれば、ブロックされない。「その結果、この抜け穴を悪用するためのオープンソースツールが複数開発された」とNealは記した。
また、Sophosが報告した一方、100を超える悪意あるドライバーを発見したとする報告について、NealはCisco Talosが「複数の脅威アクターが前述のWindowsのポリシー上の抜け穴を利用し、Microsoftに検証を申請することなく、数千の悪意ある署名済みドライバーを展開していることを確認した」と述べた。
偽造されたタイムスタンプ
Nealによると、ゲームチートの開発で一般的に使われている2つのタイムスタンプ偽造ツールが、現在では脅威アクターに利用されている。ツールは、2018年に公開されたFuckCertVerifyTimeValidityと、2019年から利用可能なHookSignToolだ。
Nealは、「署名を正常に偽造するには、HookSignToolとFuckCertVerifyTimeValidityは、失効しておらず、2015年7月29日より前に期限切れとなった、または発行されたコード署名証明書と、その秘密鍵およびパスワードを必要とする」と記した。「調査中、GitHub上にあるFuckCertVerifyTimeValidityのフォークで、両ツールによる署名の偽造に頻繁に使われる、期限切れのコード署名証明書を十数個以上含むPFXファイルを確認した」
Nealによると、悪意あるドライバーは攻撃者にシステムへのカーネルレベルのアクセスを与えられるため、両ツールは深刻な脅威となる。
同氏は、「Microsoftは、当社からの通知を受けて、このブログ記事で取り上げたすべての証明書をブロックした」と指摘した。
実際の攻撃事例
別のブログ記事でNealは、この脅威の一例として、少なくとも2021年から活動しているRedDriverという悪意あるドライバーを紹介した。同氏は、「HookSignToolを使ってドライバー署名の強制ポリシーを回避すれば、脅威アクターは、本来なら実行をブロックされるドライバーを展開できる」と記した。「RedDriverは、このツールが悪意ある目的で効果的に使われた実例だ」
Nealは、「HookSignToolの調査中、Cisco Talosは、盗んだ証明書を使って署名のタイムスタンプを偽造し、Windows内のドライバー署名強制ポリシーを事実上回避する、文書化されていない悪意あるドライバーの展開を確認した……RedDriverは、最終的にブラウザーのトラフィックを乗っ取り、localhost(127.0.0.1)へリダイレクトする、多段階の感染チェーンにおける重要な構成要素だ」と記した。
同氏はさらに、「公開時点では、このブラウザートラフィックのリダイレクトが最終的に何を目的としているのかは不明だ」と述べた。「しかし意図にかかわらず、RedDriverに感染したシステムにとって、これは重大な脅威だ。ブラウザーを通過するすべてのトラフィックが改ざんされる可能性があるためだ」
署名済みドライバーへの対策
Nealは問題の証明書をブロックするよう推奨した。「悪意あるドライバーはヒューリスティック検知が難しく、ファイルハッシュや署名に使われた証明書に基づいてブロックするのが最も効果的だ。署名のタイムスタンプとドライバーのコンパイル日を比較することで、タイムスタンプ偽造の事例を検知できる場合もある。ただし、コンパイル日は署名のタイムスタンプに合わせて変更できる点に注意が必要だ」
KnowBe4のデータに基づく啓発担当者Roger Grimesは、電子メールでeSecurity Planetに対し、攻撃者が高度にワーム化可能なものを作成した場合、さらに大きな脅威となる可能性があると述べた。「偽の署名証明書を使ったワーム化可能なエクスプロイトは、多くの問題を引き起こす可能性がある」
Grimesによると、幸いなことに、これらはすべて防ぐことができる。「Microsoftは、Windows Defender Application Controlなど、望ましくないドライバーやソフトウェアのインストールを防ぐ方法を複数提供している」と同氏は述べた。「顧客はその仕組みを調べて有効にするだけでよい。そうすれば、この脅威全体がなくなる」
次の記事を読む:





