x-glacier/kali-pentest

GitHub: x-glacier/kali-pentest

为AI代理设计的Kali Linux渗透测试技能包,整合200+工具和15个场景剧本,实现自主规划攻击路径、跨阶段整合结果并动态调整策略的结构化渗透测试。

Stars: 22 | Forks: 5

English | [简体中文](README.zh.md) # kali-pentest 一款基于 Kali Linux 构建的渗透测试技能,专为 Claude Code、OpenClaw 和 Hermes Agent 等 AI 代理设计。目前包含 14 个类别的 200 多种 CLI 工具。为每个场景内置了覆盖率矩阵、零发现回退机制以及客观停止条件,以确保测试的深度。 与传统的自动化渗透测试工具不同,AI 代理通过 SSH 或 Docker 连接到 Kali 环境,然后根据目标自主规划攻击路径,选择工具,在各个阶段整合并分析结果以调整渗透策略,并生成结构化报告——同时针对高风险操作执行强制的授权检查和人工批准关卡。 ## 工作流程 ### 总体工作流程 ``` flowchart LR A[Receive Task] --> B[Step 1: Environment] B --> C[Step 2: Plan] C --> D[Step 3: Execute] D --> E[Step 4: Analyze & Iterate] E -->|Adapt strategy| D E --> F[Step 5: Report] C --- C1[Confirm authorization & scope] C --- C2[Plan attack path & select depth] C --- C3[Select playbook from decision tree] E --- E1[Integrate results across phases] ``` ### 执行详情 (步骤 3) ``` flowchart TD PB[Select Playbook] --> CAT[Read category README] CAT --> TOOL[Select tool & run] TOOL --> OUT[Collect output] OUT --> EVAL{Findings?} EVAL -->|Yes| NEXT{New target type?} EVAL -->|No| DEEPER[Escalate: deeper scan or alternate tool] NEXT -->|AD| AD[active-directory.md] NEXT -->|Web app| WEB[web-application.md] NEXT -->|Credentials| PWD[password-audit.md] NEXT -->|Initial access| POST[post-exploitation.md] NEXT -->|No| ITER[Next iteration] AD --> ITER WEB --> ITER PWD --> ITER POST --> ITER DEEPER --> ITER ITER --> TOOL ``` ## 开始使用 ### 1. 安装技能 将技能目录复制到您的 AI 代理的 skills 文件夹中: ``` cp -r kali-pentest /path/to/your/agent/skills/kali-pentest ``` | 代理 | 技能路径 | |---|---| | Claude Code | `~/.claude/skills/` (个人) 或 `.claude/skills/` (项目) | | OpenClaw | `~/.openclaw/skills/` | | Hermes Agent | `~/.hermes/skills/` | ### 2. 提供 Kali 访问权限 代理需要一个 Kali Linux 环境。提供两种选项: - **服务器模式 (推荐)**:通过 SSH 连接到完整的 Kali 环境——可避免 Docker 在网络、原始套接字、无线和 GPU 方面的限制。 文档:[Kali 安装指南](https://www.kali.org/docs/installation/),[服务器模式指南](kali-pentest/references/environment/server-mode.md)。 - **Docker 模式**:预先构建一个安装了工具的持久化容器。最适用于 CLI 信息收集、漏洞扫描、Web/API 和云原生测试以及报告生成。 文档:[Kali Docker 指南](https://www.kali.org/docs/containers/using-kali-docker-images/),[Docker 模式指南](kali-pentest/references/environment/docker-mode.md)。 告知代理如何连接(推荐使用 SSH 密钥;支持用户名/密码但不推荐): ``` My Kali server is at 192.168.1.100, SSH user root, key at ~/.ssh/kali_key. ``` 或者在本地使用 Docker: ``` I have Docker installed locally. Use Docker to run Kali tools. ``` *对于 OpenClaw 及类似的 AI 助手,您还可以在 TOOLS.md 中配置 Kali 连接详情,以便代理自动读取而无需每次询问。* ### 3. 调用 使用自然语言分配渗透测试任务。代理会确认范围并自主进行。 **斜杠命令**: 适用于 Claude Code 及兼容的代理。 ``` /kali-pentest ``` **对话模式**: 适用于 OpenClaw、Hermes Agent 及其他 AI 助手。 ### 测试过的模型 该技能工作流已通过以下模型的优化和测试: - `claude-sonnet-4.6` - `deepseek-v4-pro` - `qwen3.6:27b` — 适用于气隙环境的本地回退方案(需要上下文长度 ≥ 128K) ## 使用示例 ``` Kali server: ssh -i ~/.ssh/kali_key root@192.168.1.100 First run a full port scan and service fingerprinting against 192.168.1.50, then plan and execute an in-depth penetration test based on the results — do not overlook any potential weakness. After testing, produce a detailed report. I have authorization. ``` ``` Kali server: ssh -i ~/.ssh/kali_key root@192.168.1.100 Target: 10.0.0.0/24 Quickly scan the target network for open ports along with their service/protocol names and versions, then produce a report. I have authorization. ``` ``` The persistent Docker container `kali-pentest` is initialized with the full toolset. Use Docker mode to run a web application penetration test against http://192.168.1.50 and produce a detailed HTML report. I have authorization. ```
更多示例 (API、云、移动、无线、源代码、VoIP/ICS) ``` Target domain: corp.example.com, domain controller 10.0.0.5 Perform an Active Directory security assessment covering enumeration, Kerberoasting, ACL abuse, and certificate template checks. ``` ``` Target API: https://api.example.com, OpenAPI spec at /tmp/openapi.yaml Perform an API security assessment covering authentication, authorization, and schema-driven testing. ``` ``` Target: Kubernetes cluster context prod-audit and container registry registry.example.com Run a read-only cloud-native security assessment and produce a findings report. ``` ``` Target app: /tmp/app.apk with test account user@example.com Perform an Android application security assessment, including static analysis, runtime checks, and backend endpoint mapping. ``` ``` Authorized SSID: CorpWiFi, BSSID: AA:BB:CC:DD:EE:FF, channel 6 Perform a wireless security assessment including passive discovery, handshake capture, WPS detection, and evil twin testing. ``` ``` Target repository: /tmp/source-repo (including Git history) Perform a source code and dependency audit including secret scanning, SAST, and CI/CD pipeline security checks. ``` ``` Target: SIP service 10.10.20.15 and Modbus host 10.10.30.20 Conservative read-only VoIP/ICS protocol assessment. Do not place calls or write PLC/Modbus values. ```
## 架构 ### 目录结构 ``` kali-pentest/ ├── SKILL.md ← Agent entry point: planning, execution, error handling └── references/ ├── playbooks/ ← 15 scenario workflows (AD, web, internal, cloud, wireless, ...) ├── environment/ ← Server mode and Docker mode setup ├── information-gathering/ ← 39 tools ├── vulnerability/ ← 14 tools ├── sniffing-spoofing/ ← 6 tools ├── web/ ← 31 tools ├── exploitation/ ← 19 tools ├── password/ ← 19 tools ├── wireless/ ← 26 tools ├── cloud-native/ ← 7 tools ├── rfid-nfc/ ← 5 tools ├── voip-ics/ ← 6 tools ├── reverse-engineering/ ← 16 tools ├── forensics/ ← 13 tools ├── post-exploitation/ ← 19 tools └── reporting/ ← 2 tools ``` `kali-pentest-zh/` 目录是中文镜像,在结构上与 `kali-pentest/` 保持同步。 ### 文档分层 该技能采用四层文档层次结构。每一层都有明确的职责,代理自上而下进行读取: | 层级 | 文件 | 职责 | |-------|-------|----------------| | 入口点 | `SKILL.md` | 全局工作流 (步骤 1–5),执行标准,通用测试原则 | | 场景工作流 | `playbooks/*.md` | 分阶段流程,决策树,具体的命令管道,深度强制指令,停止条件 | | 工具选择 | `/README.md` | 类别概述,工具比较,选择指南 | | 工具参考 | `/tools/.md` | 参数,命令示例,安装,注意事项,官方链接 | 通用原则位于 `SKILL.md` 中(内容简明,无代码块)。特定场景的实现位于 playbooks 中(具体的命令,测试矩阵,覆盖要求)。这种分层结构在防止内容重复的同时,确保了全局覆盖率和逐场景的深度。 ### 深度强制 每个 playbook 在关键的工作流决策点都包含粗体标记的指令,以防止代理进行肤浅的表面工作: - **覆盖要求** — 测试所有发现的项目(端点、服务、凭据),而不仅仅是抽样。 - **零发现回退** — 当自动化工具报告无发现时,升级测试或进行手动验证。 - **覆盖率矩阵** — 构建明确的项目 × 测试矩阵,并完成每一个单元格。 - **攻击升级** — 采用多种不断加深攻击深度的技术推进测试。 每个 playbook 都具备客观且可验证的停止条件——而不是简单的“测试完成”,而是必须填写的特定工件、矩阵和清单。每一项已确认的发现都必须包含完整的可重现命令及其实际输出作为证据。 ### 交叉引用逻辑 Playbooks 形成了一个连接图。当工作流的某个阶段发现了属于不同场景的目标时(例如,在内网扫描期间发现了 AD 信号,在 Web 测试期间发现了 API 端点),playbook 会引导代理进行切换。所有此类交接都在每个 playbook 的 `Cross-References` 部分中列出。 可复用的方法论(例如,`internal-network.md` 中的端口扫描和服务测试程序)可以从其他 playbook 中引用。 ### Playbooks 包含 15 个带有阶段、决策树、风险关卡和停止条件的场景工作流: | Playbook | 场景 | |---|---| | `internal-network.md` | 主机发现,端口扫描,服务枚举,跳板代理 | | `external-attack-surface.md` | OSINT,子域名枚举,暴露服务扫描 | | `web-application.md` | OWASP Top 10,CMS,注入,身份验证,业务逻辑 | | `api-security.md` | REST,GraphQL,gRPC,WebSocket,JWT,BOLA/IDOR | | `active-directory.md` | Kerberoasting,ADCS,Relay,ACL 滥用,DCSync | | `password-audit.md` | 哈希破解,密码喷洒,凭据重用,凭据捕获 | | `wireless-assessment.md` | WPA/WPA3,WPS,邪恶双胞胎,蓝牙/BLE | | `cloud-native-assessment.md` | AWS/Azure/GCP IAM,Kubernetes,容器,Serverless | | `mobile-application.md` | Android/iOS 静态 + 动态分析,SSL Pinning 绕过 | | `post-exploitation.md` | 权限提升,横向移动,权限维持,C2 | | `forensics-triage.md` | 磁盘镜像,内存取证,日志分析,隐写术 | | `rfid-nfc.md` | NFC/RFID 克隆,智能卡,固件提取 | | `voip-ics.md` | VoIP/SIP,ICS/OT/Modbus,IPMI/BMC (安全优先) | | `source-code-audit.md` | 敏感信息扫描,SAST,依赖审计,CI/CD 检查 | | `reporting-workflow.md` | 证据打包,CVSS 评分,报告生成 | ### 工具选择标准 所有工具均针对自主代理操作进行了筛选: - **仅限 CLI 可自动化** — 排除了仅限 GUI 的工具和交互式调试器 - **包含无头二进制分析** — `strings`,`checksec`,`radare2` 单次执行,Ghidra Headless - **首选 CLI 替代方案** — 例如,使用 `tshark` 代替 Wireshark ## 免责声明 本项目按“原样”提供,仅用于授权的安全测试和教育目的。用户需对获取书面授权和遵守相关法律法规负全部责任。作者对因本项目造成的任何损失不承担任何责任。 ## 漏洞披露 在授权测试期间发现的安全漏洞,必须通过商定的渠道私下报告给资产所有者。在所有者有合理时间进行修复之前,请勿公开披露漏洞详情。请遵循[负责任的披露](https://en.wikipedia.org/wiki/Responsible_disclosure)实践以及您参与范围内的任何协同披露协议。 ## 贡献 欢迎提交 Issue 和 Pull Request。
标签:AI安全, AI智能体, Chat Copilot, CIDR输入, Claude Code, Cloudflare, Docker, FTP漏洞扫描, IP 地址批量处理, MITRE ATT&CK, SSH, Web应用测试, Web报告查看器, XXE攻击, 内存分配, 反取证, 多语言支持, 安全报告, 安全测试框架, 安全编排, 安全评估, 安全防御评估, 密码审计, 插件系统, 攻击路径规划, 网络安全, 网络安全审计, 脚本自动化, 自动化渗透, 请求拦截, 隐私保护