关于 cybersec-toolkit
面向安全从业者及 AI Agent 的工具包,适用于 CTF、渗透测试、漏洞赏金、DFIR 和蓝队工作。它可安装 670 多种工具,并通过受管控的 MCP 执行路径调用工具,默认使用一次性 Kata Containers 虚拟机;自主运行需明确启用。
主要功能
- 01安装 18 个模块中的 670 多种工具
- 02提供 15 个发现与执行 MCP 工具
- 03默认使用 Kata 虚拟机沙箱
- 04提供白名单、参数和网络控制
- 05提供 872 个安全工作流 Agent Skills
适用场景
- 01为 CTF 任务查找合适工具
- 02执行获授权的渗透测试
- 03进行二进制文件分诊和 DFIR 调查
- 04开展引导式蓝队与漏洞赏金工作
MCP 相关
MCP 服务提供 15 个工具,用于发现、推荐和运行已安装的安全工具。执行受白名单和策略检查约束,默认运行在一次性 Kata Containers 虚拟机中;外部目标和脚本执行默认关闭。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
docker run -i --rm -e CYBERSEC_MCP_ALLOW_EXTERNAL -e CYBERSEC_MCP_ALLOW_SCRIPTS ghcr.io/26zl/cybersec-toolkit:1.4.0CYBERSEC_MCP_ALLOW_EXTERNALSet to 1 only for explicitly authorized external scopes.CYBERSEC_MCP_ALLOW_SCRIPTSSet to 1 to enable unsandboxed run_script execution.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
ghcr.io/26zl/cybersec-toolkit:1.4.0stdio工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
/\ /\ ______ __ _____
(o ) ( o) / ____/_ __/ /_ ___ _____/ ___/___ _____
\ \_/ / / / / / / / __ \/ _ \/ ___/\__ \/ _ \/ ___/
<==\ /==> / /___/ /_/ / /_/ / __/ / ___/ / __/ /__
\ V / \____/\__, /_.___/\___/_/ /____/\___/\___/
/_ _\ /____/ by 26zl
|_| Toolkit
一个由 AI Agent 驱动、按你设定的规则运行的安全工具包。 一条命令即可在 Linux 或 Termux 上安装 670 多种安全工具。MCP(Model Context Protocol) 服务让 Claude Code、Codex、Gemini CLI、OpenCode 和其他 MCP 客户端能够发现、推荐并通过受管控的执行路径运行这些工具;默认情况下,工具在一次性 Kata Containers VM 中运行。872 个 Agent Skills 提供了 CTF、渗透测试、漏洞赏金、DFIR 和蓝队工作的实践方法。
| 组件 | 可获得的内容 |
|---|---|
| 安装程序 | 18 个模块、14 种配置和 12 种安装方式,包含 670 多种工具,支持 Debian/Ubuntu/Kali/Parrot、Fedora/RHEL、Arch、openSUSE 和 Termux |
| MCP 服务 | 15 种用于发现、建议和受管控执行的工具;默认关闭外部目标访问和脚本执行 |
| 沙箱 | 默认每个会话使用一个 Kata Containers VM;--local 可在主机上运行服务 |
| Agent Skills | 872 个技能(31 个由项目编写,841 个精选),也可作为 Claude Code 插件安装 |
不同之处: 大多数工具包止步于_安装_工具。而在这里,AI 还可以_驱动_这些工具:推断问题类型,从所有模块和配置中选择工具,并与你逐步解决问题。经你明确授权后,同一套工具链还可以运行自主求解循环。默认协作;只有在你要求时才自主运行。 它与 Kali、Parrot 或 BlackArch 互为补充,而非取而代之:它可在你现有的设备上运行,也包括 Termux。
快速开始 · 工作原理 · 信任与安全 · 安装程序 · MCP 服务 · Agent Skills · 开发 · 许可证
快速开始
1. 安装工具,在受支持的 Linux 发行版或 Termux 上执行:
git clone --depth 1 --branch v1.4.0 https://github.com/26zl/cybersec-toolkit.git && cd cybersec-toolkit
./install.sh --doctor # read-only preflight: distro, prerequisites, MCP server, sandbox
sudo ./install.sh --profile ctf # one profile; with no flags, all 18 modules
2. 连接 AI 客户端。 Claude Code(.mcp.json 也会被 GitHub Copilot CLI 读取)、Codex、Gemini CLI 和 OpenCode 的受跟踪配置会通过 scripts/mcp-launch.sh 启动服务,并禁用外部目标和脚本执行。选择工具的运行位置:
| 模式 | 工具运行位置 | 主机要求 | 一次性设置 |
|---|---|---|---|
| 沙箱(默认) | 在一次性 Kata VM 中,从沙箱镜像运行 | 支持 KVM 的 Linux、带 Kata 运行时的 Docker 23+、Node.js 22+ | 执行 make sandbox-image,然后执行 npm --prefix sandbox ci --ignore-scripts |
主机(--local) | 以你的用户身份运行,使用 install.sh 安装的工具 | uv | 在启动器中添加 --local,或在客户端的 env 中设置 CYBERSEC_SANDBOX_MODE=local |
Kata 需要 KVM:在 macOS、Windows 和不支持嵌套虚拟化的 VM 上,请使用主机模式。
3. 重启客户端。 随后会显示 15 个工具(在 Claude Code 中使用 /mcp)。接着提出你的需求,例如“分析这个二进制文件”或“绘制我的实验环境 10.10.0.0/24 的攻击面”。
工作原理
两个入口共用一个工具注册表。__运维人员__运行 bash 安装程序,将工具安装到磁盘上:可以安装在主机上,也可以在构建时安装到沙箱镜像中。__AI Agent__与 MCP 服务通信(默认在 Kata VM 中运行),通过统一的受管控路径发现、推荐和执行这些工具。tools_config.json 是唯一事实来源,由各模块定义,并由 MCP 顾问读取;CI 验证器确保 Python 和 bash 两侧保持同步。

实线箭头表示运行时或安装操作;虚线箭头表示验证和上下文关系。客户端配置通过能够识别 root 的启动器接入,启动器通过 Sandcastle Kata 提供程序(sandbox/kata.mjs)启动 VM;或者使用 --local 在主机上启动服务。security.py 通过允许列表、参数检查和网络策略管控 run_tool 和 run_pipeline,而不调用 shell。run_script 是一项独立功能,默认禁用,可用于运行任意代码。Agent Skills 不属于执行路径:.claude/skills/ 是规范来源,scripts/sync-skills.sh 会为读取可移植镜像的客户端生成 .agents/skills/。Mermaid 源文件:assets/how-it-works.mmd。
信任与安全
哪些内容会运行,哪些内容受到限制:
- 默认安全的 MCP。
CYBERSEC_MCP_ALLOW_EXTERNAL=0会拒绝无法解析到私有或环回地址范围的网络目标,而CYBERSEC_MCP_ALLOW_SCRIPTS=0会禁用run_script。外部范围和脚本功能必须显式选择启用。 - 治理执行统一关卡(
mcp_server/security.py):注册表允许列表、禁止 shell(使用create_subprocess_exec,绝不使用shell=True)、参数清理、按工具设置的阻止标志拒绝列表(例如sqlmap --os-shell、nmap -iL、文件列表和目标注入标志)、目标与网络策略、速率限制、输出上限和超时。该策略了解足够多的 CLI 语法,能够区分目标与标头、字典、输出路径或目标列表标志。工具输出会在传给模型前剔除终端转义序列和 LLM 控制标记,并标记写给 AI 读者的行。 - 默认在一次性 VM 中运行工具。 启动器会启动一台 Kata Containers VM,它有自己的内核;除可选的
CYBERSEC_SANDBOX_WORKSPACE挂载外,不访问主机文件系统;没有 Docker socket;使用已移除所有 capability 的非 root 用户;并设有内存、CPU 和进程限制。客户端断开连接时,VM 会被销毁。启动失败时会安全关闭,而不会回退到主机;--local是显式选择退出沙箱的选项。 - 了解限制。 VM 并非网络边界:它可以访问 Docker 网络所能访问的任何内容,而
CYBERSEC_MCP_ALLOW_EXTERNAL只会对解析出的地址进行预检,并非防火墙(请设置CYBERSEC_SANDBOX_NETWORK=none或使用经过过滤的网络)。在 VM 内,以及--local模式下的主机上,允许的工具都以服务用户的权限运行,其中一些工具会启动子进程或加载插件。 - 工具输出会发送给模型提供商。 工具打印的任何内容——扫描结果、页面内容,以及它在目标上发现的任何凭据或个人数据——都会返回给 AI 客户端,并发送给客户端所使用的模型。默认情况下,只有本地审计日志会进行脱敏;设置
CYBERSEC_MCP_REDACT_OUTPUT=1,也会对客户端收到的内容中的凭据格式字符串进行脱敏。如果某项测试的规则禁止与第三方共享客户数据,请通过本地模型驱动服务(参见 AI 客户端)。 - 仓库钩子会自动运行。 在 Claude Code 中打开此仓库会运行
.claude/settings.json中跟踪的钩子:会话开始时和每次 Bash 命令执行前运行scripts/agent-guard.sh。它们只会输出路由上下文或拒绝决定,不会发起网络请求,并且会以开放方式失败;设置CYBERSEC_AGENT_GUARD=0可禁用它们。 - 留存审计记录,避免泄露。 操作会以 JSON 行格式记录到用户状态目录下仅所有者可访问(
0600)的轮转日志中(默认路径为~/.local/state/cybersec-tools-mcp/audit.log)。脚本正文绝不会存储,只记录其 SHA256 和长度;工具参数中的凭据格式字符串会被脱敏。沙箱化服务会将记录同步到同一主机日志中,并采用哈希链串联记录,因此链中被编辑或删除的记录会在make audit-verify中显现(限制)。 - 安装程序遵循最小权限原则。 安装程序以 root 运行,但在克隆仓库的构建、
go/cargo/gem构建以及项目设置步骤(theHarvester、pwndbg)中会降权到发起调用的用户($SUDO_USER);发布的二进制文件会在发布校验和时通过 SHA256 验证。pipx安装(安装到共享的/opt/pipx)和全局npm安装仍以 root 运行,因此其构建和安装脚本会以 root 权限执行——参见供应链模型。Go 二进制文件会以 root 所有的文件形式复制到/usr/local/bin;cargo、gem、克隆仓库、源码构建、patator 和 Foundry 工具则通过指向或包装发起调用用户所拥有目录中的内容,供该用户在此处使用,因此该用户可以更改这些命令所运行的内容。 - 双重用途工具受控。 C2 和网络钓鱼框架(Sliver、Caldera、gophish、evilginx、……)默认处于关闭状态,只有使用
--include-c2才会安装(redteam和full配置会启用此选项);MCP 层也遵循这一设置,绝不会自动运行这些工具。 - 仅限授权使用。 请参阅
SECURITY.md、供应链模型和免责声明。
安装程序
要求
受支持的 Linux 发行版(Debian/Ubuntu/Kali/Parrot、Fedora/RHEL、Arch、openSUSE)或 Termux。运行时(Python、Go、Ruby、Java、Rust、Node.js)、开发库、pipx 和构建工具都会自动安装。安装程序无法在 macOS 或原生 Windows 上运行;请使用 WSL 或 Docker。
- Docker 是
--enable-docker(C2 框架、MobSF、BeEF、BloodHound、TheHive、Cortex)以及blueteam、redteam、blockchain和mobile配置的必需项;这些配置默认启用 Docker 镜像(参见配置)。请自行安装:Docker Engine 文档。 - __GitHub 身份验证__为推荐项。安装程序会下载约 50 个发行版二进制文件,并调用 GitHub API 约 50 次以上;未通过身份验证的请求每小时限制为 60 次,通过身份验证的请求限制为 5,000 次。它会自动使用你的
gh auth login会话,即使通过sudo运行也一样。或者,传入个人访问令牌(无需任何权限范围),并通过sudo传递令牌,因为sudo默认会丢弃该令牌:sudo --preserve-env=GITHUB_TOKEN ./install.sh。
安装
从最新发行版安装(固定版本;推荐):
git clone --depth 1 --branch v1.4.0 https://github.com/26zl/cybersec-toolkit.git && cd cybersec-toolkit && sudo ./install.sh
从 main 安装(包含尚未发布的最新工具和修复):
git clone https://github.com/26zl/cybersec-toolkit.git && cd cybersec-toolkit && sudo ./install.sh
不带任何标志时,安装程序会安装全部 18 个模块中的标准工具。除非通过配置启用(参见配置中的 Docker 和 C2 列),否则 C2/网络钓鱼工具和 Docker 镜像均为可选项;--profile full --enable-docker 会安装当前平台支持的所有内容。若要安装部分内容:
sudo ./install.sh --profile ctf # CTF tools only
sudo ./install.sh --profile redteam --enable-docker # Red team + Docker C2
sudo ./install.sh --module web --module recon # Specific modules
sudo ./install.sh --tool sqlmap --tool nmap # Individual tools
./install.sh --dry-run --profile ctf # Preview without installing; no root needed
./install.sh --doctor # Read-only preflight; no root needed
所有标志
./install.sh --help # Full help
./install.sh --list-profiles # Show profiles
./install.sh --list-modules # Show modules
sudo ./install.sh --skip-heavy # Skip large/slow packages
sudo ./install.sh --skip-pipx # Skip all pipx (Python) installs
sudo ./install.sh --skip-go # Skip all Go tool installs
sudo ./install.sh --skip-cargo # Skip all Cargo (Rust) installs
sudo ./install.sh --skip-gems # Skip all Ruby gem installs
sudo ./install.sh --skip-git # Skip all git clone installs
sudo ./install.sh --skip-binary # Skip all binary release downloads
sudo ./install.sh --skip-source # Skip build-from-source, snap, npm, and curl-pipe installs
sudo ./install.sh --fast # Skip checksum verification (see Supply chain model)
sudo ./install.sh --require-checksums # Fail if a binary release has no checksum file
sudo ./install.sh --production # Strict checksum preset for release downloads
sudo ./install.sh --upgrade-system # Upgrade system packages before installing
./install.sh --list-sessions # List install sessions and exit
sudo ./install.sh --rollback <id|last> # Roll back a session's tools (add --yes when not on a terminal)
./install.sh --version # Show installer version and exit
sudo ./install.sh --enable-docker # Pull Docker images
sudo ./install.sh --include-c2 # Include C2/phishing frameworks (Empire also needs --enable-docker)
sudo ./install.sh -j 8 # 8 parallel install jobs (default: 4)
sudo ./install.sh -v # Verbose / debug output
--tool 仅安装指定工具,不会进行完整的依赖设置。试运行的时间估算会统计各种安装方式中的安装条目,因此可能高于去重后的 670 多个工具注册表条目。
调节变量(环境):GITHUB_TOOL_DIR(默认值为 /opt,Termux 上为 ~/tools)用于设置克隆仓库的位置;GO_MIN_VERSION(默认值为 1.21)、PYTHON_MIN_VERSION / PYTHON_TRY_MAX(3.11 / 3.13)和 NODE_MIN_VERSION(22)用于设置引导程序接受的运行时版本;ZYPPER_REFRESH_ATTEMPTS / ZYPPER_REFRESH_DELAY(3 / 15 秒,延迟时间递增一倍)用于调整 openSUSE 元数据重试;CYBERSEC_ZYPPER_AUTO_IMPORT_KEYS=1 会在刷新时信任新的软件仓库密钥(参见供应链模型);PKG_AUTOREMOVE=1 会在移除软件包时执行 apt-get autoremove(remove.sh --remove-deps 会设置此变量)。
完整安装为何需要 15-45 分钟
耗时主要来自 I/O 密集型操作,任何脚本语言都无法加快:
| 耗时项目 | 原因 |
|---|---|
| 系统软件包(apt/dnf) | 下载并解包 .deb/.rpm 软件包,以及解析依赖项 |
| Go 工具 | 下载模块并编译每个二进制文件 |
| pipx(Python) | 为每个工具创建独立的 venv 并下载 wheel |
| Cargo(Rust)crate | 从源代码编译 |
| Git 克隆 | 克隆各个仓库 |
| 二进制发行版 | 从 GitHub 下载预编译的二进制文件 |
./install.sh --dry-run 会显示实时的各安装方式耗时明细。pipx、Go、git 和二进制安装会并行运行(默认 -j 4);系统软件包管理器、Cargo、gem、npm 和源码构建则会顺序运行。若要加快速度:改为安装某个配置或使用 --module,而不是安装所有内容;使用 --skip-cargo 以避免 Rust 编译;使用 -j 8 增加并行任务数;重复安装时使用 apt-cacher-ng 代理。
预构建镜像是在 Ubuntu 上运行的安装程序,并非沙箱。其默认命令是对 full 配置文件进行试运行:
docker run --rm ghcr.io/26zl/cybersec-toolkit # preview only
docker run -it --name cybersec --entrypoint bash ghcr.io/26zl/cybersec-toolkit # keep a container
sudo ./install.sh --profile ctf # inside it; reattach with: docker start -ai cybersec
使用 docker build -t cybersec-toolkit . 自行构建,或通过随附的 Compose 文件运行一次性安装:docker compose run --rm installer --profile ctf。在 Apple silicon 上,需在 docker build 和 docker run 命令中添加 --platform linux/amd64。Podman 可直接替代 Docker(podman compose 需要 Compose 提供程序)。镜像为 toolkit 用户授予了无需密码的 sudo 权限,以便安装程序管理软件包;请将其中运行的代码视为具有 root 权限。
Termux(Android)
pkg install git
git clone https://github.com/26zl/cybersec-toolkit.git && cd cybersec-toolkit
./install.sh --profile lightweight
配置文件
| 配置文件 | 模块 | Docker | C2 | 描述 |
|---|---|---|---|---|
full | 全部 18 个 | — | 是 | 完整安全工具包 |
ctf | misc、crypto、pwn、reversing、stego、forensics、cracking、web、mobile、blockchain | — | — | CTF 竞赛 |
redteam | misc、networking、recon、web、enterprise、pwn、mobile、cracking、cloud、wireless、reversing、crypto | 是 | 是 | 攻击性安全 |
web | misc、networking、recon、web、llm | — | — | Web 应用测试 |
osint | misc、recon | — | — | OSINT 信息搜集 |
forensics | misc、forensics、blueteam、reversing、stego、cracking | — | — | 数字取证与事件响应 |
pwn | misc、pwn、reversing、crypto | — | — | 二进制漏洞利用与逆向工程 |
mobile | misc、mobile、web、reversing | 是 | — | 移动应用安全测试 |
cloud | misc、cloud、containers、networking、recon | — | — | 云和容器安全审计 |
blockchain | misc、blockchain、web、crypto | 是 | — | 智能合约审计与区块链安全 |
wireless | misc、wireless、networking | — | — | WiFi、Bluetooth 和 SDR 安全 |
lightweight | misc、networking、recon、web、cracking | — | — | 业余道德黑客入门工具(HTB、THM、漏洞赏金) |
crackstation | misc、cracking、crypto | — | — | 哈希破解 |
blueteam | misc、blueteam、forensics、reversing、mobile、containers、networking、cloud、recon | 是 | — | 防御性安全、IR、恶意软件分析 |
Docker 和 C2 列显示各配置文件默认启用的功能。启用 Docker 的配置文件在未安装 Docker 时会报错并停止;请先安装 Docker,或使用 --module 选择相同模块,而不要使用配置文件。
模块
| 模块 | 工具数 | 描述 |
|---|---|---|
misc | 40 | 后渗透、社会工程、词表、资源、C2(Docker + Loki) |
networking | 57 | 端口扫描、数据包捕获、隧道、MITM、协议工具 |
recon | 82 | 子域枚举、OSINT、DNS、自动化侦察框架 |
web | 60 | 漏洞扫描、模糊测试、SQLi、XSS、CMS 扫描器、API 测试 |
crypto | 15 | RSA 攻击、密码分析、哈希攻击、约束求解 |
pwn | 36 | 漏洞利用框架、二进制利用、模糊测试、载荷生成 |
reversing | 34 | 反汇编器、调试器、仿真、Java/Python 逆向 |
forensics | 59 | 磁盘/内存取证、文件雕刻、时间线分析、日志分析、硬件/串口 |
enterprise | 81 | Active Directory、Kerberos、Azure AD、凭据收集、横向移动 |
wireless | 41 | WiFi 破解、Bluetooth、SDR、恶意 AP |
cracking | 34 | 哈希破解(john、hashcat)、暴力破解、词表生成 |
stego | 15 | 图像/音频隐写、检测、StegCracker |
cloud | 22 | AWS/Azure/GCP 安全审计、Checkov |
containers | 15 | Docker/Kubernetes 安全(Grype、Syft、Kubescape、kubeaudit) |
blueteam | 40 | IDS/IPS、SIEM、事件响应、威胁情报、加固、恶意软件分析(YARA、ClamAV、FLOSS、Capa、Loki) |
mobile | 18 | Android/iOS 应用测试、APK 分析、MobSF(Docker) |
blockchain | 15 | 智能合约审计(Slither、Mythril、Foundry、Aderyn)、区块链取证、Echidna(Docker) |
llm | 14 | 大模型红队测试、提示词注入、越狱测试、AI 漏洞扫描 |
安装方式 — 首选顺序:apt > pipx > go > cargo > binary > gem > Docker > git clone > source
| 方式 | 数量 | 示例 |
|---|---|---|
| Git 克隆 | 193 | 带自动设置的 GitHub 仓库、资源、词表 |
| 系统软件包(apt/dnf/pacman/zypper) | 168 | nmap、wireshark、john、hashcat |
| pipx | 137 | sqlmap、impacket、bloodhound、volatility3 |
| Go 安装 | 63 | nuclei、subfinder、ffuf、httpx |
| 二进制发布包 | 54 | gitleaks、chainsaw、findomain、FLOSS、Capa、Loki、Syft、Kubescape |
| 从源代码构建 | 25 | massdns、duplicut、AFLplusplus、honggfuzz |
| Docker | 13 | Empire、MobSF、BeEF、BloodHound、TheHive、Cortex、PentAGI |
| Cargo(Rust) | 8 | feroxbuster、RustScan、pwninit、yara-x-cli |
| Ruby gem | 6 | wpscan、evil-winrm、brakeman |
| npm | 6 | promptfoo、apk-mitm、surya、solgraph、rea-agents |
| 特殊方式 | 5 | Metasploit、Foundry、Steampipe、patator(curl 管道安装程序)、crypto venv 引导程序 |
| Snap | 1 | zaproxy |
所有脚本都支持 --help 和 --version。在 Linux 上,update.sh 和 remove.sh 需要 root 权限(sudo),backup.sh schedule 和 unschedule 也需要;verify.sh 和其他 backup.sh 命令以当前用户身份运行。Termux 无需 root 权限。没有终端时,请为 remove.sh(以及 install.sh --rollback)传入 --yes。
| 脚本 | 用途 | 示例 |
|---|---|---|
scripts/verify.sh | 检查已安装哪些工具 | ./scripts/verify.sh --module web --skip-heavy |
scripts/update.sh | 更新此工具包安装的工具 | sudo ./scripts/update.sh --skip-system |
scripts/remove.sh | 按模块移除工具 | sudo ./scripts/remove.sh --module enterprise --yes |
scripts/remove.sh --deep-clean | 移除此工具包的所有工具,然后清理缓存和构建产物 | sudo ./scripts/remove.sh --deep-clean --yes |
scripts/backup.sh | 备份和恢复工具配置 | ./scripts/backup.sh backup |
完整移除后,--deep-clean 会清理 Go 模块/构建缓存、Cargo 注册表、pip/pipx/npm/gem 缓存、孤立的 pipx 虚拟环境、过期的符号链接和日志文件。添加 --remove-deps 还会清理 Rustup 工具链。
工具位置
非系统工具在 Linux 上安装到 /usr/local/bin/,在 Termux 上安装到 $PREFIX/bin;系统软件包使用其默认位置(/usr/bin/)。
| 方法 | 二进制文件位置(Linux) | 二进制文件位置(Termux) | 数据位置 |
|---|---|---|---|
| pipx | /usr/local/bin/ | $PREFIX/bin/ | /opt/pipx/ 或 ~/.local/pipx/ |
| Go | /usr/local/bin/ | $PREFIX/bin/ | /opt/go/ 或 ~/.go/ |
| Cargo | /usr/local/bin/(符号链接) | $PREFIX/bin/(符号链接) | ~/.cargo/ |
| Git 仓库 | /usr/local/bin/(符号链接) | $PREFIX/bin/(符号链接) | /opt/<repo>/ 或 ~/tools/<repo>/ |
| 二进制发行版 | /usr/local/bin/ | 已跳过(glibc 与 Bionic 不兼容) | -- |
.versions 文件会记录安装内容、安装方式和安装时间。
可选 Docker 镜像(--enable-docker)
如果设置了 --enable-docker 且未安装 Docker,安装程序会停止并提示你先安装 Docker。
| 镜像 | 模块 | 标志 | 描述 |
|---|---|---|---|
bcsecurity/empire | misc | --enable-docker --include-c2 | Empire C2 |
spiderfoot/spiderfoot | misc | --enable-docker | SpiderFoot OSINT |
beefproject/beef | web | --enable-docker | BeEF 浏览器利用 |
opensecurity/mobile-security-framework-mobsf | mobile | --enable-docker | MobSF |
specterops/bloodhound | enterprise | --enable-docker | BloodHound CE |
trailofbits/echidna | blockchain | --enable-docker | Echidna 智能合约模糊测试工具 |
checkmarx/kics:latest | cloud | --enable-docker | KICS 基础设施即代码扫描器 |
sagemath/sagemath:latest | crypto | --enable-docker | SageMath(Coppersmith、Groebner 基、曲线运算) |
strangebee/thehive:latest | blueteam | --enable-docker | TheHive IR 平台 |
thehiveproject/cortex:latest | blueteam | --enable-docker | Cortex 分析 |
zeek/zeek:latest | blueteam | --enable-docker | Zeek 网络分析 |
wagga40/zircolite:latest | blueteam | --enable-docker | Zircolite EVTX 检测 |
vxcontrol/pentagi:latest | llm | --enable-docker | PentAGI 自主渗透测试 |
Debian/Ubuntu/Kali 是主要目标,也是测试覆盖最全面的平台:Kali 和 Parrot 会安装完整的 apt 软件包集合,而纯 Debian/Ubuntu 会跳过少数仅适用于 Kali 的软件包。Fedora、Arch 和 openSUSE 会跳过其软件源中没有的软件包(lib/distro_compat.tsv 中的 - 条目,每个发行版有数十个),并在集成工作流中运行。
| 平台 | 状态 |
|---|---|
| WSL | 支持安装和 MCP 使用;无线模块和内核级软件包会跳过。没有专用 CI 任务,因此请在本地 WSL 发行版中验证对发布至关重要的更改。如果仓库位于 Windows 挂载路径,请参阅 Windows Defender 误报。 |
| ARM (aarch64/armv7) | 支持,会自动跳过仅适用于 x86 的二进制发行版和仅适用于 x86 的源码构建工具。没有专用 CI 任务。 |
| Termux (Android) | 支持,无需 sudo。Docker、snap、二进制发行版和源码构建会跳过(与 Bionic 不兼容)。没有专用 CI 任务。 |
| Windows(原生) | 不支持。请使用 WSL。 |
| macOS | 安装程序不受支持;请使用 Docker 镜像。MCP 服务可在 macOS 上以主机模式运行(--local)。 |
| 其他 Linux 发行版 | 不具备 apt/dnf/pacman/zypper 的发行版(NixOS、Gentoo、Void、Alpine、Slackware 等)会被检测到并拦截,同时显示清晰的错误信息。请使用 Docker 镜像。 |
安装程序会更改什么
除了安装软件包,安装过程还可能更改系统,而这些更改不会由 remove.sh 撤销:
- apt 软件源:Metasploit 软件源(
/etc/apt/sources.list.d/metasploit-framework.list,密钥位于/usr/share/keyrings/metasploit-framework.gpg);当remove.sh移除由此工具包安装的 Metasploit 时,也会删除该软件源。NodeSource 的设置脚本还会添加 NodeSource 软件源和密钥,这些会保留。移除后,apt 仍会信任 NodeSource;如果不再需要,请手动删除其软件源。 - Arch:在
/etc/pacman.conf中启用ParallelDownloads。 - 基于 apt 的发行版上会安装 snapd,供仅通过 snap 提供的工具使用。
- 运行时:位于
/usr/local/go的 Go SDK;以及安装在调用用户主目录中的 rustup、cargo 和 uv。 - 位于
/opt、/opt/pipx和/usr/local/bin中的__工具__。
此工具包仅在本机保存以下数据:
- 检出目录中的
.versions、.install_sessions/和*.log:安装来源记录和日志。 ~/.local/state/cybersec-tools-mcp/:MCP 审计日志及其轮转文件、remote_hosts.json,以及 Agent 防护机制的guard-session*标记和guard-denials.log。~/cybersec_tools_backup/:加密配置备份。- 检出目录中的
writeups/(已被 git 忽略)。
remove.sh --deep-clean 会清除缓存和检出目录中的日志,但不会清除 MCP 状态目录、备份或 writeups;不再需要时,请自行删除这些内容。
供应链模型
安装程序会从互联网下载并运行代码。在 Linux 上,它以 root 身份运行(sudo);在 Termux 上,它在应用的用户沙箱中运行。
- 系统软件包:由发行版的软件源签名(apt、dnf、pacman、zypper、pkg)。在 openSUSE 上,只有设置了
CI=true或CYBERSEC_ZYPPER_AUTO_IMPORT_KEYS=1时,zypper refresh才会自动信任新的或轮换后的软件源密钥。 - pipx/Go/Cargo/Gem/npm:从各自的注册表获取,且不进行签名验证;pipx 工具隔离在 venv 中。Go、Cargo 和 Gem 构建以调用用户的身份运行;pipx 和全局 npm 安装以 root 身份运行,因此软件包构建后端和 npm 生命周期脚本会以 root 权限执行。
- 二进制发行版:使用上游校验和文件、精确匹配的 GitHub 发行版摘要,或
lib/release_checksums.tsv中经过审核的仓库/标签/资源校验和进行 SHA256 验证。校验不匹配时总会失败;如果验证数据不可用,--require-checksums或--production也会导致失败。这些检查可确保下载完整性,但不能独立验证发布者身份。--fast会跳过常规发行版验证,且不能与严格标志同时使用;私有运行时依赖始终必须经过验证。 - 运行时引导程序:rustup、uv 和 cargo-binstall 安装程序,以及 NodeSource 的设置脚本(以 root 身份运行)会通过 HTTPS 获取,并在运行前进行合理性检查,但不会进行签名验证;在严格模式(
--production/--require-checksums)下,如果 rustup、uv 和 cargo-binstall 安装程序将在 root 权限下运行(即普通用户未通过sudo运行),则会跳过这些安装程序;NodeSource 脚本始终会被跳过,改用发行版签名的nodejs/npm。随后,cargo-binstall 会在可用时下载预构建的 Rust 二进制文件;在全新主机上,--skip-source会跳过其安装程序,因此 Rust 工具会从 crates.io 编译。 - Go SDK:在 API 可访问时,根据 go.dev 提供的信息进行 SHA256 验证;严格模式下,如果 API 不可访问,则会失败。
- Git 仓库:在 HEAD 克隆;绝不会运行仓库自身的
setup.py。requirements.txt会以调用用户的身份安装到每个仓库专属的 venv 中,其中依赖的 sdist 仍可能进行构建;在严格模式(--production或--require-checksums)之外,如果固定版本的安装失败,则会放宽==为>=后重试。 - 从源代码构建:以调用用户的身份运行
make,而不是以 root 身份运行。请审核要构建的内容。 - MCP Python 依赖项:由
uv使用 3 天的exclude-newer时间窗口解析,Dependabot 也会等待相同的 3 天。此规则不适用于安全工具本身,它们会跟随各自的上游发行渠道。 - 工具包 Docker 镜像:Ubuntu 和 uv 均固定到摘要;apt 软件包从当前签名的 Ubuntu 软件源解析,因此重新构建无法做到逐位可复现。
- 可选工具镜像:通过可变标签拉取,其中有多个使用
latest。--production不会固定或验证这些镜像。
--production 不会固定 Git 克隆、语言软件包注册表或从源代码构建的工具;它们会跟随各自的上游发行渠道。
Windows Defender 误报
在 Windows 挂载的路径上(例如 C:\Users\<you>\...,或你在 WSL 中工作时 Windows 可见的任何文件夹),Microsoft Defender 和其他防病毒产品可能会隔离单个文件。.claude/skills/、writeups/ 和 mcp_server/ 的部分内容中的 IOC 表、示例混淆 PowerShell、恶意软件分析片段和漏洞利用字符串,包含与真实攻击者使用的相同字节模式。常见的检测结果包括 Trojan:Script/Wacatac.B!ml、HackTool:* 和通用的 Heur.*。这些是安全工具包的误报。
解决方法
-
排除仓库文件夹(建议在个人开发设备上操作),在提升权限的 PowerShell 中运行:
Add-MpPreference -ExclusionPath "C:\path\to\cybersec-toolkit" -
从隔离区还原文件:依次打开 Windows 安全中心 → 病毒和威胁防护 → 保护历史记录 →“允许在设备上”。此设置针对单个文件,且无法阻止再次检测。
-
将仓库保存在 WSL 文件系统中(例如
~/cybersec-toolkit)。Defender 默认不会扫描 WSL2 的虚拟磁盘。scripts/sync-wsl.sh会为 MCP 服务执行此操作。
被 Defender 删除的文件会在 git status 中显示为 D;设置好排除项后,使用 git checkout -- <path> 还原它们。
MCP 服务
该服务让支持 MCP 的客户端能够读取 670 多种工具的注册信息、安装状态和推荐内容,并受管控地执行已安装的工具。Agent 可了解所有工具、哪些工具可用,以及如何将它们串联起来。
支持的客户端
Claude Code、Codex、Gemini CLI、OpenCode 和 GitHub Copilot CLI 会自动读取跟踪的配置;Claude Desktop、VS Code 中的 Copilot、Hermes Agent、OpenClaw、DeepSeek Harness、Cursor、Cline、Goose、Continue 和 LM Studio 通过各自的 MCP 设置连接;Ollama 或 Open WebUI 则通过 MCP 主机或桥接进行连接。包含各客户端技能发现和测试状态的支持矩阵位于 docs/AI_CLIENTS.md。
关于如何通过任意 MCP 客户端协调多个 Agent,请参阅 docs/ORCHESTRATION.md。
该服务已发布到 官方 MCP 注册表,名称为 io.github.26zl/cybersec-toolkit,并已在 Glama 上列出:
AI 能做什么
| 工具 | 功能 |
|---|---|
list_tools | 按模块、方法或安装状态列出/筛选所有 670+ 个工具(包含 URL) |
check_installed | 检查工具是否已安装(6 种检测策略) |
get_tool_info | 完整详情:方法、模块、URL、安装/更新/移除命令 |
get_module_info | 深入了解某个模块:所有工具、安装状态、使用该模块的配置 |
get_profile_tools | 查看某个配置安装的所有工具,并按模块分组 |
suggest_for_ctf | 为 14 种 CTF 挑战类别精选工具建议 |
suggest_for_bounty | 针对 7 种目标类型提供漏洞赏金工具建议,包含方法和常见漏洞 |
guided_assessment | 面向已获授权目标的协作式解决助手:对目标/发现进行分类,提供分诊关卡、推荐技能、从所有模块/配置中选择工具并逐步指导;选择启用 autonomous 后,会通过 run_tool、run_pipeline 和单独设有门控的 run_script 启动自动求解循环 |
get_cve_info | 将 CVE ID 或昵称(例如 log4shell)映射到精选技能、注册表工具、模块以及实时 NVD/KEV/EPSS 查询命令 |
recommend_install | 自然语言 → 配置/模块/工具建议 |
list_profiles | 列出全部 14 个配置、工具数量和安装命令 |
run_tool | 安全执行已安装的工具(参数净化、网络策略、速率限制、审计日志);支持通过 SSH 远程执行 |
run_pipeline | 无需 shell 即可串联工具(strings binary | grep flag) |
run_script | 明确选择启用 Python/Bash 执行,并为每个脚本选择 venv |
manage_remote_hosts | 添加、移除、列出和测试用于远程执行工具的 SSH 远程主机 |
使用示例 — 完整工作流,从进攻到防御
Agent 可以查询每个工具及其安装状态、串联受管控的工具调用、解析输出,并根据发现的结果调整方向。执行脚本需要单独选择启用。
外部侦察 → 攻击面(需要 CYBERSEC_MCP_ALLOW_EXTERNAL=1,且仅限已授权范围)
- “枚举 target.com 的攻击面,并标记所有可利用项” — 扇出执行
amass/subfinder→ 使用httpx解析并探测 → 使用whatweb识别指纹 → 运行nuclei模板 → 使用ffuf进行内容发现,随后按暴露程度对主机排序并提出后续步骤 - “发现
/go?url=存在开放重定向漏洞——将其武器化” — 使用curl验证,然后构建 SSRF / OAuth 令牌窃取 PoC,并探测是否存在可利用的回调
Web 漏洞利用
- “确认并利用登录端点上的 SQLi” — 使用
sqlmap确认并导出数据(破坏性的--os-shell/--os-cmd会被策略拦截),然后使用run_script自动执行身份验证绕过,并仅提取构建 PoC 所需的数据 - “GraphQL 内省已启用——绘制结构并查找 IDOR” — 获取 schema,生成查询,模糊测试对象 ID,并比较已验证与未验证身份的响应
Active Directory / 内网
- “在 10.10.0.0/24 上有低权限凭据——寻找通往 Domain Admin 的路径” — 使用
bloodhound收集信息,通过impacket(GetUserSPNs.py)进行 Kerberoasting,在hashcat中破解 TGS,然后通过 SSH 在 Kali 主机上使用netexec验证横向移动(manage_remote_hosts,主机模式) - “检查是否具有 DCSync 权限;如果存在路径则导出数据” — 枚举复制 ACL,然后针对 DC 运行
secretsdump.py
二进制利用与逆向工程
- “为这个 64 位二进制文件构建 ret2libc 漏洞利用” — 使用
checksec/readelf进行初步分析,使用ROPgadget查找 gadgets,通过puts@plt调用泄露 libc,然后在venv="pwntools"中编写完整的pwntools调用链,并在本地弹出 shell - “从这个已剥离符号的二进制文件中还原算法” — 将
objdump/radare2反汇编结果传入针对性分析,然后通过run_script重新实现以验证行为
加密
- “破解这个 RSA——较小的
e、多个密文” — 检测攻击(Håstad/共模/Wiener),并在虚拟环境中使用pycryptodome+sympy求解,返回明文 - “这个 JWT 使用 HS256,密钥较弱” — 破解签名密钥并伪造管理员令牌
蓝队 · 检测工程
- “为这种技术编写 Sigma 规则,并转换为我的 SIEM 格式” — 编写规则,并通过
sigma-cli将其渲染为目标后端格式(Splunk / Elastic) - “在这些 Windows 事件日志中搜寻横向移动” — 使用 Sigma 规则对 EVTX 运行
chainsaw,然后按主机和时间线汇总命中结果 - “根据这些样本构建 YARA 规则并扫描目录树” — 生成
yara特征规则并递归运行扫描
数字取证与事件响应 · 恶意软件分诊
- “为这个内存转储生成时间线” — 扫描
volatility3插件(pslist、netscan、malfind),并将结果串联成一份叙述 - “在这个 pcap 中搜寻 C2 信标” — 使用
tshark/tcpdump提取 → 应用suricata规则 → 标记周期性回连 - “对这个可疑文件进行静态分诊” —
file→strings→capa/yara,然后提取 IOC 以供补充分析
云 · 容器 · 运维
- “审计这个 AWS 账户中的公开 S3 和高风险 IAM” — 运行
prowler/scoutsuite,仅列出高严重性问题 - “在部署前扫描这个镜像和 k8s 清单” — 扫描
grype镜像,并使用kubescape检查配置 - “我的红队覆盖情况如何——并修复差距” — 将
get_profile_tools("redteam")与安装状态进行比对,并输出确切的安装命令
移动端 · 无线 · 区块链
- “对这个 APK 进行静态分析,查找密钥和不安全存储” — 使用
apktool/jadx反编译 → 执行 MobSF 风格的检查,然后搜索密钥和端点 - “审计这个 Wi-Fi 捕获文件” — 解析握手,并使用
aircrack-ng/hashcat对其进行破解 - “检查这个 Solidity 合约是否存在重入问题” — 运行
slither/mythril并解释发现的问题
run_tool 和 run_pipeline 会对参数进行清理、限制网络访问、限制调用频率并记录审计日志,同时会阻止破坏性标志(--os-shell、-rf、--exploit 等)。默认情况下,run_script 处于关闭状态:启用后,它会以服务用户的文件系统和网络权限运行任意代码(默认在虚拟机内运行,使用 --local 时则在你的主机上运行),且外部目标策略不会对其加以限制。仅可用于测试你获准测试的系统。
除非传入 --local 或设置 CYBERSEC_SANDBOX_MODE=local,否则 scripts/mcp-launch.sh 会在 Kata Containers 虚拟机内启动服务。该虚拟机由 Sandcastle 隔离沙箱提供程序(sandbox/kata.mjs)创建,该提供程序会固定 Kata 运行时;同一提供程序也可用于 Sandcastle Agent 编排循环,而非 MCP 客户端。启动失败时会安全地停止:如果缺少运行时、沙箱镜像、KVM 设备、Node.js 或启动器依赖项,服务会停止并说明原因,而不会退回到主机运行。./install.sh --doctor 会报告沙箱是否就绪。设置、调优和威胁模型见 docs/SANDBOX.md。
-
虚拟机有自己的工具集。 沙箱镜像包含 MCP 服务以及
file、git、binutils、nmap、curl和 Python。主机上安装的工具在虚拟机内不可见,check_installed和各顾问工具报告的是虚拟机中的工具。请改为将配置文件烘焙到镜像中,并在拉取服务更新后重新构建,因为镜像中包含服务的独立副本:make sandbox-image TOOLKIT_PROFILE=ctf -
文件: 除非
CYBERSEC_SANDBOX_WORKSPACE指定一个绝对目录,否则虚拟机看不到任何主机路径;指定后,该目录会映射为/workspace(设置CYBERSEC_SANDBOX_WORKSPACE_RO=1时为只读)。向run_tool传入虚拟机内的路径。 -
网络: 虚拟机使用 Docker 默认网桥。设置
CYBERSEC_SANDBOX_NETWORK=none可进行离线分析,也可以使用经过筛选的 Docker 网络来限制出站流量。 -
权限: 默认使用 uid 10001,移除所有 capabilities,启用
no-new-privileges,并限制为 2 GB 内存、2 个 vCPU 和 512 个进程。沙箱中无法进行原始套接字扫描(nmap -sS、-sU、操作系统检测):虚拟机用户没有特权,且已设置no-new-privileges,因此即使添加NET_RAWcapability 也不会生效。请使用 connect 扫描(-sT)或--local模式。 -
仅主机模式: 通过 SSH 远程执行(
manage_remote_hosts),以及在主机上创建的~/.ctf-venvs/下的 venv。 -
审计: 审计记录通过 stderr 侧信道离开虚拟机,并追加到主机日志,因此虚拟机销毁后仍会保留记录。
客户端设置
Claude Code 会读取已跟踪的 .mcp.json:
{
"mcpServers": {
"cybersec-tools": {
"command": "bash",
"args": [
"-lc",
"cd \"$(git rev-parse --show-toplevel)\" && exec bash scripts/mcp-launch.sh"
],
"env": {
"CYBERSEC_MCP_ALLOW_EXTERNAL": "0",
"CYBERSEC_MCP_ALLOW_SCRIPTS": "0"
}
}
}
}
登录 shell(bash -lc)会从配置文件中获取 node 和 uv,因此配置文件脚本不得向 stdout 输出内容,因为 stdout 承载 MCP 协议。其他客户端使用相同的启动器;可从任意目录运行:
bash /path/to/cybersec-toolkit/scripts/mcp-launch.sh # Kata VM (default)
bash /path/to/cybersec-toolkit/scripts/mcp-launch.sh --local # host, no VM boundary
- Codex:项目的
.codex/config.toml会先解析 Git 根目录,因此可从任意子目录运行。如果 Codex 忽略项目配置,请将[mcp_servers.cybersec-tools]配置块复制到~/.codex/config.toml。 - Cursor / Continue / Cline / Goose:在客户端的 MCP 设置中添加启动命令;如果客户端的工作目录不是仓库根目录,请使用绝对路径。
- LM Studio (≥0.3.17):它本身就是 MCP 主机。将服务添加到其
mcp.json(与.mcp.json使用相同的mcpServers结构)并指定绝对路径。通过 LM Studio 的 API 使用 MCP 需要 ≥0.4.0,并且需要支持 MCP 的端点,例如/api/v1/chat或/v1/responses。 - Ollama 和其他本地模型:模型运行时不支持 MCP。请在其前面使用支持 MCP 的主机(OpenCode、Hermes、OpenClaw、Kit、LM Studio、Cline、Continue、Goose,或通过 MCP→OpenAPI 桥接工具(例如
mcpo)连接的 Open WebUI),并让该主机指向启动器。
先从这一个服务开始;除非你有获授权的范围,否则不要启用脚本和外部目标;优先选择支持人工审批工具调用的主机。通用的仓库说明位于 AGENTS.md;Claude Code 会读取 CLAUDE.md,Gemini CLI 会读取 GEMINI.md。
从 WSL 连接(例如 Kali Linux)
该服务使用 stdio 通信,因此 Windows 客户端可以在 WSL 中启动它。此方式会直接在 WSL 中运行,不使用 Kata VM(相当于 --local):
{
"mcpServers": {
"cybersec-tools": {
"command": "wsl",
"args": [
"-d", "kali-linux",
"bash", "-lc",
"cd ~/cybersec-toolkit/mcp_server && uv run fastmcp run server.py --transport stdio --no-banner"
]
}
}
}
请使用 WSL 文件系统中的克隆副本,或在 Windows 检出目录中运行 scripts/sync-wsl.sh,将服务复制到 WSL 中的 ~/cybersec-toolkit(uv 无法在 NTFS 上创建 venv)。从 Windows 传递 CYBERSEC_MCP_* 变量需要使用 WSLENV;请参阅 mcp_server/README.md。
从 Docker 连接
在安装器镜像中运行服务。这是普通容器,不是 Kata VM,且其中的用户可以免密码使用 sudo:
{
"mcpServers": {
"cybersec-tools": {
"command": "docker",
"args": [
"run", "-i", "--rm",
"-e", "CYBERSEC_MCP_ALLOW_EXTERNAL=0", "-e", "CYBERSEC_MCP_ALLOW_SCRIPTS=0",
"--entrypoint", "bash", "cybersec-toolkit",
"-c",
"cd /opt/cybersec-toolkit/mcp_server && uv run fastmcp run server.py --transport stdio --no-banner"
]
}
}
}
脚本执行
run_script 允许 Agent 编写并运行 Python 或 Bash。要启用此功能,请在客户端的 env 块中设置 "CYBERSEC_MCP_ALLOW_SCRIPTS": "1"。脚本拥有服务进程的文件系统和网络权限(默认情况下为 VM 的权限,在 --local 模式下为你的用户权限),且 CYBERSEC_MCP_ALLOW_EXTERNAL 不会限制这些权限。启用前请检查生成的代码和执行范围。
没有控制台脚本的 Python 库会放在 ~/.ctf-venvs/ 下以名称区分的 venv 中(可通过 CYBERSEC_MCP_VENVS_DIR 更改),并通过每个脚本的 venv 参数选择。./install.sh --module crypto 会创建 ~/.ctf-venvs/crypto,其中包含 pycryptodome、sympy、gmpy2、numpy、z3、fpylll(以及 fpylll 在导入时需要、但未声明依赖的 cysignals)和 cypari2,这样 Agent 就可以调用 run_script(code, venv="crypto")。在沙箱中,venv 使用来宾系统路径:使用 TOOLKIT_PROFILE=ctf 构建镜像即可获得 crypto。有些软件包需要较旧版本的 Python,例如 pwntools:
python3.12 -m venv ~/.ctf-venvs/pwntools
~/.ctf-venvs/pwntools/bin/pip install pwntools z3-solver
如果不指定名称化 venv,脚本只能使用 FastMCP 和标准库;运行 cd mcp_server && uv sync --extra ctf-core 会添加 requests、pycryptodome、beautifulsoup4、Pillow 和 NumPy。
Agent 为你编写的可复用辅助工具(漏洞利用脚本、多步骤求解器、解析器、协议辅助工具)会保存在 manual_scripts/ 下。在协作模式中,Agent 会提出脚本,并仅在你批准后运行;在 autonomous 模式中,当工具和工作流无法继续取得进展时,Agent 会编写并运行范围受限的辅助工具。普通侦察和 HTTP 请求仍通过 run_tool 调用。
测试服务
cd mcp_server && uv run fastmcp dev inspector server.py
这会打开 MCP Inspector,以便交互式试用各项工具。mcp_server/README.md 介绍了 Claude Desktop 的设置方法以及完整的服务参考文档。
Agent 技能
.claude/skills/ 中有 872 项 Agent 技能,这是 Claude Code 可直接发现的权威目录树。技能会根据当前任务按需加载,而不是始终占用上下文。其中 31 项由项目编写,841 项整理自开源项目,并分别在 THIRD_PARTY_NOTICES.md 中注明来源:
- 10 项项目开发技能(
add-tool、validate-all、module-scaffold、writeup-template、mcp-sync-check、security-wordlists、security-payloads、guided-assessment、skill-dependency-audit、skill-curation-router) - 4 项跨技能协调器(
finding-triage、security-comms、authorization-gate、evidence-hygiene),用于分流发现的问题、协调沟通、检查授权,以及清理证据中的敏感信息 - 7 项覆盖缺口锚点(GRC/隐私、AI/LLM 安全、IoT/嵌入式/硬件、大型机、电信/5G、SAP/ERP、供应链/产品安全)
- 6 项 CTF 方法论技能(
ctf-crypto、ctf-pwn、ctf-web、ctf-rev、ctf-forensics、ctf-stego)和 4 项漏洞赏金方法论技能(bounty-recon、bounty-web、bounty-api、bounty-mobile) - 754 项实操指南,来自 mukul975/Anthropic-Cybersecurity-Skills(Apache 2.0)
- 58 项攻击方法论技能,来自 SnailSploit Claude-Red(MIT)
- 14 项代码审计技能,来自 Trail of Bits(CC-BY-SA 4.0)
- 10 项漏洞赏金工作流技能,来自 BugHunter (claude-bug-bounty)(MIT)
- 4 项高层级工作流,来自 Transilience(MIT)
- 1 项编码 Agent 工作流技能,来自 multica-ai/andrej-karpathy-skills(MIT)
源码和分类索引: .claude/skills/SKILLS.md。排名和整理规则:.claude/skills/CURATION.md 和 curation.json;运行 python3 scripts/curate_claude_skills.py --write 可重新生成。
作为 Claude Code 插件。 此仓库也兼作插件市场,因此任何项目都可以直接引入技能库,无需克隆:
/plugin marketplace add 26zl/cybersec-toolkit
/plugin install cybersec-toolkit@cybersec-toolkit
该插件仅包含技能;MCP 服务需单独配置(参见 MCP 服务)。
在其他客户端中。 OpenCode、Codex、Gemini CLI、GitHub Copilot、Cursor、Cline、Goose、Hermes、OpenClaw 和 DeepSeek Harness 均通过各自的路径支持 Agent 技能。对于读取该位置的客户端,scripts/sync-skills.sh 会将 .claude/skills/ 同步到被 Git 忽略的 .agents/skills/ 目录(--check 会报告差异;make setup 会运行该脚本)。Continue 和 LM Studio 未说明支持自动发现技能;请改为将选定的技能内容作为规则或上下文提供给它们。详情:docs/AI_CLIENTS.md。
辅助脚本依赖项。 部分随附技能包含辅助脚本,其中使用的可选 Python 导入项在 .claude/skills/requirements.txt 中声明,并根据导入清单生成。scripts/validate_claude_skills.py 会检查技能元数据、索引计数、整理结果是否为最新,以及辅助脚本语法。
python3 scripts/audit_skill_dependencies.py --check-declared # verify declarations
python3 -m pip install -r .claude/skills/requirements.txt # optional, ideally in a venv
开发
欢迎贡献:在不同发行版上测试安装、添加缺失的工具、修复软件包映射、改进 MCP 工作流、编写示例用例,以及报告在实际 CTF、实验室、漏洞赏金、渗透测试、DFIR 或防御工作中遇到的问题。较大的改动请提交 issue,小型修复请提交内容聚焦的 PR;CONTRIBUTING.md 中列有验证清单。
git clone https://github.com/26zl/cybersec-toolkit.git && cd cybersec-toolkit
make setup # submodules, MCP deps, sandbox deps, skill mirror
make check # lint, validators, bats, pytest, sandbox tests
make help 会列出所有目标;原始命令见 AGENTS.md。MCP Python 项目使用 uv 和 exclude-newer = "3 days" 解析依赖,因此新发布的软件包会被忽略 72 小时,以限制遭入侵的上传所造成的影响范围;Dependabot 和每周的 uv 更新工作流也采用相同的冷却时间。请在 Linux、macOS 或 WSL 上运行 shell 测试:原生 Windows 工作区可能会将 Bats 子模块改写为 CRLF,导致 $'\r' 错误。
每个版本的发布说明(包括安全修复和升级步骤)都在 GitHub Releases 页面;git log $(git describe --tags --abbrev=0).. 会显示自最新版本以来合入的内容。
Star 历史
许可证
MIT 许可证。请参阅 LICENSE。
本仓库也根据各自的条款重新分发第三方组件,其中包括一些采用 CC-BY-SA-4.0 许可证的组件(相同方式共享,不能重新授权为 MIT)。如果你重新分发或改编捆绑内容,请遵循相应条款;请参阅 THIRD_PARTY_NOTICES.md。
贡献流程:CONTRIBUTING.md。社区行为准则:CODE_OF_CONDUCT.md。漏洞报告:SECURITY.md。
免责声明
本项目仅用于教育、防御以及明确授权的安全测试。请仅在你拥有或已获得书面评估许可的系统上使用,并遵守所有适用法律、交战规则、第三方工具许可证和服务条款。
本工具包包含双重用途的攻防工具。某些命令可能会扫描网络、执行漏洞利用、修改系统或触发安全警报。MCP/AI 集成受安全策略约束,但用户仍有责任在执行操作前检查范围、提示词、命令和输出。
本仓库不重新分发安全工具本身;它会在安装时从官方上游来源安装公开可用的开源项目。本项目仅供合法授权用途。
本项目按“原样”提供,不提供任何保证。维护者不对因使用本工具包而造成的滥用、损害、数据丢失、服务中断或法律后果承担责任。
第三方内容按其原始许可证捆绑提供——请参阅
THIRD_PARTY_NOTICES.md。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。