正規ドライバーを仮装するマルウェア: HermeticWiper事例
Tech Note
本ブログは、2022年8月に発行された、「サイバーセキュリティの裏側から 2022」レポートの一部をブログ化したものです。
本ブログでは株式会社Blue Planet-worksのセキュリティアドバイザーが、2022年現在、今よりも身近な脅威となる可能性がある事案について取り上げます。
今回はマルウェアに組み込まれる正規の署名済みドライバーについて解説します。脅威を検出するセキュリティツールは日々進化をしていますが、攻撃者もそれらを回避するために様々な手法を展開します。本ブログで例示しているウクライナに投入された「HermeticWiper」やいくつかのランサムウェアにおいて正規のアプリケーションソフトで利用されているドライバーが悪用されていることが確認されており、今後も正規のドライバーがマルウェアに実装されて悪用されるケースは増えていくと考えられます。
マルウェアに組み込まれる正規の署名済みドライバー
Go、Rust、Nim、D、Python等の言語で構成されたマルウェアが増加傾向にある一方でマルウェアに実装されるコンポーネントに正規のアプリケーションで利用されているドライバーが転用されるケースが確認されています。本項では2022年2月23日にウクライナに投入されたワイパー型マルウェア「HermeticWiper」を実例として紹介します。
① ワイパー型マルウェアとは
ワイパー型マルウェアは、対象端末内のデータ又は特定領域を消去して使用不能にすることを目的として使われる標的型のマルウェアです。最近では主にマスターブートレコード(MBR)を別の情報で上書きすることによって短時間でシステムを破壊します。他のマルウェアと異なり、攻撃対象は国が関与するインフラ施設等の限定された対象である点と発症後にワイパー型マルウェア自身も削除されるため、検体を回収することが難しく、その全容を解明できていないものも多いのが実態です。
参考記事:ウクライナを狙ったWiper(ワイパー)型マルウェアとは?
② ワイパー型マルウェア「HermeticWiper」の特徴
「HermeticWiper」の由来は「Hermetica Digital Ltd.,」によって発行された正規のコードサイニング証明書を利用していることが理由となっています。マルウェア自身が正規のコードサイニング証明書を保持していることから、起動に際して多くのアンチウイルス製品が信用できる実行ファイルとして扱ってしまいます。なお、この証明書は2022年4月15日付けで失効しています。
③ HermeticWiperが利用するドライバー
マルウェア自身が正規のコードサイニング証明書を保持していることも問題ですが、「HermeticWiper」は中国四川省に本社を置く「CHENGDU Yiwo Tech Development Co., Ltd.」が開発した「EaseUS Partition Masterシリーズ」で利用されている正規のドライバーを利用していることがわかっています。正規のドライバーを利用することで、攻撃モジュール自体がアンチウイルス製品等に検知されにくくなります。
このドライバーはVirusTotalに照会をかけると、ほとんどのアンチウイルス製品が危険性なしと判断します。解析を困難とする構造を持たせるだけではなく、安全だと認識された正規のドライバー等も攻撃に悪用するため、これまでの様な「悪いモノ」を見つける仕組みで検出していくことはより困難になっていくと想定されます。
以下に一例を示す通り、数としてはまだそれほど多くはありませんが、マルウェアの中には正規のドライバー又は正規のコードサイニング証明書を悪用するものが登場し、その存在感を強めています。
④ AppGuardによるHermeticWiperへの対処
「HermeticWiper」はプロセスメモリ空間にロードされた正規のドライバー(パーティション管理ツール)を使用して、システムに存在するすべての物理ドライブに対してランダムデータを用いて最初の512バイトを上書きすることでMBR(Master Boot Record:HDDなどの記憶領域の先頭にあり、起動時に最初に読み込まれる特殊な領域)を破壊すると共にデータが復元できないように、ファイルに関するすべての情報を保持するMFT(Master File Table:パーティション内のどこにどのようなファイルが存在しているかを記録したデータ領域)も破壊します。
「HermeticWiper」が端末内のどこに配備されるのかによってAppGuardの反応は変わりますが、ユーザープロファイル配下(C:\Users)であれば正規のコードサイニング証明書を保持していても起動が許可されることはありません。AppGuardの仕組みとして信頼できない領域(例:ユーザープロファイル配下)から実行ファイルを起動させたい場合、自組織において信頼できる発行元のコードサイニング証明書をリスト化し、そこに登録されたものと同じ証明書を持つ場合のみ起動が許可されます。「HermeticWiper」に付与された証明書の発行元である「Hermetica Digital Ltd.,」はITベンダーではありません。従って、ユーザーが意図的にこの証明書を信頼される発行元に登録することは現実的にあり得ません。
では、Active Directoryのグループポリシー等を通じてシステムフォルダ配下(C:\Windows等)へ配備された場合はどうでしょうか。AppGuardの制御ポリシーにおいてシステムフォルダ配下は信頼できる領域として扱われるため起動制御は行われません。しかし、破壊活動を始める際にはドライバーの追加処理が必要となります。AppGuardは攻撃者が悪用する可能性があるアプリケーションやツールをハイリスクアプリケーションとして定義し、3つの制御(レジストリの改ざん不可、システムフォルダへの変更処理不可、他アプリのメモリ読み書き不可)を強制適用します。そのため、ドライバーの追加処理を試みても、ドライバーの書き込みが成立しなくなるため、「HermeticWiper」のプロセスが強制終了することになります。
いずれのシナリオにおいてもAppGuard保護下では「HermeticWiper」の攻撃が成立しないことを確認しています。
⑤ マルウェアにコードサイニング証明書を付与するサービスの存在
ハッカーフォーラム上では、マルウェアに有効なコードサイニング証明書を付与するサービス事業者が複数確認されています。このサービスを利用することで、攻撃者はマルウェアを「信頼できるファイル」として扱わせることができます。結果として、ブラウザに実装されるSmartScreenやセーフブラウジング等をすり抜けたり、アンチウイルス製品等は実行しても問題ないと判断してしまう可能性があります。現時点では、このような非合法なサービスがどの程度活用されているのか等、定量的なデータがなく影響度合いは不明ですが、引き続き注視する必要があります。
2023年版セキュリティレポートを公開中!
↓↓↓詳しくはこちらから↓↓↓