當前位置:
首頁 > 新聞 > 如何利用sdclt.exe繞過UAC?

如何利用sdclt.exe繞過UAC?

0x00 前言


Matt Nelson? @enigma0x3在最近的文章中公開了一個繞過Win10 UAC的技巧,通過修改HKCU下的註冊表鍵值實現對UAC的繞過,文章地址如下:


https://enigma0x3.net/2017/03/14/bypassing-uac-using-app-paths/


https://enigma0x3.net/2017/03/17/fileless-uac-bypass-using-sdclt-exe/


0x01 簡介

本文將對其進行測試,分享測試心得,整理該方法的攻防技巧


0x02 原理


Sigcheck


可用來查看exe文件的清單(manifest)


下載地址:https://technet.microsoft.com/en-us/sysinternals/bb897441.aspx


在Win10環境下,cmd下運行:


sigcheck.exe -m c:windowssystem32sdclt.exe


如圖

如何利用sdclt.exe繞過UAC?


level=」requireAdministrator」


true代表可自動提示許可權


在Win7環境下,同樣使用Sigcheck查看sdclt.exe


如圖

如何利用sdclt.exe繞過UAC?



level=」asInvoker」表示不會提升許可權,這也就是不支持Win7的原因


接下來,使用ProcessMonitor監控sdclt.exe的啟動過程,查找是否會調用其他程序


0x03 實際測試


測試環境: Win 10 x64

註:該方法只在Win10下測試成功


cmd下輸入:sdclt.exe


正常啟動,如圖

如何利用sdclt.exe繞過UAC?



使用ProcessMonitor查看啟動過程


如圖

如何利用sdclt.exe繞過UAC?



啟動sdclt.exe的過程中會以High許可權查找註冊表鍵值

HKCU:SoftwareMicrosoftWindowsCurrentVersionApp Pathscontrol.exe


如果手動修改該註冊表鍵值,填入參數,那麼就能夠實現UAC的繞過


繞過方法如下:


新建註冊表鍵值:


HKCU:SoftwareMicrosoftWindowsCurrentVersionApp Pathscontrol.exe


並將默認值設置為cmd.exe


如圖

如何利用sdclt.exe繞過UAC?



再次啟動sdclt.exe,發現轉而去執行cmd.exe,並且實現了對UAC的繞過,如圖

如何利用sdclt.exe繞過UAC?



註:啟動的exe不能加參數,否則失敗


例如填入C:WindowsSystem32cmd.exe /c calc.exe,無法實現利用


如圖

如何利用sdclt.exe繞過UAC?



在實際利用的過程中,如果需要加參數,可通過先將參數寫入腳本,再載入腳本的方式進行利用


為了更好的隱蔽,實現「無文件」利用,可以嘗試尋找sdclt.exe是否存在支持傳入參數的命令


Matt Nelson? @enigma0x3的第二篇文章就是解決了這個問題,文章地址如下:

https://enigma0x3.net/2017/03/17/fileless-uac-bypass-using-sdclt-exe/


修改註冊表,劫持/kickoffelev傳入的參數,實現「無文件」利用


具體方法如下:


新建註冊表鍵值:


HKCU:SoftwareClassesexefileshellrunascommand


新建項isolatedCommand,類型REG_SZ,內容作為啟動參數,可設置為notepad.exe


如圖

如何利用sdclt.exe繞過UAC?



接著在cmd下輸入:

sdclt.exe /KickOffElev


成功執行參數,啟動notetad.exe,如圖

如何利用sdclt.exe繞過UAC?



參數換成regedit.exe,啟動過程並未被UAC攔截,成功繞過


如圖

如何利用sdclt.exe繞過UAC?



但是通過創建註冊表鍵值exefileshellrunascommand會影響其他正常exe程序的啟動,所以在利用上需要先創建鍵值,執行sdclt.exe,之後再刪除該鍵值


整個過程通過powershell實現,完整POC可參考:

https://github.com/enigma0x3/Misc-PowerShell-Stuff/blob/master/Invoke-SDCLTBypass.ps1


0x04 防禦和檢測


防禦:UAC許可權設置為「Always Notify」,那麼該方法將會失效


檢測:


監控註冊表鍵值:


HKCU:SoftwareMicrosoftWindowsCurrentVersionApp Pathscontrol.exeHKCU:SoftwareClassesexefileshellrunascommand


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 嘶吼RoarTalk 的精彩文章:

黑客如何接管銀行的所有在線業務?
如何緩解Mimikatz WDigest Cleartext 竊取憑證?
京東白條爆嚴重BUG!不法分子POS機瘋狂套利
從上手到「直播」,一次智能震動棒Hacking之旅

TAG:嘶吼RoarTalk |

您可能感興趣

如何利用sdclt磁碟備份工具繞過UAC