mcpField
S
security-reviewer

security-reviewer

github.com/jeffallanセキュリティ12.1k6.1k 回インストール今日更新
リポジトリ

security-reviewer について

セキュリティ分析担当者や開発チーム向けのセキュリティレビュー用スキルです。自動スキャンと手動レビューを組み合わせ、許可の確認、深刻度の評価、修正案を含む報告を扱います。

主な機能

  1. 01SAST・依存関係・シークレットの自動スキャン
  2. 02認証と入力処理の手動レビュー
  3. 03許可を得た侵入テストのガイダンス
  4. 04CVSSに基づく深刻度の分類
  5. 05場所と修正案を含む指摘

活用シーン

  1. 01リリース前のコードレビュー
  2. 02依存関係と漏えいしたシークレットの監査
  3. 03許可された範囲内でのアプリテスト
  4. 04優先度付きセキュリティ指摘の作成

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/jeffallan/claude-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を使用して深刻度(Critical/High/Medium/Low/Info)を評価します。概念実証のみで悪用可能性を確認し、それを超えてはなりません。
  5. 報告 — 最終版を作成する前に、関係者と発見事項を確認します。場所、影響、修正方法を記録します。重大な発見事項は直ちに報告します。

リファレンスガイド

状況に応じて詳細なガイダンスを読み込みます。

トピックリファレンス読み込む場面
SASTツールreferences/sast-tools.md自動スキャンの実行時
脆弱性パターンreferences/vulnerability-patterns.mdSQLインジェクション、XSS、手動レビュー
シークレットスキャンreferences/secret-scanning.mdGitleaks、ハードコードされたシークレットの検出
侵入テスト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

Synergetic Solutionsのプリンシパルコンサルタント、@jeffallanがメンテナンスしています。

ドキュメント

コメント