mcpField
S
security-testing-patterns

security-testing-patterns

github.com/nickcrew安全62150 次安装17 周前更新
代码仓库

关于 security-testing-patterns

为开发与安全团队提供安全测试方法指导,涵盖静态、动态、依赖分析及人工测试,并强调分层检测与风险排序。

主要功能

  1. 01SAST、DAST 与 SCA 方法
  2. 02渗透测试与模糊测试
  3. 03CI/CD 安全扫描规划
  4. 04发现项分级与修复跟踪

适用场景

  1. 01设计 CI/CD 安全测试流程
  2. 02评估 API 与认证授权安全
  3. 03审查漏洞并安排修复优先级

安装

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

$npx skills add https://github.com/nickcrew/claude-cortex --skill security-testing-patterns

安装后在 Claude Code 中输入/security-testing-patterns确认已加载。

包含的文件

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

references/
api-security.md
automation-pipeline.md
dast.md
fuzzing.md
penetration-testing.md
sast.md
sca.md

详细介绍

安全测试模式

有关实施全面安全测试策略的专家指导,包括静态分析、动态测试、渗透测试和漏洞评估。

何时使用此技能

  • 在 CI/CD 中实施安全测试流水线
  • 开展安全审计和漏洞评估
  • 验证应用的安全控制和防御措施
  • 执行渗透测试和安全审查
  • 配置 SAST/DAST 工具并解读结果
  • 测试身份验证和授权机制
  • 评估 API 安全性及其对 OWASP 标准的合规性
  • 将安全扫描集成到开发工作流中
  • 响应安全问题并确定修复优先级
  • 培训团队掌握安全测试方法

核心概念

安全测试金字塔(分层方法)
  1. 单元安全测试 - 测试安全功能(加密、验证)
  2. SAST - 开发期间进行静态分析
  3. SCA - 依赖项和组件漏洞扫描
  4. DAST - 测试运行中的应用
  5. IAST - 结合 SAST 和 DAST 的交互式分析
  6. 渗透测试 - 专家执行的手动安全测试
  7. 红队演练 - 对抗性模拟测试
测试类别

静态测试(SAST)

  • 无需执行即可分析源代码
  • 在开发生命周期早期检测问题
  • 完整的代码覆盖率
  • 误报率较高

动态测试(DAST)

  • 测试运行中的应用
  • 检测运行时和配置问题
  • 与编程语言无关
  • 需要已部署的环境

组成分析(SCA)

  • 扫描依赖项中的漏洞
  • 跟踪许可证合规性
  • 提供自动修复选项

手动测试

  • 渗透测试
  • 业务逻辑验证
  • 复杂攻击场景

快速参考

任务加载参考资料
静态应用安全测试(SAST)skills/security-testing-patterns/references/sast.md
动态应用安全测试(DAST)skills/security-testing-patterns/references/dast.md
软件组成分析(SCA)skills/security-testing-patterns/references/sca.md
渗透测试技术skills/security-testing-patterns/references/penetration-testing.md
API 安全测试(OWASP Top 10)skills/security-testing-patterns/references/api-security.md
模糊测试和基于属性的测试skills/security-testing-patterns/references/fuzzing.md
安全自动化流水线skills/security-testing-patterns/references/automation-pipeline.md

安全测试工作流

阶段 1:规划
  1. 定义安全要求和威胁模型
  2. 选择合适的测试工具和技术
  3. 建立安全基线
  4. 设置严重性阈值和验收标准
阶段 2:自动化测试
  1. SAST - 集成到 IDE 和 CI/CD 流水线中
  2. SCA - 配置依赖项扫描(npm audit、Snyk、Dependabot)
  3. DAST - 安排针对已部署环境的扫描
  4. 容器扫描 - 扫描 Docker 镜像(Trivy、Aqua)
阶段 3:手动测试
  1. 身份验证和授权测试
  2. 业务逻辑漏洞评估
  3. API 安全测试(OWASP API Top 10)
  4. 渗透测试和漏洞利用
阶段 4:分析与修复
  1. 根据严重性和可利用性对发现的问题进行分类
  2. 排除误报
  3. 根据风险确定修复优先级
  4. 跟踪漏洞直至解决
  5. 通过回归测试验证修复
阶段 5:持续监控
  1. 监控依赖项中的新漏洞
  2. 代码变更后重新扫描
  3. 定期开展渗透测试
  4. 更新安全基线和策略

常见错误

工具选择
  • 错误:只使用 SAST 或只使用 DAST
  • 正确:采用分层方法,结合多种测试类型
误报管理
  • 错误做法:未经审查便忽略或屏蔽发现的问题
  • 正确做法:采用系统化的分流流程,并由安全团队进行验证
集成时机
  • 错误做法:仅在发布前进行安全测试
  • 正确做法:在整个开发过程中持续进行安全测试
范围定义
  • 错误做法:仅测试主应用程序代码
  • 正确做法:将依赖项、API、基础设施和第三方集成纳入测试范围
修复优先级
  • 错误做法:对所有发现的问题一视同仁
  • 正确做法:基于风险确定优先级(严重性 × 可利用性 × 业务影响)
测试中的身份验证
  • 错误做法:在未进行身份验证的情况下执行 DAST 扫描
  • 正确做法:配置经过身份验证的扫描,以测试受保护的功能

最佳实践

  1. 左移:在开发早期集成安全测试
  2. 持续测试:在 CI/CD 流水线中自动执行安全扫描
  3. 分层方法:结合 SAST、DAST、SCA 和手动测试
  4. 基于风险的测试:根据威胁模型确定测试优先级
  5. 误报管理:建立发现问题的分流流程
  6. 修复跟踪:使用 SIEM/SOAR 进行漏洞管理
  7. 定期更新:确保安全工具和特征库保持最新
  8. 安全倡导者:对开发人员进行安全测试培训
  9. 指标和 KPI:持续跟踪安全态势
  10. 合规性验证:将测试与监管要求对应起来

资源

评论

支持 Markdown