Skip to main content

tool-supply-chain-audit

审计 AboutSecurity skills 中引用的渗透工具与 f8x 安装器、arsenal 投递物仓库、tchkiller --check 之间的同步状态。当新增或修改了 skill、往 f8x 加了新工具、或者想检查工具覆盖完整性时使用此 skill。涉及关键词:工具审计、f8x 覆盖、arsenal 同步、--check 检查、工具链维护。

Datos de origen

Repositorio
wgpsec/tchkiller
Última actividad en el origen
17 de abril de 2026 a las 13:08
Idioma detectado de SKILL.md
chino
Estrellas
71
Forks
7

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Explorador de archivos
3 archivos

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
tool-supply-chain-audit
description
审计 AboutSecurity skills 中引用的渗透工具与 f8x 安装器、arsenal 投递物仓库、tchkiller --check 之间的同步状态。当新增或修改了 skill、往 f8x 加了新工具、或者想检查工具覆盖完整性时使用此 skill。涉及关键词:工具审计、f8x 覆盖、arsenal 同步、--check 检查、工具链维护。
# 工具供应链审计 当 skill 引用了一个渗透工具,需要保证 4 个环节同步,形成完整的**工具供应链**: ``` Skill 引用工具 → f8x 安装函数 → f8x arsenal 投递 → tchkiller --check 检查 ① ② ③ ④ ``` 任何一环缺失都会导致:agent 加载了 skill 却找不到工具、投递物缺失、环境检查遗漏。 ## 审计流程 ### Phase 1: 提取 Skill 工具清单 扫描目标 skill 目录下的所有 `.md` 文件(SKILL.md + references/),提取工具引用: **提取规则**: - 代码块中的命令首词(`python3 xxx.py`, `./tool`, `tool --flag`) - 工具表格中的工具名 - `wget/curl` 下载的工具 URL - `Skill(skill="xxx")` 交叉引用中涉及的工具 **分类**:每个工具标记类型: - `PATH` — 系统 PATH 中可直接调用(nmap, curl, impacket-*) - `PENTEST` — 安装在 `/pentest/` 下的 PoC/脚本(noPac, zerologon) - `ARSENAL` — 需要预编译多平台二进制投递到目标(fscan, chisel) - `PIP` — Python pip 安装(tccli, certipy) - `SYSTEM` — 系统自带/apt 安装(mount, nsenter, tcpdump) ### Phase 2: 对比 f8x 覆盖 打开 f8x 脚本(`<f8x-repo>/f8x`),检查每个工具: **f8x 安装检查**(详见 → `references/f8x-architecture.md`): 1. 是否有版本变量(`xxx_Ver="v1.0"`,文件顶部 ~行 40-430) 2. 是否有安装函数(`Pentest_xxx_Install()`) 3. 是否注册到 `F8X_TOOL_LIST`(~行 10706+,格式 `name|function|level`) 4. 是否在对应的安装组调用(`cloud()` / `Ad_Tools()` 等) **判断标准**: - `SYSTEM` 类工具(apt 包)→ 不需要 f8x 覆盖,跳过 - `PATH` 类且已通过 pip/go install 安装的 → 检查 f8x 是否有函数 - `PENTEST` 类(git clone 的 PoC)→ 必须有 f8x 安装函数 - `PIP` 类 → 应有 f8x 安装函数 ### Phase 3: 对比 Arsenal 覆盖 检查工具是否适合 arsenal 投递,并对比当前 arsenal 配置: **Arsenal 适合条件**(满足任一): - Go/Rust 静态编译二进制,有 GitHub Releases 多平台预编译文件 - 需要在目标机上直接执行的工具(不是攻击机上用的) - 已有的 agent 类工具(ligolo-agent, frpc) **不适合 arsenal 的**: - Python 脚本(需要运行环境) - 攻击机本地工具(nmap, responder) - 系统工具(apt 包) **f8x arsenal 检查**(详见 → `references/f8x-architecture.md`): 1. 是否在 `ARSENAL_TOOLS` 列表(~行 11110+) 2. 如果工具 release 格式非标准,是否有自定义 `case` 块 3. 涉及哪些平台(linux_amd64, linux_arm64, windows_amd64) ### Phase 4: 对比 tchkiller --check 检查工具是否注册到 tchkiller 的环境检查(详见 → `references/tchkiller-check-architecture.md`): 1. `pentest_tools` 列表(~行 294)— PATH 中的渗透工具 2. `_ARSENAL_TOOLS` 列表(~行 427)— arsenal 投递物检查 3. mkdir 提示信息中的工具列表 ### Phase 5: 检查 Skill 路径正确性 对 `PENTEST` 类工具,检查 skill 中是否使用了绝对路径: - 应该用 `/pentest/工具名/脚本.py` 而不是裸名 `脚本.py` - 路径应与 f8x 安装函数中的 `$P_Dir/xxx` 一致(默认 `/pentest/`) ## 输出格式 ```markdown # 工具供应链审计报告 ## 审计范围 - Skills: xxx, yyy - f8x: /path/to/f8x - tchkiller: /path/to/main.py ## 工具清单 | 工具 | 类型 | 引用来源 | f8x 安装 | Arsenal | --check | Skill 路径 | |------|------|----------|----------|---------|---------|------------| | noPac | PENTEST | ad-domain-attack | ✅ | N/A | ❌ | ✅ /pentest/noPac/ | | fscan | ARSENAL | tool-delivery | ✅ | ✅ | ✅ | ✅ | | tcpdump | SYSTEM | k8s-sidecar-attack | N/A | N/A | N/A | N/A | ## 缺失项(需要修复) 1. ❌ `xxx` 未在 f8x 中注册 → 需要添加安装函数 2. ❌ `yyy` 适合 arsenal 但未添加 → 检查 release 格式后添加 3. ❌ `zzz` 未在 --check 中注册 ## 已完整覆盖 ✅ 所有 PATH/PENTEST/ARSENAL 类工具已同步 ``` ## 关键文件路径 | 文件 | 作用 | |------|------| | `<f8x-repo>/f8x` | f8x 安装器主脚本 | | `<tchkiller-repo>/main.py` | tchkiller 入口(含 --check) | | `<skills-repo>/` | Skill 仓库根目录 | | `<tchkiller-repo>/prompt/system.py` | 系统提示词(本地资源路径) | | `<tchkiller-repo>/mcp_server.py` | MCP 工具(含 locate_tool) |
Ver en GitHub