◆概要
2022 年 6 月に、Microsoft Windows OS に、UAC による権限制御が回避可能となる手法が公開されています。端末が管理者グループのアカウントで侵入されてしまった場合は、当該手法により SYSTEM 権限が奪取されてしまいます。OS の設定の見直しによる対策を推奨します。
◆分析者コメント
UAC 回避は、マルウェアなどにより Windows OS 端末への侵入に成功した攻撃者が権限を昇格するために悪用する可能性が高い手法です。脆弱性ではなく仕様であるため幅広いバージョンの Windows OS が影響を受けますが、多くの手法は UAC の設定を最高レベル(「常に確認する」)に設定することで軽減可能であり、本記事で取り上げている手法も同様に UAC レベルの設定で対策可能です。根本的には Administrators グループに所属していないアカウントで端末を運用することが対策として望ましいですが、難しい場合は UAC レベルの引き上げにより対策しましょう。
◆影響を受けるソフトウェア
Windows 10 と Windows 11 で当該手法が悪用可能であることを確認していますが、Windows 10 の古いバージョンがどこまで影響を受けるかは確認していません。
◆解説
Microsoft Windows に、COM オブジェクトの動作を悪用して、UAC による権限制御が回避可能となる手法が公開されています。
当該手法は DiagnosticProfile という COM オブジェクトの権限動作を悪用するものです。DiagnosticProfile には Windows のインストーラなどで使用される Cab ファイルを操作するためのメソッドが実装されていますが、UAC の設定が最高レベルである場合を除いて、UAC の制限解除の確認動作をせずに指定されたファイルを指定されたパスに移動します。攻撃者はこの動作を悪用して C:\Windows\System32 などのディレクトリに DLL を作成して、権限プロセスに対して DLL Hijacking することで、管理者グループに所属しているアカウントの一般権限プロセスから SYSTEM 権限への昇格が可能となります。
◆対策
UAC の設定を最高レベル(「常に通知する」)に設定することで、当該手法により権限昇格されてしまう危険性を軽減できます。
◆関連情報
[1] 草泥马之家
http://www.zcgonvh.com/post/Advanced_Windows_Task_Scheduler_Playbook-Part.2_from_COM_to_UAC_bypass_and_get_SYSTEM_dirtectly.html
[2] Abdelhamid Blog
https://halove23.blogspot.com/2021/03/google-update-service-being-scum.html
◆エクスプロイト
以下の Web サイトにて、当該手法により Administrators グループのアカウントから SYSTEM 権限への昇格を試みるエクスプロイトコードが公開されています。
GitHub - Wh04m1001/IDiagnosticProfileUAC
https://github.com/Wh04m1001/IDiagnosticProfileUAC/blob/main/main.cpp
//-- で始まる行は筆者コメントです。
2022 年 6 月に、Microsoft Windows OS に、UAC による権限制御が回避可能となる手法が公開されています。端末が管理者グループのアカウントで侵入されてしまった場合は、当該手法により SYSTEM 権限が奪取されてしまいます。OS の設定の見直しによる対策を推奨します。
◆分析者コメント
UAC 回避は、マルウェアなどにより Windows OS 端末への侵入に成功した攻撃者が権限を昇格するために悪用する可能性が高い手法です。脆弱性ではなく仕様であるため幅広いバージョンの Windows OS が影響を受けますが、多くの手法は UAC の設定を最高レベル(「常に確認する」)に設定することで軽減可能であり、本記事で取り上げている手法も同様に UAC レベルの設定で対策可能です。根本的には Administrators グループに所属していないアカウントで端末を運用することが対策として望ましいですが、難しい場合は UAC レベルの引き上げにより対策しましょう。
◆影響を受けるソフトウェア
Windows 10 と Windows 11 で当該手法が悪用可能であることを確認していますが、Windows 10 の古いバージョンがどこまで影響を受けるかは確認していません。
◆解説
Microsoft Windows に、COM オブジェクトの動作を悪用して、UAC による権限制御が回避可能となる手法が公開されています。
当該手法は DiagnosticProfile という COM オブジェクトの権限動作を悪用するものです。DiagnosticProfile には Windows のインストーラなどで使用される Cab ファイルを操作するためのメソッドが実装されていますが、UAC の設定が最高レベルである場合を除いて、UAC の制限解除の確認動作をせずに指定されたファイルを指定されたパスに移動します。攻撃者はこの動作を悪用して C:\Windows\System32 などのディレクトリに DLL を作成して、権限プロセスに対して DLL Hijacking することで、管理者グループに所属しているアカウントの一般権限プロセスから SYSTEM 権限への昇格が可能となります。
◆対策
UAC の設定を最高レベル(「常に通知する」)に設定することで、当該手法により権限昇格されてしまう危険性を軽減できます。
◆関連情報
[1] 草泥马之家
http://www.zcgonvh.com/post/Advanced_Windows_Task_Scheduler_Playbook-Part.2_from_COM_to_UAC_bypass_and_get_SYSTEM_dirtectly.html
[2] Abdelhamid Blog
https://halove23.blogspot.com/2021/03/google-update-service-being-scum.html
◆エクスプロイト
以下の Web サイトにて、当該手法により Administrators グループのアカウントから SYSTEM 権限への昇格を試みるエクスプロイトコードが公開されています。
GitHub - Wh04m1001/IDiagnosticProfileUAC
https://github.com/Wh04m1001/IDiagnosticProfileUAC/blob/main/main.cpp
//-- で始まる行は筆者コメントです。