close

關於Auto-Elevate

Auto-Elevate是一款功能強大的Windows系統安全測試工具,該工具可以在不需要離邕任何LPE漏洞的情況下,通過結合COM UAC繞過技術和令牌偽造技術,幫助廣大研究人員將低完整性的管理員賬號提升至NT AUTHORITY\SYSTEM。

該工具能夠實現UAC以及其他一些Windows內置功能的繞過,該工具能夠自動定位winlogon.exe,並能夠竊取和模擬該程序的進程令牌,然後使用竊取來的令牌生成一個新的系統級進程。

值得一提的是,該工具結合了UACME實用工具的UAC繞過技術,感興趣的同學可以搜索了解該工具所實現的ICMLuaUtil UAC繞過方法(#41)。

技術介紹

該工具是一款功能強大的提權和系統安全測試工具,下圖顯示的是Auto-Elevate將一個低等級權限的管理員賬號提升為SYSTEM的步驟流程:

工具運行流程

1、工具通過使用CreateToolhelp32Snapshot、Process32First和Process32Next來枚舉目標系統中正在運行的進程以查找定位winlogon.exe;

2、通過調用AdjustTokenPrivileges來為當前進程啟動SeDebugPrivilege,因為我們需要為winlogon.exe開啟一個句柄;

3、通過調用OpenProcess來打開一個winlogon.exe進程句柄,此時將會調用到PROCESS_ALL_ACCESS;

4、工具將通過調用OpenProcessToken並結合之前獲得的進程句柄來檢索winlogon的進程令牌句柄;

5、通過調用ImpersonateLoggedOnUser來偽造winlogon用戶;

6、通過使用SecurityImpersonation來調用DuplicateTokenEx並複製偽造的令牌句柄,這將創建一個我們可以使用的令牌副本;

7、在令牌副本的幫助下,我們就可以通過調用CreateProcessWithTokenW來生成一個新的CMD實例了;

工具下載

廣大研究人員可以使用下列命令將該項目源碼克隆至本地:

git clone https://github.com/FULLSHADE/Auto-Elevate.git

接下來,將.cpp文件導入到Visual Studio中編譯後即可直接使用。

工具使用

下圖中演示了如何在Windows 10 21H1操作系統平台上,使用UACME結合Auto-Elevate來將一個低等級權限的管理員賬號提升為NT AUTHORITY\SYSTEM:

下圖演示了如何在不使用UAC繞過技術的情況下,將一個高低等級權限的管理員賬號提權為SYSTEM:

項目地址

https://github.com/FULLSHADE/Auto-Elevate

參考資料

https://attack.mitre.org/techniques/T1134/

https://attack.mitre.org/techniques/T1134/001/

https://attack.mitre.org/techniques/T1134/002/

https://attack.mitre.org/techniques/T1134/003/



精彩推薦





arrow
arrow
    全站熱搜
    創作者介紹
    創作者 鑽石舞台 的頭像
    鑽石舞台

    鑽石舞台

    鑽石舞台 發表在 痞客邦 留言(0) 人氣()