Windowsの正規機能を悪用した権限昇格のメモ。
- sethc.exeを用いた権限昇格
- utilman.exeを用いた権限昇格
- osk.exeを用いた権限昇格
- magnify.exeを用いた権限昇格
- narrator.exeを用いた権限昇格
- fodhelperを用いたUAC回避・権限昇格
- slui.exeを用いたUAC回避・権限昇格
- Debuggerレジストリキーを用いた権限昇格
sethc.exeを用いた権限昇格
sethc.exe
はWindowsのSticky Keys(固定キー)機能に関するファイル。任意のファイルをsethc.exe
という名前で保存した上で、Windowsのログイン画面でシフト・キー
を5回押すと任意のプログラムを管理者権限で実行できる。例えばcmd.exe
をsethc.exe
という名前で保存して、再起動後にWindowsのログイン画面でシフト・キー
を5回押すと、コマンドプロンプトが管理者権限で立ち上がる。
参考
utilman.exeを用いた権限昇格
utilman.exe
はWindowsのアクセシビリティ機能の設定に関するファイル。任意のファイルをutilman.exe
という名前で保存した上で、Windowsのログイン画面でWindowsキー + Uキー
を押すと任意のプログラムを管理者権限で実行できる。例えばcmd.exe
をutilman.exe
という名前で保存して、再起動後にWindowsのログイン画面でWindowsキー + Uキー
を押すと、コマンドプロンプトが管理者権限で立ち上がる。
参考
osk.exeを用いた権限昇格
osk.exe
はWindowsのOn Screen Keyboard(スクリーンキーボード)に関するファイル。任意のファイルをosk.exe
という名前で保存した上で、Windowsのログイン画面からOn Screen Keyboardを起動すると、任意のプログラムを管理者権限で実行できる。例えばcmd.exe
をosk.exe
という名前で保存して、再起動後にWindowsのログイン画面でEase of AccessオプションからOn Screen Keyboardを選択すると、コマンドプロンプトが管理者権限で立ち上がる。
参考
magnify.exeを用いた権限昇格
magnify.exe
はWindowsのMagnifier(拡大鏡)に関するファイル。任意のファイルをmagnify.exe
という名前で保存した上で、Windowsのログイン画面でWindowsキー + プラスキー
を押すと、任意のプログラムを管理者権限で実行できる。例えばcmd.exe
をmagnify.exe
という名前で保存して、再起動後にWindowsのログイン画面でWindowsキー + プラスキー
を押すと、コマンドプロンプトが管理者権限で立ち上がる。
参考
narrator.exeを用いた権限昇格
narrator.exe
はWindowsのNarrator機能 (スクリーン上のテキストを読み上げる) に関するファイル。任意のファイルをnarrator.exe
という名前で保存した上で、Windowsのログイン画面からControlキー + Windowsキー + Enterキー
を押すと、任意のプログラムを管理者権限で実行できる。例えばcmd.exe
をnarrator.exe
という名前で保存して、再起動後にWindowsのログイン画面でControlキー + Windowsキー + Enterキー
を押すと、コマンドプロンプトが管理者権限で立ち上がる。
fodhelperを用いたUAC回避・権限昇格
fodhelper.exe
はWindows10より導入されたFeatures On Demand Helperに関するファイル。以下のレジストリキーを編集した上で、fodhelper.exe
を起動すると、任意のプログラムやコマンドをUAC (User Account Contol)を回避した上で、管理者権限で実行できる。
HKCU:\Software\Classes\ms-settings\shell\open\command
HKCU:\Software\Classes\ms-settings\shell\open\command\DelegateExecute
HKCU:\Software\Classes\ms-settings\shell\open\command\(default)
参考
slui.exeを用いたUAC回避・権限昇格
slui.exe
はWindowsのライセンス認証に関するファイル。以下のレジストリキーを編集した上で、slui.exe
を起動すると、任意のプログラムやコマンドをUAC (User Account Contol)を回避した上で、管理者権限で実行できる。
HKCU:\Software\Classes\exefile\shell\open\command
Debuggerレジストリキーを用いた権限昇格
以下のDebuggerレジストリキーを編集することで、任意のプログラムやコマンドを管理者権限で実行できる。
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\<name of the executable>\Debugger
例えば、HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\utilman.exe\Debugger
というエントリーを作成し、値としてcmd.exe
を指定し、再起動後にWindowsのログイン画面でWindowsキー + Uキー
を押すと、コマンドプロンプトが管理者権限で立ち上がる。
ここでまとめたテクニックはユーザーのパスワードを変更したいときの裏技として紹介されることも多い。また、いくつかの手法はWindows Defenderによって阻止される。
その他参考
https://attack.mitre.org/techniques/T1546/008/