Install
$ agentstack add skill-studiogadget-skills-sec-diff-review ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
sec-diff-review
役割: 差分ベース静的解析スキル(PR単位・開発中に使用)
このスキルは git diff で変更されたファイルのみを対象とする。 全ファイルの静的解析は /sec-full-scan が担当する。
> スコープの誠実な開示: このスキルは変更差分のみを検査するため、既存コードに潜む脆弱性は検出しない。全ファイルを対象にしたい場合は /sec-full-scan を使用すること。
引数
| 引数 | 必須 | 説明 | |------|------|------| | コメント | 任意 | レビューの文脈や注目してほしい点 |
前提条件
- git リポジトリ内で実行すること
- サーバーの起動は不要(静的解析のみ)
手順
Step 1: 変更差分の収集
- デフォルトブランチを
git symbolic-ref refs/remotes/origin/HEADで検出する。失敗した場合はmain→master→developの順にフォールバックする。確定後git diff {default}...HEADで変更ファイル一覧と差分を取得する - 変更ファイル数・追加行数を報告する
- スコープを明示する: 「このレビューは X ファイルの変更差分のみを対象とします」と伝える
Step 2: リポジトリコンテキストの調査(Phase 1)
変更ファイルを分析する前に、既存の安全なパターンを把握する:
- 既存の認証・認可ミドルウェアの実装を確認する
- 既存の入力バリデーション・サニタイズパターンを確認する
- プロジェクトの認証モデルを把握する(ミドルウェア認証・リバースプロキシ認証・アプリ内認証など)
- 変更ファイルが触れているドメイン(API ルート・データアクセス層・認証等)を特定する
Step 3: 差分の比較分析(Phase 2)
変更されたコードを既存の安全なパターンと比較する:
- 新しいコードが既存のセキュリティパターンから逸脱していないか確認する
- 新たな攻撃面(新しい API エンドポイント・外部入力受付箇所)を特定する
- 既存の認可チェックをバイパスするコードが追加されていないか確認する
Step 4: 脆弱性アセスメント(Phase 3)
各変更ファイルについて、以下カテゴリで脆弱性を検査する。
検出対象(>80% の信頼度があるもののみ報告):
- インジェクション: SQL / NoSQL / コマンド / テンプレートインジェクション、パストラバーサル
- 認証・認可: 認証バイパス、認可不備、セッション管理の欠陥、JWT の誤実装
- 暗号・シークレット: ハードコードされた認証情報・APIキー、弱い暗号アルゴリズム
- XSS:
dangerouslySetInnerHTML/bypassSecurityTrustHtml等の危険なメソッドのみ - データ露出: PII・パスワード・トークンのログ出力、センシティブデータの意図しない返却
除外ルール(報告しない):
- DoS・リソース枯渇・レート制限
- React / Angular の通常コンポーネントでの XSS(
dangerouslySetInnerHTML不使用の場合) - クライアントサイドの認証チェック欠如(バックエンドが責任を持つ)
- AIシステムプロンプトへのユーザー入力混入
- 環境変数・CLI フラグを経由した攻撃(信頼済みとして扱う)
- ドキュメントファイル(Markdown)
- 既存の依存関係の既知 CVE(
/sec-full-scanが担当) - ログスプーフィング
- パスのみ制御できる SSRF(ホスト・プロトコルを制御できる場合のみ報告)
- UUID はランダムで推測不能と仮定
Step 5: 偽陽性フィルタリング
信頼度 8 以上の発見のみ報告する。各発見について確認する:
- 具体的な攻撃経路が存在するか(理論上ではなく実際に悪用可能か)
- 実際のセキュリティリスクか(ベストプラクティスの欠如ではないか)
- 具体的なコード箇所と再現手順があるか
Step 6: レポート保存・履歴インデックス更新
- 日付付きファイル名でレポートを保存する
- 保存先:
./security-reports/YYYY-MM-DD-security-review.md - 日付は実行時の ISO 8601 形式(例:
2026-05-01) - ディレクトリが存在しない場合は作成する
./security-reports/index.mdに1行追記する
- ファイルが存在しない場合はヘッダーから作成する
- 追記フォーマット:
`` | YYYY-MM-DD | sec-diff-review | | ファイル | 0 | | | | [レポート](YYYY-MM-DD-security-review.md) | ``
- CI結果: High 以上の発見が 0 件なら
✅ pass、1件以上なら❌ fail
出力フォーマット
# セキュリティレビュー結果
**スコープ**: ファイルの差分のみ(全ファイル解析は /sec-full-scan を使用)
**対象ブランチ**:
## Vuln N: : `:`
* Severity: High / Medium
* Confidence:
* Description:
* Exploit Scenario:
* Recommendation:
深刻度基準:
- High: 直接悪用可能な RCE・データ漏洩・認証バイパス
- Medium: 特定条件下で重大な影響をもたらす脆弱性
このスキルでカバーできない領域
| 領域 | 推奨手段 | |------|---------| | 変更差分以外の既存コードの脆弱性 | /sec-full-scan | | 依存関係の既知 CVE | /sec-full-scan | | デプロイ後のランタイム挙動 | /sec-runtime-scan | | ビジネスロジックの欠陥(仕様知識が必要) | ペネトレーションテスト | | インフラ・クラウド設定 | インフラ担当者レビュー |
完了条件
- [ ] 変更ファイルのスコープが明示されている
- [ ] 信頼度 0.8 以上の発見のみ報告されている
- [ ] 各発見に具体的な攻撃シナリオと修正方法が含まれている
- [ ] カバーできない領域が明示されている
- [ ]
./security-reports/YYYY-MM-DD-security-review.mdが保存されている - [ ]
./security-reports/index.mdに1行追記されている
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: studiogadget
- Source: studiogadget/skills
- License: Apache-2.0
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.