权限维持之shift后门

367 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。 更新时间:2022.06.13

image.png

本文首发乌鸦安全知识星球

1. 原理

利用连按5下Shift漏洞破解win7开机密码。将c:windows/system32/sethc.exe替换为cmd.exe文件,达到新增用户、修改账号密码的的目的。 为了防止被发现,在这里不去修改原来的用户,通过mimikatz方式dump下来所有的NTLM值,并对其进行解密。 当然,除了这个程序之外,还有以下多个程序的快捷方式:

屏幕键盘: C:\Windows\System32\osk.exe
放大镜: C:\Windows\System32\Magnify.exe
旁白: C:\Windows\System32\Narrator.exe
显示切换器 C:\Windows\System32\DisplaySwitch.exe
应用切换器: C:\Windows\System32\AtBroker.exe

2. 环境准备

实验主机:Windows7旗舰版 (无任何杀软)

3. shift后门复现

3.1测试是否存在粘滞键

在正常登录的Windows7用户桌面连续摁5次shift键,看是否有粘滞键提示弹出: image.png 此时有弹出,证明其存在漏洞,然后将机器强制关机。

3.2 启动启动修复

在这里摁住option键,然后关机键就会变成断电键。 image.png 关机之后,再正常启动机器:

image.png 启动之后,再选择重新启动,就可以进入到启动启动修复模式: image.pngimage.png

3.3 替换sethc.exe为cmd

然后到这个界面,等待: image.pngimage.png 在这里选择查看问题详细信息:

image.pngimage.png

在这里选择文件——打开: image.pngimage.png 找到路径:c盘——Windows——system32——sethc.exe文件 image.pngimage.png

将该文件重新命名:

image.pngimage.png

再找到该目录下的cmd.exe,将该文件复制后修改为sethc.exe image.pngimage.png

重启机器: image.pngimage.png

3.4 添加新用户

重启之后,使用5次shift键打开cmd窗口:

image.pngimage.png

在这里如果直接修改test用户的密码,后面无法知道当前的密码,因此在这里添加一个新的用户进去,并将该用户添加到管理员组: image.pngimage.png 重启机器登录: image.pngimage.png

3.5 获取原用户密码

登录test2后之后,使用工具mimikatz工具将所有用户的密码dump下来: image.pngimage.png

privilege::debug 提取权限 sekurlsa::logonpasswords 抓取密码 image.pngimage.png 当前使用,只能抓到test2的用户密码,在这里我们需要test用户的账号和密码信息 在这里使用命令lsadump::lsa /inject能够导出所有用户的hash值:

image.pngimage.png

209c6174da490caeb422f3fa5a7ae634 通过解密可知当前密码为:admin

image.pngimage.png

3.6 删除新增用户

此时将机器重启,利用test admin进行登录,再将当前的test2用户删除: 进入环境之后,发现是无法找到cmd程序的,因此在这里需要找到已经修改过的sethc.exe,将其复制为cmd.exe: image.pngimage.png

此时即可通过cmd进行运行: image.pngimage.png

此时删除多余的用户即可: image.pngimage.png

4. 总结

本后门存在于Windows 2003、xp、win7等。

\