mcpField
P
pentest-validation

pentest-validation

github.com/proffesor-for-testing安全519142 次安装今天更新
代码仓库

关于 pentest-validation

pentest-validation 是用于安全发现验证的测试技能,面向安全测试与开发团队。它要求先获授权,仅对开发或预发布目标进行分级利用验证,并以可复现的 PoC 作为报告依据。

主要功能

  1. 01四阶段安全验证流程
  2. 02按漏洞类型并行验证
  3. 03分级利用与预算、时间限制
  4. 04仅报告有证据的发现
  5. 05记录验证并更新利用手册

适用场景

  1. 01审查拉取请求中的源代码安全问题
  2. 02验证预发布环境中的漏洞
  3. 03为合规审计收集 PoC 证据

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/proffesor-for-testing/agentic-qe --skill pentest-validation

安装后在 Claude Code 中输入/pentest-validation确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
pentest-validation.yaml
schemas/
output.json
scripts/
validate-config.json

详细介绍

渗透测试验证

<default_to_action> 验证安全问题时:

  1. 要求明确授权目标 URL
  2. 使用 qe-security-scanner 扫描(SAST + 依赖项 + 密钥)
  3. 使用 qe-security-reviewer + qe-security-auditor 分析(并行)
  4. 使用 qe-pentest-validator 验证(分级利用,按漏洞类型并行)
  5. 仅报告已确认的问题,并提供 PoC 证据(“没有利用,就不报告”)
  6. 使用新模式更新漏洞利用手册

质量关卡:

  • 在进行任何利用之前,必须确认已获授权
  • 目标 URL 必须指向预发布/开发环境(不能是生产环境)
  • 强制执行预算上限(默认 $15)
  • 强制执行时间上限(默认 30 分钟)
  • 记录所有利用尝试 </default_to_action>

快速参考卡

4 阶段流水线
阶段Agent用途并行方式
1. 侦察qe-security-scannerSAST、DAST、依赖项扫描、密钥扫描内部并行
2. 分析qe-security-reviewer + qe-security-auditor代码审查 + 合规性检查两者并行
3. 验证qe-pentest-validator分级漏洞利用验证按漏洞类型并行
4. 报告qe-quality-gate“没有利用,就不报告”筛选顺序执行
分级漏洞利用层级
层级处理器成本延迟使用时机
1Agent Booster (WASM)$0<1ms代码模式结论明确(eval、innerHTML、硬编码凭据)
2Haiku$0.0002~500ms需要针对在线目标测试载荷
3Sonnet/Opus$0.003-$0.0152-5s完整漏洞利用链,并提供数据证明
何时使用此技能
场景层级预估成本
PR 安全审查(仅源代码)1$0
发布前验证(预发布环境)1-2$1-5
完整渗透测试验证1-3$5-15
合规审计证据1-3$5-15

配置

pentest:
  target_url: https://staging.app.com    # REQUIRED for Tier 2-3
  source_repo: ./src                      # REQUIRED for Tier 1+
  exploitation_tier: 2                    # 1=pattern-only, 2=payload-test, 3=full-exploit
  vuln_types:                             # Which pipelines to run
    - injection                           # SQL, NoSQL, command injection
    - xss                                 # Reflected, stored, DOM XSS
    - auth                                # Auth bypass, session, JWT
    - ssrf                                # URL scheme abuse, metadata
  max_cost_usd: 15                        # Budget cap per run
  timeout_minutes: 30                     # Time cap per run
  require_authorization: true             # MUST confirm target ownership
  no_production: true                     # Block production URLs
  production_patterns:                    # URL patterns to block
    - "*.prod.*"
    - "api.*"
    - "www.*"

安全防护(强制)

授权关卡

每次渗透测试验证都必须:

  1. 向用户显示目标 URL 和利用层级
  2. 要求明确确认:“我拥有此目标,或已获准测试此目标”
  3. 记录授权及时间戳
  4. 如果目标 URL 符合生产环境特征,则阻止操作
此技能不会执行的操作
  • 完全自主的侦察(Nmap、Subfinder)
  • 零日漏洞利用开发
  • 未经明确授权攻击目标
  • 测试生产系统
  • 存储实际外泄数据(仅保存访问证明)
  • 社会工程或钓鱼模拟
  • 端口扫描或服务发现

验证流水线

注入流水线
攻击第 1 层(模式)第 2 层(载荷)第 3 层(完整)
SQL 注入查询中的字符串拼接' OR '1'='1 响应差异UNION SELECT 数据提取
NoSQL 注入查询中的 $where、$gt运算符注入测试集合枚举
命令注入exec()、system() 调用命令分隔符测试反向 Shell 证明
LDAP 注入筛选器中的字符串拼接通配符注入目录枚举
XSS 流水线
攻击第 1 层(模式)第 2 层(载荷)第 3 层(完整)
反射型 XSS未进行输出编码<img onerror> 反射通过 qe-browser (Vibium) 执行浏览器 JS
存储型 XSSinnerHTML 赋值载荷存储并取回Cookie 窃取 PoC
DOM XSSdocument.write(location)片段注入DOM 操作证明
身份验证流水线
攻击Tier 1(模式)Tier 2(载荷)Tier 3(完整)
JWT none未验证算法接受修改后的 JWT使用伪造令牌获取管理员访问权限
会话固定未轮换会话重用预设会话跨用户会话劫持
凭据填充未限制速率100 次尝试均未受阻发现有效凭据
IDOR未检查授权访问其他用户数据对他人资源执行完整 CRUD
SSRF 流水线
攻击Tier 1(模式)Tier 2(载荷)Tier 3(完整)
内部 URL获取用户控制的 URLhttp://169.254.169.254提取云元数据
DNS 重绑定绕过 URL 验证重绑定到内部 IP访问内部服务
协议混淆未限制 URL schemefile:///etc/passwd在响应中返回文件内容

Agent 协作

编排模式
// Phase 1: Recon (parallel scans)
await Task("Security Scan", {
  target: "./src",
  layers: { sast: true, dast: true, dependencies: true, secrets: true }
}, "qe-security-scanner");

// Phase 2: Analysis (parallel review)
await Promise.all([
  Task("Code Security Review", {
    findings: phase1Results,
    depth: "comprehensive"
  }, "qe-security-reviewer"),

  Task("Compliance Audit", {
    findings: phase1Results,
    frameworks: ["owasp-top-10"]
  }, "qe-security-auditor")
]);

// Phase 3: Validation (graduated exploitation)
await Task("Exploit Validation", {
  findings: [...phase1Results, ...phase2Results],
  target_url: "https://staging.app.com",
  exploitation_tier: 2,
  vuln_types: ["injection", "xss", "auth", "ssrf"],
  max_cost_usd: 15,
  timeout_minutes: 30
}, "qe-pentest-validator");

// Phase 4: Report ("No Exploit, No Report" gate)
await Task("Security Quality Gate", {
  findings: phase3Results.confirmedFindings,
  gate: "no-exploit-no-report",
  require_poc: true
}, "qe-quality-gate");
漏洞分类
状态含义操作
confirmed-exploitable已通过 PoC 成功利用附上证据报告
likely-exploitable部分利用成功,检测到防御措施注明限制后报告
not-exploitable所有利用尝试均失败从报告中过滤掉
inconclusiveWAF/防御措施阻止了攻击,无法确定是否存在漏洞提交人工审核

漏洞利用手册记忆

命名空间结构
aqe/pentest/
 playbook/
  exploit/{vuln_type}/{tech_stack}/{technique}
  bypass/{defense_type}/{technique}
  payload/{vuln_type}/{variant}
 results/
  validation-{timestamp}
 poc/
  {finding_id}-poc
学习循环
  1. 验证前:查询漏洞利用手册,查找与发现的问题匹配的已知模式
  2. 验证期间:优先尝试已知载荷(成功率更高)
  3. 验证后:存储新的成功模式及其置信度分数
  4. 随着时间推移:Agent 会针对每种技术栈逐渐收敛到最有效的载荷

成本优化

各场景预估成本
场景Tier 组合发现的问题预估成本预估时间
PR 检查(仅源代码)100% Tier 15$0<5s
Sprint 验证70% T1,30% T215$2-55-10 min
发布验证40% T1,40% T2,20% T325$8-1515-30 min
完整渗透测试20% T1,30% T2,50% T340$15-3030-60 min
与 Shannon 的成本对比
指标ShannonAQE 渗透测试验证
每次运行成本~$50$5-15(分级)
运行时间60-90 min15-30 min(并行流水线)
误报率低(经利用验证)低(原理相同)
学习能力无(静态提示词)ReasoningBank 漏洞利用手册

成功指标

指标目标衡量方式
误报减少率消除 >60% 的发现问题比较验证器运行前后的结果
漏洞利用确认率已确认的问题中,>80% 确实可利用人工 PoC 验证
每次运行成本<$15 USD按流水线跟踪令牌用量
每次运行时间<30 分钟执行时间指标
漏洞利用手册增长6 个月后达到 100+ 个模式记忆命名空间计数

相关技能


请记住

“没有漏洞利用,就不提交报告。” 无法证明漏洞可被利用的扫描器,提供的价值并不确定。这项技能将安全发现从理论风险转化为有证据支持的已验证漏洞。每个已确认的问题都附有可复现的概念验证。每个误报都会在进入报告前被排除。

要证明,而非预测。 不要报告可能存在漏洞的内容,要证明确实存在漏洞。

评论

支持 Markdown