antonyguedes/chaincode-carnival

GitHub: antonyguedes/chaincode-carnival

这是一个利用多智能体对抗机制对 Hyperledger Fabric 智能合约进行自动化审计、漏洞利用及代码修补的 AI 安全编排流水线。

Stars: 0 | Forks: 0

# 🏴‍☠️ Chaincode Carnival: Adversarial Arena ![Chaincode Carnival Arena Logo](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/ed48166ef8015406.jpg) **Chaincode Carnival** 是一个企业级 AI 安全编排流水线,旨在自主审计、利用并保护 Hyperledger Fabric 智能合约。 与传统的静态扫描器不同,Chaincode Carnival 使用 **Multi-Agent Rivalry Engine**(多智能体对抗引擎)。它在虚拟的“Cyber Arena”中将四个截然不同的 AI 个性相互对抗,以确保您的链码在接触生产账本之前在数学上是健全的。 ## 🏛️ The Arena Architecture 该系统编排了四个专门的智能体,每个智能体都可以由不同的 LLM 提供商(Gemini、Groq、OpenAI、Ollama 等)驱动: 1. **🔍 The Analyzer**:使用动态 AST 解析和语义推理扫描源代码,以发现深层的逻辑缺陷(MVCC 冲突、无限循环、访问控制泄露)。 2. **👺 The Red Team**:接收发现结果并生成恶意利用载荷。它会启动 **ephemeral Docker Sandboxes**(临时 Docker 沙箱)来物理证明该利用是有效的。 3. **🛡️ The Blue Team**:接收成功的入侵报告并生成 **Unified Diff Patch**(统一差异补丁)来保护代码,进行递归轮次,直到 Red Team 的载荷被弹回。 4. **⚖️ The Skeptic**:一位高级审计法官,根据 4 维评分标准(安全性、可读性、地道的 Go 语言和完整性)对最终补丁进行评分。 ## 🚀 Installation ### 1. Prerequisites - **Go**:1.20 或更高版本 - **Docker**:用于运行利用沙箱 - **Fabric Samples**:项目根目录下的一份 `fabric-samples` 副本(用于最终的 CI/CD 部署阶段) ### 2. Environment Setup 根据 `.env.example` 创建一个 `.env` 文件。您可以为每个智能体混合搭配提供商: ``` # Example using Gemini for everything ANALYZER_PROVIDER="gemini" ANALYZER_MODEL="gemini-1.5-flash" ANALYZER_API_KEY="your_api_key_here" # ... (repeat for REDTEAM, BLUETEAM, SKEPTIC) ``` ### 3. Build & Global Command 要在项目根目录中构建二进制文件: ``` go build -o hfchance ./cmd/hfchance ``` #### Running locally: ``` ./hfchance carnival start ``` #### To run as `hfchance` (Global PATH): **Bash / Zsh**: ``` export PATH=$PATH:. hfchance carnival start ``` **Fish Shell**: ``` set -px PATH . hfchance carnival start ``` ## 🎮 Running the Carnival 通过运行以下命令启动交互式竞技场: ``` hfchance carnival start ``` ### The Workflow: 1. **Interactive Menu**:选择要将哪个链码文件放入竞技场(按最近时间排序)。 2. **The Rumble**:高强度的 AI 闲聊,因为它们会争夺代码逻辑(伴随着戏剧性的 5 秒暂停)。 3. **CI/CD Gate**:如果 **Blue Team wins**(得分 > 90/100),系统将自动: - 生成代码的安全 `.go` 版本。 - 启动内部 Fabric Test Network。 - **将安全的链码部署到通道**。 4. **Failure**:如果 **Red Team wins**,流水线将阻止部署并向开发人员发出未修补风险的警报。 ## 🛠️ Advanced Usage **Target specific files manually:** ``` ./hfchance carnival start /path/to/my/custom_chaincode.go ``` **Clean Docker subnet overlaps (if sandboxes stall):** ``` docker network prune -f ``` ## 🏆 Project Accomplishments - 原生 Go AST 解析,实现零配置链码发现。 - 针对健谈 LLM 的弹性 JSON 提取。 - 多提供商支持(Anthropic、Cohere、Deepseek、Groq、Gemini、Ollama)。 - 与 Hyperledger Fabric `test-network` 的物理 CI/CD 集成。
标签:AST解析, C2, CI/CD 自动化, DevSecOps, Diff Patch, Docker沙箱, EVTX分析, FTP漏洞扫描, Go语言, Hyperledger Fabric, LLM 应用, LNA, PyRIT, 上游代理, 代码修复, 企业级安全, 区块链安全, 多智能体系统, 安全编排, 容器化部署, 日志审计, 智能合约审计, 程序破解, 自动化payload嵌入, 自动化漏洞挖掘, 请求拦截, 错误基检测, 静态代码分析