Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
antnium — 一个用 Go 编写的用于初始访问的 C2 框架 | Kitploit
工具/GitHubGitHub/dobin/antnium
数据泄露后渗透利用命令与控制红队Payload 开发远程访问木马Archived
GitHubdobin/antnium

antnium

一个用 Go 编写的用于初始访问的 C2 框架

查看仓库
200374年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Antnium

root@kitploit:~
Anti Tanium

一个用 Go 编写的 C2 框架和 RAT。

此源代码作为我的演讲 开发你自己的 RAT - AV 与 EDR 防御 的参考公开发布。 Antnium 旨在满足我自己的需求,而不是他人的需求。它适用于我所执行的攻击活动,但未必是一个通用型 C2 框架。

有两个组件:

  • client.exe:真正的 RAT / beacon / agent / implant
  • server.exe:C2 服务器

功能特性

  • HTTP/S 和 Websocket 通信信道
  • 代理支持(手动、Windows、认证和 Kerberos)
  • 命令执行
    • 直接 LOLbins
      • 先复制文件
      • 进程镂空
    • 交互式 cmd.exe/Powershell shell
    • 远程托管和非托管代码
      • 使用 donut
      • PE 到 shellcode
      • 加密
      • AMSI 绕过
  • 使用 Reflexxion 绕过 EDR(ntdll.dll 还原)
  • 加密通信
  • 可塑形 C2
  • 文件上传 / 下载
  • 文件浏览器

快速使用方法

下载并安装 go(以及 git)。

我们在此使用 127.0.0.1:8080 作为 C2 域名(因为我们在同一主机上启动 client.exe 和 server.exe,使用 localhost)。这也是默认值,无需更改。

在 campaign/campaign.go 中查看 campaign:

  • serverUrl = "http://127.0.0.1:8080"

在 Windows 上构建:

root@kitploit:~
> .\makewin.bat deploy

在 Linux 上构建:

root@kitploit:~
$ make deploy

启动 server 和 client:

root@kitploit:~
cd build\
.\server.exe
.\static\client.exe

启动 server.exe 后,在浏览器中打开以下 URL 以访问 WebUI:

root@kitploit:~
http://localhost:8080/webui/

目录结构

static/:工具的公共目录

将你想要在其他机器上下载的文件放在那里,比如 client.exe、wingman.exe。 以及你的工具,例如 mimikatz.exe 或 seatbelt.exe。但请使用更不起眼的文件名。

这些文件也可以通过 /secure API 获取,请求时使用加密文件名,响应为加密+base64 编码的文件。

通过 remote 执行选项(通过 /secure 访问)可以执行 dotNet 文件。

upload/:用于数据外传的私有目录

客户端上传的文件将存储在此处。

详细构建说明

安装 Go:

  • Windows:https://golang.org/doc/install
  • Linux:apt install golang gcc-mingw-w64

编译 client.exe 和 server.exe:

root@kitploit:~
> .\makewin.bat deploy

这将创建:

  • /build/server.exe
  • /build/server.elf
  • /build/static/client.exe
  • /build/static/client.elf
  • /build/static/wingman.exe
  • /build/upload/
  • /build/webui/

启动 server.exe:

root@kitploit:~
> cd build
> .\server.exe

Antnium 0.1
Loaded 0 packets from db.packets.json
Loaded 0 clients from db.clients.json 
Periodic DB dump enabled
Starting webserver on 127.0.0.1:8080  

启动 client.exe:

root@kitploit:~
> .\build\static\client.exe

Antnium 0.1
time="2021-09-02T21:48:16+02:00" level=info msg="UpstreamHttp: Use WS"
time="2021-09-02T21:48:16+02:00" level=info msg="Connecting to WS succeeded"
time="2021-09-02T21:48:16+02:00" level=info msg=Send 1_computerId=c4oil02sdke2sp3nfngg 2_packetId=0 3_downstreamId=client 4_packetType=ping 5_arguments="map[]" 6_response=...
time="2021-09-02T21:48:16+02:00" level=info msg=Send 1_computerId=c4oil02sdke2sp3nfngg 2_packetId=0 3_downstreamId=client 4_packetType=ping 5_arguments="map[]" 6_response=...

关于交叉编译的说明

从 Linux 交叉编译 Windows 客户端是可行的,但需要一些手动 GO gcc 命令行技巧,因为存在一些 Windows 依赖项。如果无法立即正常工作,请在 Windows 本身上编译 Windows 客户端(makewin.bat client)。

关于 Campaign 配置的说明

pkg/campaign/campaign.go 将编译后的 client.exe 与特定的 server.exe 关联起来,从而形成一个 campaign。 每个 campaign 拥有独立的加密和认证密钥,这些密钥在 server 和 client 之间共享。

root@kitploit:~
type Campaign struct {
	ApiKey      string  // Key used to access client facing REST
	EncKey      []byte  // Key used to encrypt packets between server/client

	ServerUrl   string  // URL of the server, as viewed from the clients
}

管理 UI / 操作员密钥位于 pkt/server/config.go:

root@kitploit:~
type Config struct {
	AdminApiKey string
}

请注意,ServerUrl 是客户端与服务器进行所有交互时使用的 URL。 它是公开的服务器 URL,例如 http://totallynotmalware.ch。实际的 server.exe 可能位于反向代理之后,并通过 server.exe --listenaddr 127.0.0.1:8080 启动(因此 ServerUrl 不一定等于 listenaddr)。

关于服务器访问的说明

首次连接到服务器时,你需要先访问并配置 UI。

Angular UI 文件是公开可访问的。假设 ServerUrl="http://localhost:8080" 且 listenaddr=0.0.0.0:8080。你可以:

  • 使用集成的 antniumui,在浏览器中访问 http://localhost:8080/webui
  • 或者从 antniumui 目录运行 ng serve,然后在浏览器中打开 http://localhost:4200

在浏览器中连接 UI 时,你需要先配置服务器 IP 及其密码:

  • AdminApiKey(默认值:"Secret-AdminApi-Key",与配置默认值相同)
  • ServerIP(默认值:"http://localhost:8080")
  • User(可选,可随机选择)

客户端

已在以下环境测试:

  • Windows 10
  • Ubuntu 20.04 LTS

在 Windows 上编译:

root@kitploit:~
> .\makewin.bat client

将其部署到你的目标上。

服务器

已在以下环境测试:

  • 可用:Ubuntu 20.04 LTS,Go 1.13.8
  • 可用:Windows 10,Go 1.16.6
  • 编译失败:Ubuntu 16.04 LTS,Go 1.6.2

在 Linux 上:

root@kitploit:~
$ make server
$ mkdir -p static upload
$ ./server --listenaddr 0.0.0.0:8080

结果为 server.exe。请确保在包含或预期包含以下内容的目录中运行它:

  • upload/
  • static/
  • db.*.json 作为工作目录。

它将在该端口上启动一个 REST 服务器,提供:

  • /:面向客户端的 REST
  • /ws:面向客户端的 Websocket
  • /admin:管理员接口的 REST(添加数据包、获取客户端)
  • /adminws:管理员接口的 Websocket(推送数据包)
  • /webui:管理员接口的 HTML 文件(Angular 源码和 HTML,访问 REST 和 Websocket)

在它前面放置一个反向代理(确保它支持 websockets!)或转发端口。

选项

对于手动代理,请使用完整的 HTTP URL:

root@kitploit:~
client.exe -proxy http://proxy:8080

或通过环境变量:

root@kitploit:~
export PROXY http://localhost:8080
./client

Wingman

Wingman 基本上就是 Client,但不直接连接 C2。 它可以连接到 localhost:50000 上现有的客户端(如果 Campaign.AutoStartDownstreams 为 false,请确保该客户端已启动)

连接到 localhost 的 50000 端口:

root@kitploit:~
wingman.exe

或者使用 rundll32.exe 加载 dll(使用 system32 中的 64 位 rundll32 版本,而不是 C:\Windows\SysWOW64\rundll32.exe 中的 32 位版本):

root@kitploit:~
C:\Windows\System32\rundll32.exe .\wingman.dll,Start

它将作为下游 net#0 出现。

测试

root@kitploit:~
go test ./...

可能仍存在竞态条件。如果失败一次,只需再次执行即可。

下载工具