Windows 2019 Bypass (UAC、Defender) to Metasploit
0x00 前言
昨天下午在小密圈看到一篇文章:https://egre55.github.io/system-properties-uac-bypass/
文中指出SystemPropertiesAdvanced.exe
有DLL劫持漏洞,經過分析,在Windows 10下無法復現
之前也做過關於DLL劫持、Bypass UAC的議題:DLL Hijacking & COM Hijacking ByPass UAC - 議題解讀
在向下閱讀前,請先掌握DLL劫持和Bypass UAC的基本知識。
微信交流群,加我微信:Guest_Killer_0nlis。
0x01 Cooolis
Cooolis是我寫的一個支援MSF與Cobaltstrike上線的載入器,能夠100%繞過絕大部分殺軟,包含國內90%以上、Windows Defender等。
之前發出了演示視訊,在這裡可以看到:Cobalt Strike - Metasploit Bypass AV
然後這個作業系統缺陷由於擁有自動許可權提升的許可權autoElevate
屬性,我們可以利用它來執行Cooolis,使得Coolis上線的會話同樣擁有管理員許可權。
關於Bypass UAC的挖掘方法與原理,我的議題已經轉化成了視訊:
0x02 效果演示
Windows 2019中的C:\Windows\SysWOW64\SystemPropertiesAdvanced.exe
在執行時,會尋找srrstr.dll
,這個DLL檔案並不存在於:
- C:\Windows\SysWOW64\srrstr.dll
- C:\Windows\System\srrstr.dll
- C:\Windows\srrstr.dll
- C:\Windows\SysWOW64\wbem\srrstr.dll
- C:\Windows\SysWOW64\WindowsPowershell\v1.0\srrstr.dll
- C:\Users<Username>\APPData\Local\Microsoft\WindowsApps\srrstr.dll
在最後它會尋找C:\Users\<Username>\APPData\Local\Microsoft\WindowsApps\
這個目錄,而這個目錄的讀寫是不需要觸發UAC獲得管理員許可權來操作的。
由此,可以利用該缺陷,將Coolis轉換成DLL,上傳至C:\Users\<Username>\APPData\Local\Microsoft\WindowsApps\
,緊接著執行SystemPropertiesAdvanced.exe,它會自動將srrstr.dll
載入至SystemPropertiesAdvanced.exe程序的記憶體,同樣的,我們也就擁有了管理員許可權。
在此之前,我有想過在下列模組裡做一些優化:
- exploit/windows/local/bypassuac_fodhelper
- exploit/windows/local/bypassuac_injection
- exploit/windows/local/bypassuac_comhijack
我覺得COM劫持的空間還是很大的,並且也一定程度上能夠bypass AV。
Demo:
0x03 總結
UAC、DLL劫持、COM劫持的問題肯定還會有很多、但是以前的輪子到現在拿起來用基本上都會被行為攔截,這就需要掌握原理去自己探索、創造。
系統映象:ed2k://|file|cn_windows_server_2019_x64_dvd_4de40f33.iso|5086887936|7DCDDD6B0C60A0D019B6A93D8F2B6D31|/