Skip to content

ix111/Havoc

 
 

Repository files navigation

Havoc C2 二次开发版本(Custom Fork of Havoc C2)

📌 简介

本项目是基于开源 C2 框架 Havoc 的二次开发版本。

我进行 Havoc 的二次开发,最主要的动机是为了深入学习和理解现代 C2 框架的实现原理与高级规避技术

Havoc 是当前市面上最有潜力的开源 C2 框架之一,它具备:

  • ✅ 完整的客户端图形界面
  • ✅ 高度模块化、可拓展性强
  • ✅ Agent 拥有极强的规避能力,采用了许多高级技术(如动态加载、内存执行等)
  • ✅ 支持 BOF、SOCKS 等常见 C2 功能

以上特性使其非常值得学习和使用。


❗️问题与改进动机

然而,在实际使用 Havoc 的过程中,也发现了以下几个问题:

  • 🇨🇳 在国内部署比较麻烦,需要额外的环境配置或改动

  • 🕵️‍♂️ 存在明显的流量特征,例如:

    • ctx.Header("X-Havoc", "true")
    • 默认 Magic Value 为 0xDEADBEEF,容易被检测
  • 🧱 虽然规避能力强,但开发者明确表示:

    The Havoc Framework hasn't been developed to be evasive. Rather it has been designed to be as malleable & modular as possible. Giving the operator the capability to add custom features or modules that evades their targets detection system.

    也就是说,规避能力需要用户自行实现模块化增强。


🔧 二开内容(已完成)

  • 🚨 增强进程获取模块:增加对常见杀软进程的识别

  • 📦 清除流量特征

    • 移除或自行替换 HTTP 头字段 X-Havoc
    • 更改 Magic Value 值(原为 0xDEADBEEF,可自行替换)
  • 🛠 解决国内部署问题

    • teamserver部署选择国外vps,或者使用代理下载如下内容传至teamserver,配置 GOPROXY 环境变量,然后安装官方教程正常安装

      # 编译器下载
      https://musl.cc/x86_64-w64-mingw32-cross.tgz -> /tmp/mingw-musl-64.tgz
      https://musl.cc/i686-w64-mingw32-cross.tgz -> /tmp/mingw-musl-32.tgz
      
      # 配置 GOPROXY 环境变量
      export GOPROXY=https://goproxy.io,direct
    • client部署时,会clone github的资源,所以需要开启全局tun代理,或者更改makefile,在如下内容添加proxychains,使用proxychains代理clone资源,proxychains 自行配置

      client-build:
      	@ echo "[*] building client"
      	@ git submodule update --init --recursive
      	@ mkdir -p client/Build; cd client/Build; cmake ..
      	@ if [ -d "client/Modules" ]; then echo "Modules installed"; else git clone --recurse-submodules https://github.com/HavocFramework/Modules client/Modules --single-branch --branch `git rev-parse --abbrev-ref HEAD`; fi
      	@ cmake --build client/Build -- -j 4

🛠 TODO List(开发中/计划中)

  • 🔐 流量加密机制重构
    • 借鉴 Cobalt Strike:采用 RSA + AES 组合加密通信,增强抗流量检测能力
  • 🪟 客户端支持 Windows 编译
    • 当前官方支持 Linux,计划修改为支持 Windows 构建客户端 GUI
  • 🧩 更好地支持 Linux Agent(如 Shaco)

🧑‍💻 参考项目


如果你有建议或想法,欢迎一起交流、学习和完善这个项目!

About

Havoc C2 二次开发

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 44.5%
  • C 32.3%
  • C++ 17.8%
  • Ragel 4.1%
  • CMake 0.2%
  • Ruby 0.2%
  • Other 0.9%