本文档说明发布产物、初始化启动、凭证登录和首次构建流程。内容基于当前仓库代码和发布配置。
Release 中的主要二进制如下:
malice_network_<os>_<arch>: server / listener 端iom_<os>_<arch>: client 端
对应关系来自当前 .goreleaser.yml:
- server 构建产物命名为
malice_network_* - client 构建产物命名为
iom_*
首次启动可使用交互式向导:
./malice_network_linux_amd64 --quickstart向导会生成初始化所需的核心配置:
- server 外网 IP
- gRPC 监听地址和端口
- 默认 listener 名称与 IP
- 需要启用的 pipeline 类型
- 可选的构建源配置
- 可选的通知配置
已准备 config.yaml 时,可直接启动:
./malice_network_linux_amd64 -i <public-ip>常用参数:
-c, --config: 指定配置文件路径,默认是config.yaml-i, --ip: 覆盖配置里的外网 IP--server-only: 只启动 server--listener-only: 只启动 listener--quickstart: 仅在配置文件不存在时运行初始化向导--debug: 打开 debug 日志
按当前代码,首次初始化后通常会在工作目录生成:
config.yaml: 默认配置文件admin_<server-ip>.auth: client 登录凭证listener.auth: 默认 listener 的 mTLS 凭证
将 admin_<server-ip>.auth 放到 client 可访问的位置后执行:
./iom_linux_amd64 login ./admin_<server-ip>.auth导入成功后,client 会把凭证复制到本地配置目录:
- Linux / macOS:
~/.config/malice/configs - Windows:
%USERPROFILE%/.config/malice/configs
之后可以直接启动 client:
./iom_linux_amd64当前默认 server/config.yaml 会启用这些基础能力:
- TCP pipeline:
tcp, 默认端口5001 - HTTP pipeline:
http, 默认端口8080 - REM pipeline:
rem_default - gRPC 控制面端口:
5004
更详细的 listener 和 pipeline 说明看:
Malice Network 的构建入口位于 client,基本流程如下:
- 准备 pipeline
- 创建 profile
- 执行
build
一个最小示例:
./iom_linux_amd64 profile new --name tcp-demo --pipeline tcp
./iom_linux_amd64 build beacon --profile tcp-demo --target x86_64-pc-windows-gnu --source docker注意:
--pipeline需要填现有 pipeline 名称,不是随便写的标签--source需要与 server 端已启用的构建源匹配- 常见构建源是
docker、action、saas
更完整的构建说明看 server/build.md。
- Client 命令总览: client/commands.md
- MAL 插件开发: development/mal/
- Implant 概览: implant/overview.md
- 架构图: architecture.md