发布于2022年11月4日3年前 如何使用Auto-Elevate实现UAC绕过和权限提升 关于Auto-ElevateAuto-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:项目地址Auto-Elevate:【GitHub传送门】参考资料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/本文作者:Alpha_h4ck
创建帐户或登录后发表意见