baton202023-bot/Shqiponja-C2

GitHub: baton202023-bot/Shqiponja-C2

一个基于 TLS 加密的轻量级 C2 框架,用于教育性红队演练和检测工程实践。

Stars: 0 | Forks: 0

# Shqonja-C2 **一个轻量级的、基于 TLS 加密的 Command & Control (C2) 框架,用于教育性的红队演练和检测工程。** Shqiponja(意为“雄鹰”)是一个概念验证,旨在演示现代异步恶意软件的核心机制。该项目展示了 Agent 如何使用原生 Windows 库通过加密通道“偷运”数据。 ## 项目概述 与基于基础 Socket 的脚本不同,**Shqiponja-C2** 利用原生 ``WinHTTP`` 库和 TLS 加密来模拟合法的 Web 流量。这使其成为测试现代 EDR 和 AV 解决方案“盲区”的理想工具。 ### 主要功能 * **加密通信 (TLS):** 所有流量均通过 HTTPS 加密,使用 Python 的 ``ssl`` 模块以及带有 ``WINHTTP_FLAG_SECURE`` 标志的 C++ ``WinHTTP``。 * **The Nest (Python C2):** 一个多线程服务器,能够管理命令队列并拦截 Base64 编码的文件传输。 * **The Talon (C++ Agent):** 一个隐蔽的 DLL Agent,通过隐藏管道执行命令并向服务器回连。 * **自动化投递:** 包含一个利用 ``certutil.exe``(Living off the Land 技术)来获取并执行 Payload 的 VBA Stager。 ## 🛠️ 架构 1. **Stager (VBA):** 使用 ``certutil`` 下载 DLL,并通过 ``rundll32.exe`` 执行。 2. **Beaconing:** Agent 发起 TLS 握手并发送一个 JSON “init” 数据包。 3. **Tasking:** 服务器响应一个排队的命令(例如 ``SHELL``、``UPLOAD``、``DOWNLOAD``)。 4. **Exfiltration:** 结果经过 Base64 编码,封装在 JSON 对象中,并通过加密的 POST 请求发送回服务器。 ## 🚀 设置与使用 ### 1. 准备 Nest (服务器) 为 HTTPS 监听器生成自签名证书: ``` openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365 -nodes ``` 运行服务器: ``` python server.py ``` ### 2. 编译 Talon (Agent) 将 C++ 代码编译为 **Dynamic Link Library (DLL)**。请确保链接 ``winhttp.lib`` 和 ``ws2_32.lib`` 库。 ### 3. 部署 Flight (Stager) 将提供的 VBA 代码嵌入 Word 或 Excel 文档中。更新 ``payloadURL`` 以指向您服务器的 IP 地址。 ## 🛡️ 检测工程 (蓝队) 该项目旨在帮助防御者识别以下指标: * **进程异常:** ``rundll32.exe`` 生成了 ``cmd.exe`` 或 ``powershell.exe``。 * **网络模式:** 定期向非可信 IP 地址发送的 HTTPS POST 请求。 * **LOLBins:** 使用 ``certutil -urlcache`` 获取远程二进制文件。 * **可疑字符串:** Web 日志中 JSON Payload 内包含的 Base64 编码字符串。 ## 📜 许可证 根据 MIT 许可证分发。
标签:C++, C2框架, certutil, DLL注入, DNS 反向解析, HTTPS通信, HTTP工具, IP 地址批量处理, Living off the Land, Python, Rundll32, TLS加密, WinHTTP, 中高交互蜜罐, 命令控制, 安全学习资源, 安全教育, 安全测试工具, 底层编程, 异步通信, 恶意软件开发, 数据擦除, 数据渗出, 数据采集, 无后门, 流量审计, 知识库安全, 网络信息收集, 网络安全, 逆向工具, 隐私保护