code-security-audit について
4種類のOWASP資料に基づき、エージェントがコードベースを監査するスキルです。対象範囲の指定、深刻度付きの指摘、修正案、構造化Markdownレポートに対応します。
主な機能
- 01コードベースと技術スタックの調査
- 028つのセキュリティ領域の分析
- 03ASVSレベルに応じた検証
- 04複数のOWASP資料との照合
- 05証拠に基づく深刻度評価
- 06Markdownレポートと修正案
活用シーン
- 01認証とセッション管理の監査
- 02APIセキュリティリスクの確認
- 03コード内のインジェクション脆弱性の検査
- 04脆弱性修正の優先順位付け
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ buyoung/ skills --skill code-security-auditインストール後、Claude Code で/code-security-auditを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/audit_process.mdremediation_patterns.mdreport_format.mdsecurity_domains.mdvulnerability_patterns.md詳細
コードセキュリティ監査機能
あらゆるコードベースの分析に対応する、OWASPの4つの情報源を統合したコードセキュリティ監査システムです。
ナレッジソース
- OWASP ASVS 5.0.0:17のセキュリティドメインにわたる345の検証要件(L1/L2/L3)
- OWASP API Security Top 10 2023:コードレベルの指標を含む、API固有の10のリスクカテゴリ
- OWASP CheatSheet Series:修正の指針となる、実践的なセキュアコーディングのチートシート109件
- OWASP WSTG (Web Security Testing Guide):120件以上のテストシナリオを含む12のテストカテゴリ
情報源の役割
| 情報源 | 役割 | 用途 |
|---|---|---|
| ASVS 5.0.0 | 検証要件のベースライン | 何を確認するかを定義します。ドメインごとに要件を構造化しています |
| API Security Top 10 2023 | リスク分類体系 | 何を探すかを定義します。API固有の脅威パターンを示します |
| CheatSheet Series | 実装ガイダンス | どのように修正するかを定義します。セキュアコーディングのパターンと実践方法を示します |
| WSTG | テスト手法 | どのように検証するかを定義します。脆弱性ごとの具体的なテストシナリオを示します |
ドメイン
- 入力処理(V1、V2、V5):エンコーディング、サニタイズ、インジェクション防止、検証、ファイル処理
- 認証とセッション(V6、V7、V9、V10):認証メカニズム、セッション管理、トークン処理、OAuth/OIDC
- 認可(V8):オブジェクトレベル、機能レベル、プロパティレベルのアクセス制御
- 暗号化(V11、V12):保存データの暗号化、鍵管理、TLS設定
- APIセキュリティ(V4、V17):REST/GraphQL/WebSocket/WebRTCのセキュリティ、レート制限、リソース消費
- データ保護(V14):機密データの露出、プライバシー制御、クライアント側のデータ
- 設定(V13、V16):セキュリティヘッダー、CORS、エラー処理、ロギング、デプロイの強化
- セキュアコーディング(V3、V15):Webフロントエンドのセキュリティ、アーキテクチャパターン、防御的コーディング、並行処理の安全性
入力仕様
| フィールド | 必須 | 説明 |
|---|---|---|
| コードベースのパス | はい | エージェントが操作している現在のワークスペースまたはリポジトリです。デフォルトではアクティブなコードベースを対象とします。ユーザーは特定のディレクトリやファイル(例:src/auth/、api/controllers/)に範囲を絞ることができます |
| 監査レベル | いいえ | ASVSの検証レベル(デフォルト:L2)です。以下のレベル定義を参照してください |
| 重点領域 | いいえ | 優先して確認するセキュリティドメインです。以下の重点領域一覧を参照してください |
| 技術コンテキスト | いいえ | 対象を絞った分析のための言語、フレームワーク、アーキテクチャに関する注記です |
監査レベル(OWASP ASVS 5.0.0)
| レベル | 対象アプリケーション | 要件数 | 説明 |
|---|---|---|---|
| L1 | すべてのアプリケーション | 約86 | 基本的なベースラインです。通常は悪用可能で、すべてのアプリケーションで対処が必要な重大な脆弱性(例:SQLインジェクション、OSコマンドインジェクション、基本的な認証チェック)を対象とします |
| L2 | 機密データ(PII、金融、医療)を扱うアプリケーション | 約230 | 標準的なセキュリティです。L1に加え、SSRF対策、テンプレートインジェクション防止、安全なセッション管理、適切な暗号化の使用など、多層防御の制御を含みます |
| L3 | ミッションクリティカルなシステム(銀行、医療、軍事、インフラ) | 約345 | 包括的な防御です。L1とL2に加え、数式インジェクション防止、完全な入力の正規化、徹底的な暗号化検証などの高度な制御を含みます |
フォーカス領域カタログ
| フォーカス領域 | ドメイン | チェック例 |
|---|---|---|
| 認証 | V6, V7, V9, V10 | パスワードの保存、MFA、OAuth/OIDC フロー、認証情報のローテーション |
| 認可 | V8 | オブジェクトレベル(BOLA)、機能レベル、プロパティレベルのアクセス制御 |
| インジェクション | V1, V2 | SQLi、XSS、コマンドインジェクション、LDAP/XPath インジェクション、テンプレートインジェクション、XXE |
| 暗号化 | V11, V12 | 脆弱なアルゴリズム、鍵管理、TLS 設定、シークレットの保存 |
| API セキュリティ | V4, V17 | レート制限、リソース消費、REST/GraphQL/WebSocket のセキュリティ |
| セッション | V7, V9, V10 | トークンの取り扱い、セッション固定、Cookie 属性、JWT 検証、CSRF |
| ファイル処理 | V5 | パストラバーサル、無制限のアップロード、ファイルタイプの検証、ストレージのセキュリティ |
| データ保護 | V14 | 機密データの漏えい、プライバシー制御、クライアント側のデータ漏えい |
| 設定 | V13, V16 | セキュリティヘッダー、CORS、エラー処理、ログ記録、デプロイの強化 |
| セキュアコーディング | V3, V15 | フロントエンドのセキュリティ、並行処理の安全性、アーキテクチャパターン、防御的コーディング |
前提条件
- コードベースにアクセスでき、読み取り可能であること
- エージェントがファイルの検索と読み取り機能を備えていること
- コードベースの構造を特定できない場合、エージェントは監査出力に制約事項を記載すること
主な機能
- コードベースの調査:技術スタック、フレームワーク、エントリーポイント、セキュリティ関連のファイル領域を特定します
- ドメインに限定した分析:8 つすべてのセキュリティドメインにわたってコードを体系的に監査します
- ASVS 要件の検証:指定されたレベルで、該当する ASVS 5.0.0 要件に照らしてコードをチェックします
- 脆弱性パターンの検出:統合されたナレッジベースから既知の脆弱なコードパターンを特定します
- 複数ソースの相関分析:検出結果を ASVS 要件、API Top 10 のリスク、CheatSheet のガイダンス、WSTG テスト ID に対応付けます
- 重大度の分類:証拠と信頼度を添えて、検出結果を Critical/High/Medium/Low に分類します
- 修正ガイダンス:CheatSheet Series に基づく具体的な修正パターンを提示します
- 構造化レポートの生成:包括的な Markdown 監査レポートを作成します
監査ワークフロー
1. Reconnaissance → Identify stack, structure, entry points
2. Scope Definition → Select applicable ASVS domains and level
3. Domain Analysis → Audit each security domain systematically
4. Finding Synthesis → Deduplicate, correlate across sources, assign severity
5. Remediation Map → Attach fix patterns per finding
6. Report Generation → Produce structured Markdown report
出力仕様
監査では、次の内容を含む Markdown レポートを作成します。
- エグゼクティブサマリー:全体的なリスク状況、重大な検出結果の件数、監査範囲
- 検出結果テーブル:各検出結果の重大度、ASVS ID、CWE、証拠、修正方法
- ドメイン別レポート:コード参照を含む、ドメインごとの詳細な分析
- 修正ロードマップ:優先順位を付けた修正の推奨事項
- 監査メタデータ:範囲、レベル、制約事項、方法論に関する注記
重大度レベル
| レベル | 基準 |
|---|---|
| Critical | 直接的なセキュリティ影響(RCE、SQLi、認証バイパス、データ侵害)を伴う、悪用可能な脆弱性 |
| High | 速やかな修正が必要な重大なセキュリティ上の弱点(アクセス制御の不備、脆弱な暗号化、SSRF) |
| Medium | 条件付きで悪用可能なセキュリティ上の懸念(ヘッダーの欠如、詳細すぎるエラー、脆弱な検証) |
| Low | 多層防御の改善、またはベストプラクティスからの逸脱(ログ記録の不足、軽微な設定上の問題) |
| Info | 直接的なセキュリティ影響のない所見または推奨事項 |
技術リファレンス
- audit_process.md:監査方法論と調査手順の全ステップ
- security_domains.md:コード監査に関連する要件と複数ソース間の対応付けを含む、17 の ASVS ドメインすべて
- vulnerability_patterns.md:カテゴリ別に整理された、具体的なコードレベルの脆弱性パターン
- remediation_patterns.md:CheatSheet Series に基づくセキュアコーディングの修正パターン
- report_format.md:詳細な Markdown レポート構成と検出結果のスキーマ
コメント
Markdown 対応