mcpField
W
web-app-penetration-testing

web-app-penetration-testing

github.com/usestrix安全72.6k13.6k 次安装今天更新
代码仓库

关于 web-app-penetration-testing

这项 Strix 技能用于对运行中的 Web 应用进行黑盒渗透测试,也可结合源代码分析,面向经授权的安全测试。它强调以可执行漏洞利用验证报告的问题,并指导设定范围及检查扫描是否完整。

主要功能

  1. 01Web 应用黑盒测试
  2. 02可选的源代码辅助扫描
  3. 03凭据与测试范围指引
  4. 04以漏洞利用验证报告问题
  5. 05扫描完成度与结果审查

适用场景

  1. 01测试获准检查的预发布应用
  2. 02使用测试账号检查跨账号访问
  3. 03重新测试漏洞修复效果
  4. 04检查本地开发服务器

安装

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

$npx skills add https://github.com/usestrix/strix --skill web-app-penetration-testing

安装后在 Claude Code 中输入/web-app-penetration-testing确认已加载。

详细介绍

对 Web 应用进行渗透测试

使用 Strix 的自主 Agent 对正在运行的 Web 应用进行黑盒(也可选源代码辅助)渗透测试。每项报告的发现都会通过可用的漏洞利用进行验证,因此无需筛查基于特征匹配的误报。

penetration-testing-with-strix 技能涵盖安装、LLM 设置、所有 CLI 标志以及托管云替代方案——如果目标不是正在运行的 Web 应用,或 strix --version 运行失败,请阅读该技能。如果要在没有 Docker 和 LLM 密钥的情况下运行,同一个二进制文件也可以驱动托管平台:先运行 strix cloud login,再运行 strix cloud scans start ...(详情请见 managed-pentesting-with-strix)。本技能介绍的是 Web 应用专属工作流。

1. 确认授权和范围

运行任何操作前,请确认:

  • 目标属于用户(或用户已明确获得测试授权)。切勿凭猜测对第三方网站进行渗透测试。
  • 测试环境。 优先选择预发布环境,而非生产环境;Agent 会发送真实的漏洞利用载荷,并创建或修改数据。
  • 范围外路径——支付流程、批量邮件端点、管理员破坏性操作、第三方 SSO 提供商。
  • 凭据。 大多数真实漏洞都存在于登录后区域。没有测试账户,Agent 只能看到营销页面。

缺少任何信息时,请先询问,不要猜测。

2. 运行扫描

strix -n -t https://staging.example.com --max-budget 20 \
  --instruction "Test account: [email protected] / <password>. In scope: /app/*, /api/*. Do not touch /billing or send email. Focus on access control between the two seeded orgs."

Web 应用测试中需要特别注意以下事项:

  • 通过 --instruction 提供凭据(较长的内容使用 --instruction-file),并说明如何登录,尤其是登录流程不常见时(例如魔法链接、SSO、免 MFA 的测试用户)。
  • 两个账户胜过一个。 多租户 IDOR 和访问控制失效问题一直是 Web 应用中影响最大的漏洞类型之一;只有 Agent 能尝试跨账户访问时,才能验证此类问题。
  • 有源码时,添加代码库以进行白盒深度测试: -t https://github.com/org/app -t https://staging.example.com(或本地路径)。源码访问可显著提升对业务逻辑和授权缺陷的覆盖率。
  • 支持 localhost。 指向 http://host.docker.internal:3000(Docker Desktop),让沙盒能够访问主机上的开发服务器。
  • 开发循环中快速检查可使用 --scan-mode quick,常规审查可使用 standard(约 30 分钟),发布前保障可使用 deep。务必设置 --max-budget。

如果要在没有 Docker 或 LLM 密钥的情况下进行托管运行,或者用户需要可分享的仪表板和可供审计的 PDF,请改用 managed-pentesting-with-strix 中的云端流程——引擎和发现结果相同。

3. 审查结果

先阅读 strix_runs/<run>/penetration_test_report.md,再查看 vulnerabilities/ 中逐项发现的文件。每个文件都包含 PoC——向用户报告前,请自行重新运行以确认。

退出代码:0 表示已分析内容中没有经过验证的漏洞,2 表示发现漏洞,1 表示致命错误。0 并不能证明覆盖完整——如果达到预算或轮次上限,扫描会提前结束,因此在确认应用安全前,请检查 run.json 中的状态和成本是否达到 --max-budget。

4. 修复并验证

将发现的问题交由 fix-security-vulnerabilities-with-strix 技能处理:修复根本原因,然后针对同一目标重新运行 Strix,以证明漏洞利用已无法奏效。重新测试是确认修复已生效的唯一可靠方式。

如果希望每次变更时都测试应用,而不是只测一次,可使用 ci-security-scanning-with-strix 将 Strix 集成到 CI 中。

评论

支持 Markdown