BypassUAC方式总结

一、利用场景/需求

1.1 UAC介绍

UAC(UserAccount Control,用户账户控制)简言之就是在Vista及更高版本中通过弹框进一步让用户确认是否授权当前可执行文件来达到阻止恶意程序的目的。
在这里插入图片描述

1.2 目的绕过

为了远程执行目标的exe或者bat可执行文件绕过此安全机制,以此叫BypassUAC(不进行弹窗直接运行执行文件)

具体的场景可参考 Windows远程桌面单用户同时登录 的标题四 “Win7/Win10单用户同时远程登录(场景二:BypassUAC提权)”

二、MSF之bypassuac模块提权

演示环境:
Kali IP:10.32.22.238
Windows7 IP(target):10.32.22.243

2.1 bypassuac模块提权

原理: 通过进程注入使可信任发布者证书绕过Windows UAC。

》》获得了一msf shell,发现其为普通用户在这里插入图片描述
》》使用getsystem尝试提权(提权失败)
在这里插入图片描述
》》将session置于后台
在这里插入图片描述
》》加载bypassuac模块
在这里插入图片描述
》》配置参数,加载payload
在这里插入图片描述
》》切换到session2 成功提权
在这里插入图片描述

2.2 bypassuac_injection模块提权

原理: 此模块通过内存注入使用可信任的发布者证书绕过UAC(该模块需要选择正确的体系架构)

》》加载模块
在这里插入图片描述
》》进行参数配置
在这里插入图片描述
》》执行payload即可成功

如果未选择和目标系统匹对的操作系统执行会显示如下操作系统不配对错误:
在这里插入图片描述

2.3 bypassuac_eventvwr / bypassuac_fodhelper模块提权

原理: 通过当前用户配置单元下劫持注册表中特殊的键并插入将在启动Windows时间查看器 / fodhelper.exe应用程序时调用自定义命令来绕过UAC。(这两个模块调用注册表项在调用payload清除该项,不需要payload的体系架构和操作系统匹配!)

》》获得了一msf shell,发现其为普通用户
在这里插入图片描述
》》使用getsystem尝试提权(提权失败)
在这里插入图片描述
》》将session置于后台
在这里插入图片描述
》》使用bypassuac_eventvwr模块
在这里插入图片描述
》》加载payload
在这里插入图片描述
》》指向后台运行的session 1
在这里插入图片描述
》》检查配置
在这里插入图片描述

Tips:执行不成功对目标的操作系统进行更换(上图中的3)
set target 1 (0为x86操作系统;1为x64操作系统),这里我目标操作系统时x64的使用了0执行成功了,1未成功,注意这个实际中我环境是矛盾的!

》》执行
在这里插入图片描述
》》退到后台进到session 2
在这里插入图片描述
》》使用getsystem提权(提权成功)
在这里插入图片描述
》》再次查看用户权限(系统权限)
在这里插入图片描述
》》成功执行目标系统脚本(成功绕过UAC)
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Aaron_Miller/article/details/109587355