knifesec/kCaddy

GitHub: knifesec/kCaddy

基于 Docker 和 YAML 配置的 Caddy 重定向器,帮助红队快速部署加固型流量代理,尤其适配 Evilginx 前端场景。

Stars: 3 | Forks: 0

# kCaddy 一个 YAML 文件。一条 Docker 命令。在 Evilginx 前端部署一个经过强化且灵活的 Caddy 重定向器。 ![kCaddy 主图占位符](https://knifesec.com/images/k/blog/kcaddy/kcaddy.webp) ## 什么是 kCaddy kCaddy 是一个 Docker 项目,旨在为红队操作员提供对 HTTP 流量的精确控制。 您可以在单个 `kcaddy.yml` 文件中定义您的基础设施:响应头、IP/User-Agent 过滤器、路径和匹配器逻辑、反向代理配置文件以及自定义错误处理。 如需完整的模式级别文档及所有可用的键,请使用网站上的官方项目文档。 ## 相关 knifesec.com 页面 - 博客文章:[https://knifesec.com/blog/kcaddy-redirector-evilginx/](https://knifesec.com/blog/kcaddy-redirector-evilginx/) - 文档:[https://knifesec.com/projects/kcaddy/](https://knifesec.com/projects/kcaddy/) ## 为什么会有这个项目 经过多年在钓鱼和 C2 操作中手动复制和调整 Caddy 重定向器配置后,我们的目标是打造一个可重用、快速部署的结构,并对流量行为拥有强大的控制力。 kCaddy 将可重用的辅助配置文件(headers、filters、matchers、reverse proxy)编译成有效的 Caddyfile,以便操作员能够: - 控制接受或拒绝哪些流量 - 模糊化基础设施指纹 - 在具备更好操作控制的情况下安全代理 Evilginx - 通过 `custom_config` 应急通道保持定制的灵活性 ## 快速开始 在运行以下命令之前,请安装: - Docker:[https://docs.docker.com/get-docker/](https://docs.docker.com/get-docker/) - Task:[https://taskfile.dev/installation/](https://taskfile.dev/installation/) ``` git clone https://github.com/knifesec/kcaddy.git cd kcaddy cp config/kcaddy.yaml.example config/kcaddy.yml cp docker/docker-compose.yml.example docker/docker-compose.yml cd task task build task copyconfig task up ``` ## 运行时模型 kCaddy 的设计围绕挂载在 `/etc/caddy`(通过 `KCADDY_ROOT`)的单个 Docker 卷展开,因此配置、生成的文件、日志、资产和 TLS 状态都集中在一个位置。这使得在不同任务之间进行部署检查、备份和拆除变得更加容易。 默认情况下,Docker 将此命名卷存储在主机的以下位置: - `/var/lib/docker/volumes/kcaddy_runtime/` ## 包含 Evilginx 示例 相关的博客文章和 `config/kcaddy.yaml.example` 都包含了多个实际示例,展示了如何在 Evilginx(免费版和专业版)前端运行 kCaddy,其应用场景围绕: - Google - Okta - Microsoft 所有的实现细节、设置流程和操作上下文均记录在博客文章中。
标签:ATT&CK模拟, C2基础设施, C2重定向器, Caddy, Docker, Evilginx, Malleable C2, YAML配置, 中间人攻击, 反向代理, 安全防御评估, 数据展示, 日志审计, 流量伪装, 红队, 红队作战, 网络安全, 网络攻防, 网络流量控制, 请求拦截, 隐私保护