mcpField
C
configure-security

configure-security

github.com/laurigates安全5967 次安装1 天前更新
代码仓库

关于 configure-security

用于检查和配置项目安全措施的技能,涵盖依赖审计、SAST、密钥检测与安全策略。它会识别项目语言和现有防护项,并指导生成合规报告及配置变更。

主要功能

  1. 01检测项目语言与现有措施
  2. 02配置依赖审计
  3. 03设置 SAST 扫描
  4. 04配置密钥检测
  5. 05创建 SECURITY.md 策略
  6. 06将安全检查接入 CI/CD

适用场景

  1. 01检查项目缺失的安全扫描
  2. 02添加针对语言的依赖检查
  3. 03在 CI 中设置代码与密钥扫描

安装

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

$npx skills add https://github.com/laurigates/claude-plugins --skill configure-security

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

包含的文件

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

REFERENCE.md
scripts/
configure-security.sh
scripts/tests/
test-configure-security.sh

详细介绍

/configure:security

检查并配置用于依赖项审计、SAST 和机密检测的安全扫描工具。

何时使用此技能

在以下情况下使用此技能……在以下情况下采用其他方法……
为项目设置依赖项审计、SAST 或机密检测执行一次性安全扫描(直接使用 gitleaks detect 或 npm audit)
检查项目是否符合安全扫描标准审查代码中的应用级漏洞(使用 security-audit agent)
在 CI/CD 中配置 Dependabot、CodeQL 或 TruffleHog通过网页 UI 管理 GitHub 仓库的安全设置
创建或更新 SECURITY.md 策略编写超出策略模板范围的安全文档
审计项目缺少哪些安全工具调查特定的 CVE 或漏洞

上下文

  • 包文件:!find . -maxdepth 1 \( -name 'package.json' -o -name 'pyproject.toml' -o -name 'Cargo.toml' -o -name 'go.mod' \)
  • Gitleaks 配置:!find . -maxdepth 1 -name '.gitleaks.toml'
  • Pre-commit 配置:!find . -maxdepth 1 -name '.pre-commit-config.yaml'
  • 工作流目录:!find . -maxdepth 2 -type d -path '*/.github/workflows'
  • Dependabot 配置:!find . -maxdepth 2 -path '*/.github/dependabot.yml'
  • CodeQL 工作流:!find . -maxdepth 3 -path '*/.github/workflows/codeql*'
  • 安全策略:!find . -maxdepth 1 -name 'SECURITY.md'

安全扫描层:

  1. 依赖项审计 - 检查依赖项中已知的漏洞
  2. SAST(静态应用程序安全测试) - 分析代码中的安全问题
  3. 机密检测 - 防止将机密提交到版本控制系统

参数

从命令参数中解析:

  • --check-only:报告状态,不提供修复方案
  • --fix:无需提示,自动应用所有修复
  • --type <type>:专注于特定安全类型(dependencies、sast、secrets、all)

执行

执行此安全扫描配置检查:

第 1 步:获取最新工具版本

配置前确认最新版本:

  1. Trivy:查看 GitHub releases
  2. Grype:查看 GitHub releases
  3. gitleaks:查看 GitHub releases
  4. pip-audit:查看 PyPI
  5. cargo-audit:查看 crates.io
  6. CodeQL:查看 GitHub releases

使用 WebSearch 或 WebFetch 确认当前版本。

第 2 步:检测项目语言和安全状况

运行检测脚本,扫描项目中的语言特征以及三类安全层(依赖项审计 / SAST / 机密检测),并检查是否存在 SECURITY.md 策略:

bash "${CLAUDE_SKILL_DIR}/scripts/configure-security.sh" --home-dir "$HOME" --project-dir "$(pwd)"

解析输出中的 STATUS= 和 ISSUES: 块。KEY=VALUE 行报告语言检测结果(LANG_JS、LANG_PYTHON、LANG_RUST、LANG_GO)以及存在情况矩阵(DEPENDABOT、CODEQL、GITLEAKS_CONFIG、SECURITY_POLICY、TRUFFLEHOG、DEPENDENCY_REVIEW、SECURITY_LAYERS_PRESENT)。

第 3 步:生成合规报告

打印格式化的合规报告,显示依赖项审计、SAST 扫描、机密检测和安全策略各项组件的状态。

如果设置了 --check-only,则在此处停止。

合规报告格式请参阅 REFERENCE.md。

第 4 步:配置依赖项审计(如果指定了 --fix 或用户确认)

根据检测到的语言:

JavaScript/TypeScript(npm/bun):

  1. 在 package.json 中添加审计脚本
  2. 创建 Dependabot 配置 .github/dependabot.yml
  3. 创建依赖项审查工作流 .github/workflows/dependency-review.yml

Python(pip-audit):

  1. 安装 pip-audit:uv add --group dev pip-audit
  2. 创建审计脚本

Rust(cargo-audit):

  1. 安装 cargo-audit:cargo install cargo-audit --locked
  2. 在 .cargo/audit.toml 中进行配置

完整配置模板请参阅 REFERENCE.md。

第 5 步:配置 SAST 扫描(如果指定了 --fix 或用户确认)
  1. 根据检测到的语言创建 CodeQL 工作流 .github/workflows/codeql.yml
  2. 对于 Python 项目,安装并配置 Bandit
  3. 运行 Bandit:uv run bandit -r src/ -f json -o bandit-report.json

CodeQL 工作流和 Bandit 配置模板请参阅 REFERENCE.md。

第 6 步:配置密钥检测(如果指定了 --fix 或用户确认)
  1. 安装 gitleaks:brew install gitleaks(或 go install github.com/gitleaks/gitleaks/v8@latest)
  2. 创建 .gitleaks.toml,添加项目专属的允许列表
  3. 运行初始扫描:gitleaks detect --source .
  4. 在 .pre-commit-config.yaml 中添加 pre-commit 钩子
  5. 可选:配置 TruffleHog 工作流以用于 CI

gitleaks、TruffleHog 和 CI 工作流配置模板请参阅 REFERENCE.md。

第 7 步:创建安全策略

根据 REFERENCE.md 中的模板创建 SECURITY.md(包含支持版本表、漏洞 报告流程、报告内容、最佳实践和自动化工具列表)。

第 8 步:配置 CI/CD 集成

创建全面的安全工作流 .github/workflows/security.yml,包含以下作业:

  • 依赖项审计
  • 密钥扫描(TruffleHog)
  • SAST 扫描(CodeQL)

除了 push/PR 触发器外,还应安排每周扫描。

CI 安全工作流模板请参阅 REFERENCE.md。

第 9 步:更新标准跟踪

使用 security 组件键更新 .project-standards.yaml。确切内容块请参阅 REFERENCE.md。

第 10 步:报告配置结果

打印摘要,列出在依赖项审计、SAST 扫描、密钥检测、安全策略和 CI/CD 集成方面所做的所有更改。提供后续步骤,包括审查 Dependabot PR、查看 CodeQL 发现的问题,以及启用私有漏洞报告。

结果报告格式请参阅 REFERENCE.md。

面向 Agent 的优化

场景命令
快速合规性检查/configure:security --check-only
自动修复所有安全问题/configure:security --fix
仅检查依赖项/configure:security --type dependencies
仅检测密钥/configure:security --type secrets
仅进行 SAST 扫描/configure:security --type sast
验证密钥扫描gitleaks detect --source . --verbose

错误处理

  • 未检测到包管理器:跳过依赖项审计
  • 无法使用 GitHub Actions:提示 CI 的限制
  • 在历史记录中发现密钥:提供修复指南
  • CodeQL 不支持该语言:跳过该语言的 SAST 扫描

另请参阅

评论

支持 Markdown