瑞昌| 黑山| 杭锦后旗| 定结| 乌伊岭| 五通桥| 正阳| 巴林右旗| 魏县| 波密| 大同区| 麻山| 朗县| 黄龙| 海晏| 达坂城| 保德| 盈江| 济源| 武邑| 阜新蒙古族自治县| 道真| 曲沃| 天安门| 长白| 长春| 扎兰屯| 湖口| 武威| 乐安| 大城| 泰州| 丹江口| 秀山| 广东| 宿迁| 兴海| 阎良| 东平| 丹阳| 大石桥| 洛宁| 稷山| 凤冈| 博白| 翁源| 金华| 土默特左旗| 彝良| 双鸭山| 宁安| 卓尼| 威远| 都兰| 合江| 聊城| 茂港| 单县| 西安| 西峡| 兴城| 乌拉特中旗| 定南| 夏津| 临川| 雅江| 莲花| 西安| 赣榆| 临潭| 武都| 蚌埠| 东至| 桓台| 句容| 沐川| 闵行| 陵水| 安宁| 彝良| 林周| 永吉| 垦利| 银川| 龙州| 石嘴山| 凤城| 菏泽| 让胡路| 永昌| 盐田| 张家界| 重庆| 武定| 孟村| 广德| 伊宁县| 新泰| 利川| 雅安| 峨边| 怀安| 临县| 南乐| 新田| 武进| 偃师| 彰化| 新竹市| 苍南| 新邵| 林芝县| 水城| 广宗| 邵东| 喀喇沁旗| 莒南| 申扎| 华安| 丘北| 新绛| 北流| 慈溪| 常州| 大丰| 襄樊| 浦江| 临城| 雷州| 横峰| 玉林| 龙江| 盱眙| 梁子湖| 西青| 博爱| 喀喇沁旗| 永城| 五通桥| 故城| 察哈尔右翼前旗| 万年| 万山| 仁化| 浮梁| 乌马河| 杞县| 岑溪| 宜城| 惠安| 云安| 青海| 中宁| 潢川| 梅河口| 屯留| 西固| 文昌| 沙县| 松江| 庆安| 建昌| 澄海| 湘潭县| 潜山| 广元| 襄阳| 凯里| 石嘴山| 积石山| 铁山| 邕宁| 交口| 格尔木| 龙川| 临汾| 井陉| 绩溪| 广灵| 易县| 黔江| 井研| 甘孜| 乌什| 鄂州| 石阡| 阿勒泰| 戚墅堰| 大方| 临淄| 仁怀| 盐山| 谢通门| 大安| 竹山| 巍山| 萨嘎| 湖州| 宣化区| 三江| 昌吉| 武平| 景东| 乌尔禾| 景德镇| 禹州| 丰县| 怀宁| 柳江| 龙江| 杭州| 陆良| 库伦旗| 连云区| 临夏市| 和顺| 新县| 南阳| 高淳| 墨脱| 循化| 光泽| 孟村| 喜德| 正蓝旗| 姜堰| 康马| 石城| 奈曼旗| 天水| 沁阳| 黄山市| 丁青| 台中县| 韶关| 嘉峪关| 电白| 松原| 德庆| 汤原| 鱼台| 九江县| 张家口| 海伦| 勐腊| 民乐| 龙泉| 丽水| 峨眉山| 楚雄| 新蔡| 勐海| 镇沅| 琼结| 江永| 石龙| 称多| 穆棱| 南郑| 新青| 鹤庆| 惠州| 庄河| 张北|
|
|
51CTO旗下网站
|
|
移动端

安全 | 利用metasploit绕过UAC的5种方式

今天,我们将浅析用户帐户控制(简称UAC)。我们还将了解它如何保护你免受恶意软件的入侵,如若忽略UAC提示,可能会对你的系统造成不良影响。

作者:佚名来源:4hou|2018-11-15 12:56

大家好,今天,我们将浅析用户帐户控制(简称UAC)。我们还将了解它如何保护你免受恶意软件的入侵,如若忽略UAC提示,可能会对你的系统造成不良影响。

一、用户账户控制(UAC)介绍

1. 什么是用户账户控制?

在Microsoft Windows Vista和Windows Server 2008操作系统中引入了结构良好的用户帐户控制,因为不必要的系统范围的更改是难以避免的,而UAC策略可以防止这种更改,并且只需要很少的工作量。

换句话说,它是Windows的一项安全功能,它可以让我来防止对操作系统进行未经授权的修改。UAC确保某些修改只能在administrator授权下才能进行。如果administrator不允许更改,则不会执行这些更改,Windows保持不变。

2. UAC工作原理?

UAC阻止程序执行涉及系统更改/特定任务的任何任务。除非尝试执行它们的进程以管理员权限运行,否则这些操作将无法运行。如果以管理员身份运行程序,它会具有更多权限,因为与未以管理员身份运行的程序相比,它的权限得到了提升。

没有管理员权限就无法完成的一些事情:

  • 注册表修改(如果注册表项在HKEY_LOCAL_MACHINE下(因为它影响多个用户),它将是只读的)
  • 加载设备驱动程序
  • DLL注入
  • 修改系统时间(时钟)
  • 修改用户帐户控制设置(通过注册表,可以启用/禁用它,但你需要正确的权限才能执行此操作)
  • 修改受保护的目录(例如Windows文件夹,Program Files)
  • 计划任务(例如,以管理员权限自动启动)

UAC不会自动阻止恶意软件,目的并不是判断程序是否是恶意软件。是不是恶意软件还是得取决于用户。如果要以管理员权限执行程序,UAC将提醒用户并且需要用户进行确认。

二、绕过UAC的5种方法

首先对目标机器进行漏洞利用以获取meterpreter会话。获得meterpreter会话1后,输入以下命令以检查系统权限和特权。

  1. getsystem 
  2. getuid 

如果你没有系统/管理员权限,那么你就需要绕过目标系统的UAC保护。

1. Windows升级UAC保护绕过

此模块将通过进程注入利用受信任的发布者证书绕过Windows UAC。这将产生第二个shell,而且UAC保护已经关闭。

  1. msf > use exploit/windows/local/bypassuac 
  2. msf exploit windows/local/bypassuac) > set session 1 
  3. msf exploit(windows/local/bypassuac) > exploit 

从下图可以看到,又建立了一个meterpreter会话2连接,现在输入getsystem和getuid两条命令来查看系统权限:

太好了,我们获得了NT AUTHORITY\SYSTEM权限。现在你只要输入shell命令,你就会进入一个具有管理员权限的命令行窗口。

2. Windows升级UAC保护绕过(内存注入)

此模块将通过进程注入利用受信任的发布者证书绕过Windows UAC。这将产生第二个shell,而且UAC保护已经关闭。此模块使用反射DLL注入技术仅删除DLLpayload二进制文件而不是删除标准技术中的三个单独的二进制文件。但是,它需要选择正确的体系结构(对于SYSWOW64系统也使用x64)。如果指定EXE :: Custom,你的DLL应该在单独的进程中启动payload后调用ExitProcess()。

  1. msf > use exploit/windows/local/bypassuac_injection 
  2. msf exploit(windows/local/bypassuac_injection) > set session 1 
  3. msf exploit(windows/local/bypassuac_injection) > exploit 

从下图中可以看出,meterpreter 会话2已经成功打开,现在输入getsystem和getuid两条命令来查看权限。

最终,你也会拿到NT AUTHORITY\SYSTEM权限,现在只需要输入shell命令,就可以进入一个具有管理员权限的命令行窗口。

3. Windows升级UAC保护绕过(FodHelper注册表键值绕过)

此模块将通过在当前用户配置单元下劫持注册表中的特殊键并插入将在启动Windows fodhelper.exe应用程序时调用的自定义命令来绕过Windows 10 UAC。这将产生第二个shell,而且UAC保护已经关闭。此模块修改注册表项,但在调用payload后清除该项。该模块不要求payload的结构与OS匹配。如果指定EXE :: Custom,你的DLL应该在单独的进程中启动payload后调用ExitProcess()。

  1. msf > use exploit/windows/local/bypassuac_fodhelper 
  2. msf exploit(windows/local/bypassuac_fodhelper) > set session 1 
  3. msf exploit(windows/local/bypassuac_fodhelper) > exploit 

从下图中,可以看到,meterpreter会话2已经成功打开,输入getsystem和getuid两条命令来查看权限

非常不错,我们获得了NT AUTHORITY\SYSTEM权限,输入shell命令,就能拿到管理员的命令行窗口了。

4. Windows升级UAC保护绕过(Eventvwr注册表键值绕过)

此模块将通过在当前用户配置单元下劫持注册表中的特殊键并插入自定义命令,这个命令将在启动Windows fodhelper.exe应用程序时调用来绕过Windows 10 UAC。这将产生第二个shell,而且UAC保护已经关闭。此模块修改注册表项,但在调用payload后清除该项。该模块不要求payload的结构与OS匹配。如果指定EXE :: Custom,你的DLL应该在单独的进程中启动payload后调用ExitProcess()。

执行命令如下:

  1. msf > use exploit/windows/local/bypassuac_eventvwr 
  2. msf exploit(windows/local/bypassuac_eventvwr) > set session 1 
  3. msf exploit(windows/local/bypassuac_eventvwr) > exploit 

从下图中,可以看到,meterpreter会话2已经上线,输入getsystem和getuid两条命令来查看是否是system权限。

再一次,我们获取了NT AUTHORITY\SYSTEM权限。

5. Windows升级UAC保护绕过(COM Handler劫持绕过)

此模块将通过在HKCU配置单元中创建COM处理程序注册表项来绕过Windows UAC。加载某些高完整性进程时,会引用这些注册表项,从而导致进程加载用户控制的DLL。这些DLL包含导致会话升级的payload。在payload调用后清除注册表项修改。

此模块要求payload的体系结构与OS匹配,但当前的低权限Meterpreter会话的体系结构并不相同。如果指定EXE :: Custom,你的DLL应该在单独的进程中启动payload后调用ExitProcess()。此模块通过目标上的cmd.exe调用目标二进制文件。因此,如果限制cmd.exe访问,则此模块将无法正常运行。

  1. msf > use exploit/windows/local/bypassuac_comhijack 
  2. msf exploit(windows/local/bypassuac_comhijack) > set session 1 
  3. msf exploit(windows/local/bypassuac_comhijack) > exploit 

如下图所示,meterpreter会话2已经建立连接,输入getsystem和getuid两条命令来查看是否是system权限。

最终,还是得到了NT AUTHORITY\SYSTEM权限,同理,输入shell获取管理员权限的命令窗口。如此一来,我们便借助了metasploit 后渗透漏洞利用来绕过UAC保护了。

【编辑推荐】

  1. 恶意软件的终极指南 密码窃取器变得更加复杂和危险
  2. 走进几维安全,听CTO刘柏江讲述他们想做的事儿
  3. 黑客基础之Metasploit渗透测试平台模块简介
  4. 保护云计算免受恶意软件攻击需要了解的内容
  5. 敲黑板!知识点!恶意软件、蠕虫、木马病毒知多少?
【责任编辑:赵宁宁 TEL:(010)68476606】

点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

ASP快速建站全程实录

本书从一个网站制作过程入手,详细介绍基于ASP技术建设网站的全过程。全书共10章。第1章,网站制作规划与流程;第2章,IIS安装与调试;第3...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊
金鱼池 中小河 洑溪 灵官庙 通河
竹仙洞 高唐镇 岭树洋 双滦 永清街
董三尧 里海医院 孙胡沟村 曾厝村 法兰克福
龙村墟 松林小学 镇康县 凤仪乡 李公纪家胡同
克隆侠蜘蛛池 http://www.kelongchi.com/