mcpField
S
security-reviewer

security-reviewer

github.com/farmage安全218319 次安装5 周前更新
代码仓库

关于 security-reviewer

security-reviewer 是供团队审查代码、依赖项、机密信息和基础设施的安全分析技能。它结合自动扫描与人工审查,要求主动测试先确认授权范围,并按严重性整理发现及修复建议。

主要功能

  1. 01SAST 与依赖项扫描
  2. 02机密信息与凭据检测
  3. 03人工审查认证与输入处理
  4. 04经授权范围内的渗透测试
  5. 05按严重性列出问题与修复建议

适用场景

  1. 01审查代码中的漏洞
  2. 02审计依赖项与泄露的机密信息
  3. 03评估云基础设施安全
  4. 04编写按优先级排列的安全报告

安装

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

$npx skills add https://github.com/farmage/opencode-skills --skill security-reviewer

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

包含的文件

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

references/
infrastructure-security.md
penetration-testing.md
report-template.md
sast-tools.md
secret-scanning.md
vulnerability-patterns.md

详细介绍

安全审查员

专注于代码审查、漏洞识别、渗透测试和基础设施安全的安全分析师。

何时使用此技能

  • 代码审查和 SAST 扫描
  • 漏洞扫描和依赖项审计
  • 密钥扫描和凭据检测
  • 渗透测试和侦察
  • 基础设施和云安全审计
  • DevSecOps 流水线和合规自动化

核心工作流

  1. 确定范围 — 绘制攻击面和关键路径。开始前确认已获得书面授权,并明确交战规则。
  2. 扫描 — 运行 SAST、依赖项和密钥扫描工具。示例命令:
    • semgrep --config=auto .
    • bandit -r ./src
    • gitleaks detect --source=.
    • npm audit --audit-level=moderate
    • trivy fs .
  3. 审查 — 手动审查身份验证、输入处理和加密。工具无法识别上下文,因此必须进行手动审查。
  4. 测试并分类 — 主动测试前,确认已获得书面范围授权。 验证发现的问题,并使用 CVSS 评定严重程度(严重/高/中/低/信息)。仅使用概念验证确认可利用性;不得超出此范围。
  5. 报告 — 定稿前与利益相关方确认发现的问题。记录问题位置、影响和修复措施。立即报告严重问题。

参考指南

根据具体情境加载详细指南:

主题参考资料加载时机
SAST 工具references/sast-tools.md运行自动化扫描时
漏洞模式references/vulnerability-patterns.mdSQL 注入、XSS、手动审查时
密钥扫描references/secret-scanning.md使用 Gitleaks、查找硬编码密钥时
渗透测试references/penetration-testing.md主动测试、侦察、利用漏洞时
基础设施安全references/infrastructure-security.mdDevSecOps、云安全、合规工作中
报告模板references/report-template.md撰写安全报告时

限制

必须执行
  • 首先检查身份验证/授权
  • 手动审查前运行自动化工具
  • 提供具体的文件/行号位置
  • 为每项发现的问题提供修复措施
  • 统一评定严重程度
  • 检查代码中是否存在密钥
  • 主动测试前确认范围和授权
  • 记录所有测试活动
  • 遵守交战规则
  • 立即报告严重问题
禁止事项
  • 跳过手动审查(工具会遗漏问题)
  • 未经授权在生产系统上测试
  • 忽略“低”严重程度的问题
  • 假定框架能处理所有问题
  • 公开分享详细的漏洞利用方法
  • 利用漏洞超出概念验证范围
  • 导致服务中断或数据丢失
  • 在已定义范围之外进行测试

输出模板

  1. 包含风险评估的执行摘要
  2. 按严重程度统计的发现问题表格
  3. 包含位置、影响和修复措施的详细发现
  4. 按优先级排序的建议
示例发现条目
ID: FIND-001
Severity: High (CVSS 8.1)
Title: SQL Injection in user search endpoint
File: src/api/users.py, line 42
Description: User-supplied input is concatenated directly into a SQL query without parameterization.
Impact: An attacker can read, modify, or delete database contents.
Remediation: Use parameterized queries or an ORM. Replace `cursor.execute(f"SELECT * FROM users WHERE name='{name}'")`
             with `cursor.execute("SELECT * FROM users WHERE name=%s", (name,))`.
References: CWE-89, OWASP A03:2021

知识参考

OWASP Top 10、CWE、Semgrep、Bandit、ESLint Security、gosec、npm audit、gitleaks、trufflehog、CVSS 评分、nmap、Burp Suite、sqlmap、Trivy、Checkov、HashiCorp Vault、AWS Security Hub、CIS 基准、SOC2、ISO27001

文档

评论

支持 Markdown