AgentSkillsCN

reviewing-security

OWASP API安全十大风险(2023年)与{此处填写开发语言}的安全最佳实践。定期进行漏洞扫描与安全审查。当您被委托进行安全评审、漏洞检测,或需要确认版本控制是否合规时,可选用此技能。

SKILL.md
--- frontmatter
name: reviewing-security
description: "OWASP API Security Top 10 (2023) と {開発言語をここに書く} セキュリティベストプラクティス。脆弱性検出。Use when: セキュリティレビュー、脆弱性チェック、バージョン管理確認を依頼された時。"

セキュリティレビュー

OWASP API Security Top 10 (2023) と {開発言語をここに書く} セキュリティベストプラクティスに基づくレビュースキル。

OWASP チェック項目

IDリスクチェック内容
API1BOLAtenant_id 検証、file_id との組み合わせ検証
API2Broken AuthgRPC メタデータ認証
API3Propertyレスポンスの不要情報
API4Resourceファイルサイズ制限、ページネーション

{開発言語をここに書く} セキュリティ

項目検索パターン
依存関係脆弱性N/A
unsafe コードN/A
ハードコード認証情報N/A

バージョン管理チェック

dependabotやrenovateで自動検証できないバージョン指定をチェックします。Dockerfile内の直接指定、GitHub Actionsのバージョン、設定ファイルで指定されたツールバージョンなどが対象です。古いバージョンの使用はセキュリティリスクやパフォーマンス問題につながる可能性があります。

注意: package.jsonrequirements.txtgo.modなどの依存関係管理ファイルはdependabot/renovateで検証されるため、このチェックの対象外です。

チェック対象ファイルとパターン

ファイルタイプファイル名/パターンチェック内容
DockerfileDockerfile, *.dockerfile, Dockerfile.*FROM イメージとタグ、RUN apt-get installRUN apk add でのパッケージバージョン
GitHub Actions.github/workflows/*.yml, .github/workflows/*.yamluses: でのアクションバージョン、setup-* アクションの *-version 指定
ツールバージョン設定.nvmrc, .python-version, .go-version, .tool-versions開発環境のツールバージョン指定
その他の設定Makefile, runtime.txtビルドスクリプトや実行環境のバージョン指定

チェック手順

  1. ファイルの検出

    • 上記パターンに該当するファイルを検索
    • 各ファイルからバージョン指定を抽出
  2. バージョン情報の取得

    • 現在指定されているバージョンを特定
    • 可能な場合、最新の安定版を確認(Web検索やAPIを使用)
    • EOL(サポート終了)情報を確認
  3. 更新可否の判定

    • メジャーバージョン更新: 破壊的変更の可能性あり、更新を推奨
    • EOL: 早急な更新が必要
    • 既知のセキュリティ脆弱性: 即座の対応が必要
    • 注意: マイナーバージョンやパッチバージョン程度の差では指摘しません
  4. 優先度の設定

    • 🔴 高: EOLバージョン、既知のセキュリティ脆弱性
    • 🟡 中: メジャーバージョン以上の差がある

出力フォーマット

markdown
## バージョン管理ツールの更新可否

| 優先度 | ファイル | ツール/パッケージ | 現在のバージョン | 最新版 | 状態 | 備考 |
|--------|----------|-------------------|------------------|--------|------|------|
| 🔴 | Dockerfile | python (FROM) | 3.8.0 | 3.12.1 | EOL | Python 3.8は2024年10月でEOL |
| 🔴 | Dockerfile | node (FROM) | 16.0.0 | 20.11.0 | 脆弱性あり | CVE-2023-XXXXX: 既知の脆弱性 |
| 🟡 | .github/workflows/ci.yml | actions/checkout | v3 | v4 | 更新可 | メジャーバージョンアップ |
| 🟡 | Dockerfile | apt-get: postgresql-client | 12 | 16 | 更新可 | メジャーバージョンアップ |

注意: この表に表示されるのは、メジャーバージョン以上の差がある、またはEOL・脆弱性があるバージョン指定のみです。マイナーバージョンやパッチバージョン程度の差は表示されません。

チェック実施の注意点

  • 対象の明確化: このチェックはdependabot/renovateで自動検証できないバージョン指定が対象です。package.jsonrequirements.txtgo.modなどの依存関係管理ファイルは対象外です
  • 指摘基準: メジャーバージョン以上の差、またはEOL・既知の脆弱性がある場合のみ指摘します。マイナーバージョンやパッチバージョン程度の差では指摘しません
  • 破壊的変更: メジャーバージョン更新時は破壊的変更の可能性があるため、リリースノートの確認を推奨
  • 互換性: 特にDockerイメージやCI/CDツールは、更新により既存の動作に影響する可能性あり
  • テスト: バージョン更新後は必ずテストを実行
  • 段階的更新: 複数のメジャーバージョンをスキップしている場合は、段階的な更新を推奨