如何利用sdclt磁盤備份工具繞過UAC
簡介
sdclt 是微軟提供的命令行磁盤備份工具,從 Vista 時代引入
在 Windows 10 開始,sdclt 加入了自動提升權限的能力,requestedExecutionLevel 由 asInvoker 變為 requireAdministrator
(命令 sigcheck -m %systemroot%\system32\sdclt.exe 的結果)
當不帶任何參數啟動 sdclt 時,sdclt 會打開控制面板
控制面板的主程序為 control.exe,那么 sdclt 是如何找到 control.exe 完整路徑的呢?
通過 process monitor 的分析 (過濾掉不相干進程,再用 CTRL + F 搜索 control.exe),sdclt 似乎是從注冊表讀取到了 control.exe 的路徑,
按照這個原理,我們寫一個簡單的 PoC 測試下
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\App Paths\control.exe" /t REG_SZ /d %COMSPEC% /f
- sdclt
在 cmd 中執行一下試試
可以看到,控制面板沒有啟動,而是彈出了一個 cmd,我們也獲得了管理員權限
當然,提升權限后還要清理下痕跡,具體代碼請看完整PoC,點這里下載
寫在***
其實可以把 HKCU 整個導出來看一下,目前我還沒有發現其它類似的案例,有興趣的同學可以研究下~