跳转到帖子

游客您好,欢迎来到黑客世界论坛!您可以在这里进行注册。

赤队小组-代号1949(原CHT攻防小组)在这个瞬息万变的网络时代,我们保持初心,创造最好的社区来共同交流网络技术。您可以在论坛获取黑客攻防技巧与知识,您也可以加入我们的Telegram交流群 共同实时探讨交流。论坛禁止各种广告,请注册用户查看我们的使用与隐私策略,谢谢您的配合。小组成员可以获取论坛隐藏内容!

TheHackerWorld官方

利用sdclt.exe绕过UAC学习笔记

精选回复

发布于

0x00 前言

马特Nelson @enigma0x3在最近的一篇文章中披露了一个绕过Win10 UAC的小技巧,可以通过修改HKCU下的注册表项绕过UAC。文章地址如下:

https://enigma0x 3 . net/2017/03/14/绕过-uac-using-app-paths/

https://enigma0x 3 . net/2017/03/17/file less-UAC-bypass-using-SD CLT-exe/

0x01 简介

本文将对其进行测试,分享测试经验,梳理该方法的攻防技巧。

0x02 原理

Sigcheck

可用于查看exe文件的清单。

下载地址:

https://technet.microsoft.com/en-us/sysinternals/bb897441.aspx

在Win10环境中,在cmd下运行:

sigcheck.exe-m c:\ windows \ system32 \ SD CLT . exe

2-0.png

level="requireAdministrator "

True意味着权限可以自动提升。

在Win7环境下,还可以使用Sigcheck查看sdclt.exe。

2-01.png

Level="as invoker "意味着特权不会被提升,这也是不支持Win7的原因。

接下来,使用ProcessMonitor监控sdclt.exe的启动过程,看看是否会调用其他程序。

0x03 实际测试

测试环境:Win 10 x64

注:

该方法仅在Win10中测试成功。

Cmd输入:

sdclt.exe

正常启动,如图所示

2-1.png

使用ProcessMonitor查看启动过程。

2-2.png

在sdclt.exe启动期间,将发现注册表项HKCU:\ software \ Microsoft \ windows \ current version \ app paths \ control.exe具有高权限。

如果您手动修改注册表项值并填写参数,则可以绕过UAC。

绕过方法如下:

新注册表项:

HKCU:\ Software \ Microsoft \ Windows \ current version \ App Paths \ control . exe

并将默认值设置为cmd.exe。

2-3.png

再次启动sdclt.exe,发现cmd.exe被执行,UAC被绕过,如图所示。

2-4.png

注:

启动的exe不能添加参数,否则会失败。

比如填C:\ windows \ system32 \ cmd.exe/c calc.exe,不能利用。

2-5.png

在实际使用过程中,如果需要添加参数,可以通过先将参数写入脚本,再加载脚本的方式来利用。

为了更好地隐藏和“无文件”利用,您可以尝试找出sdclt.exe中是否有一个命令支持传入参数。

马特nelson@ enigma0x 3的第二篇文章解决了这个问题。文章地址如下:

https://enigma0x 3 . net/2017/03/17/file less-UAC-bypass-using-SD CLT-exe/

修改注册表,劫持/kickoffelev传入的参数,实现“无文件”利用。

具体方法如下:

新注册表项:

HKCU:\软件\类\exefile\shell\runas\command\

创建一个新的REG_SZ类型的isolatedCommand,将其内容作为启动参数,可以设置为notepad.exe。

2-6.png

然后在cmd下输入:

sdclt.exe/基科夫列夫

成功执行参数并启动notetad.exe,如图所示

2-7.png

当该参数更改为regedit.exe时,启动过程不会被UAC拦截,并且会被成功绕过。

2-8.png

但是创建注册表项exefile\shell\runas\command\会影响其他正常exe程序的启动,所以需要先创建该项,执行sdclt.exe,然后删除该项。

整个过程由powershell实现,完整的POC可以参考:

https://github . com/enigma0x 3/Misc-PowerShell-Stuff/blob/master/Invoke-sdcltbypass . PS1

0x04 防御和检测

防御:

UAC权限设置为“总是通知”,则此方法将失败。

检测:

监控注册表键值:

HKCU:\ Software \ Microsoft \ Windows \ current version \ App Paths \ control . exe

HKCU:\软件\类\exefile\shell\runas\command\

留下回复

创建帐户或登录后发表意见

最近浏览 0

  • 没有会员查看此页面。