security-scan
コードベースに対してOWASP Top 10・シークレット漏洩・設定ミスを含むセキュリティ脆弱性を包括的にスキャンします。コードのセキュリティ分析が必要なときに使用してください。
description の原文を見る
Scan code for security vulnerabilities including OWASP Top 10, secrets, and misconfigurations. Use when you need comprehensive security analysis of a codebase.
SKILL.md 本文
セキュリティスキャン
コードベースの包括的なセキュリティ脆弱性検出機能です。
クイックスタート
/security-scan # 現在のディレクトリの完全スキャン
/security-scan --scope src/ # 特定のディレクトリをスキャン
/security-scan --quick # 高速スキャン(重大な問題のみ)
/security-scan --focus injection # 特定のカテゴリに焦点を当てる
このスキルの機能
複数のカテゴリにわたるセキュリティ脆弱性を分析します:
- OWASP Top 10 - 業界標準の Web 脆弱性カテゴリ
- シークレット検出 - ハードコードされた認証情報、API キー、トークン
- インジェクション脆弱性 - SQL、XSS、コマンドインジェクションパターン
- 暗号化の問題 - 弱いアルゴリズム、安全でない実装
- 設定の問題 - 安全でないデフォルト設定、設定ミス
スキャンモード
完全スキャン(デフォルト)
すべてのセキュリティカテゴリの包括的な分析です。
/security-scan
実施されるチェック:
- すべての OWASP Top 10 カテゴリ
- シークレットと認証情報の検出
- 依存関係の脆弱性(パッケージファイルが存在する場合)
- 設定ファイルのレビュー
所要時間: コードベースのサイズに応じて 2~5 分
クイックスキャン
重大度が高い問題のみの高速チェックです。
/security-scan --quick
実施されるチェック:
- 重大なインジェクションパターン
- 露出したシークレット
- 既知の危険な関数
所要時間: 1 分以下
焦点スキャン
特定の脆弱性カテゴリを対象にしたスキャンです。
/security-scan --focus <category>
カテゴリ:
injection- SQL、XSS、コマンドインジェクションsecrets- 認証情報、API キー、トークンcrypto- 暗号化の弱点auth- 認証・認可の問題config- 設定のセキュリティ
出力形式
重大度レベル
| レベル | アイコン | 意味 | 対応 |
|---|---|---|---|
| CRITICAL | [!] | 悪用可能な脆弱性 | 直ちに対応 |
| HIGH | [H] | 深刻なセキュリティリスク | デプロイ前に修正 |
| MEDIUM | [M] | 潜在的な脆弱性 | 対応を計画 |
| LOW | [L] | 軽微な問題またはハードニング | 修正を検討 |
| INFO | [i] | 情報提供 | 認識のみ |
検出結果の形式
[SEVERITY] CATEGORY: 簡潔な説明
File: path/to/file.ext:line
Pattern: 検出内容
Risk: なぜ危険なのか
Fix: 修復方法
サマリーレポート
SECURITY SCAN RESULTS
=====================
Scope: src/
Files scanned: 127
Duration: 45 seconds
FINDINGS BY SEVERITY
Critical: 2
High: 5
Medium: 12
Low: 8
TOP ISSUES
1. [!] SQL Injection in src/api/users.ts:45
2. [!] Hardcoded AWS key in src/config.ts:12
3. [H] XSS vulnerability in src/components/Comment.tsx:89
...
Run `/security-scan --details` for full report.
OWASP Top 10 カバレッジ
| # | カテゴリ | 検出方法 |
|---|---|---|
| A01 | アクセス制御の不備 | 認可パターン分析 |
| A02 | 暗号化の失敗 | 弱い暗号化検出 |
| A03 | インジェクション | パターンマッチング + データフロー分析 |
| A04 | 安全でない設計 | セキュリティコントロール ギャップ検出 |
| A05 | セキュリティ設定ミス | 設定ファイル分析 |
| A06 | 脆弱なコンポーネント | 依存関係スキャン |
| A07 | 認証の失敗 | 認証パターンレビュー |
| A08 | データ整合性の失敗 | デシリアライゼーションチェック |
| A09 | ログ・監視の失敗 | 監査ログ分析 |
| A10 | SSRF | リクエストパターン検出 |
詳細な検出ルールについては references/owasp/ を参照してください。
検出パターン
インジェクション検出
SQL インジェクション:
- クエリの文字列連結
- データベース呼び出しのサニタイズされていないユーザー入力
- 動的クエリ構築
クロスサイトスクリプティング(XSS):
- ユーザーデータを含む innerHTML 割り当て
- 動的コンテンツを使用した document.write()
- エスケープされていないテンプレート補間
コマンドインジェクション:
- ユーザー入力を含む exec()、system()、popen()
- シェルコマンド文字列の構築
- サニタイズされていないサブプロセス引数
言語固有のパターンについては references/patterns/ を参照してください。
シークレット検出
高信度パターン:
AWS Access Key: AKIA[0-9A-Z]{16}
AWS Secret Key: [A-Za-z0-9/+=]{40}
GitHub Token: gh[pousr]_[A-Za-z0-9]{36,}
Stripe Key: sk_live_[A-Za-z0-9]{24,}
Private Key: -----BEGIN (RSA |EC )?PRIVATE KEY-----
中信度パターン:
Generic API Key: api[_-]?key.*[=:]\s*['"][a-zA-Z0-9]{16,}
Password in Code: password\s*[=:]\s*['"][^'"]+['"]
Connection String: (mysql|postgres|mongodb)://[^:]+:[^@]+@
暗号化の弱点
弱いアルゴリズム:
- パスワードハッシング用の MD5
- セキュリティ目的の SHA1
- DES/3DES 暗号化
- RC4 ストリーム暗号
実装の問題:
- ハードコードされた暗号化キー
- 弱い乱数生成
- パスワードハッシングのソルト欠落
- ECB モード暗号化
他のスキルとの連携
/secrets-scan との連携
認証情報検出の詳細な深掘り分析:
/secrets-scan # 専用シークレット分析
/secrets-scan --entropy # 高エントロピー文字列検出
/dependency-scan との連携
パッケージ脆弱性分析:
/dependency-scan # すべての依存関係をチェック
/dependency-scan --fix # 可能な限り自動修正
/config-scan との連携
インフラストラクチャと設定のレビュー:
/config-scan # すべての設定ファイル
/config-scan --docker # コンテナセキュリティ
/config-scan --iac # Infrastructure as Code
スキャン実行プロトコル
フェーズ 1: 発見
1. プロジェクトタイプの特定(言語、フレームワーク)
2. 関連ファイルの特定(ソース、設定、依存関係)
3. 適用可能なセキュリティルールの決定
フェーズ 2: 静的分析
1. 既知の脆弱性のパターンマッチング
2. インジェクションパスのデータフロー分析
3. 設定のレビュー
フェーズ 3: シークレットスキャン
1. 高信度パターンマッチング
2. 潜在的なシークレットのエントロピー分析
3. Git 履歴チェック(オプション)
フェーズ 4: 依存関係分析
1. パッケージマニフェストの解析
2. 脆弱性データベースに対するチェック
3. 古いパッケージの特定
フェーズ 5: レポート生成
1. 検出結果の重複排除
2. 重大度スコアの割り当て
3. 実行可能なレポートの生成
4. 修復ガイダンスの提供
設定
プロジェクトレベルの設定
プロジェクトルートに .security-scan.yaml を作成します:
# スキャン設定
scan:
exclude:
- "node_modules/**"
- "vendor/**"
- "**/*.test.ts"
- "**/__mocks__/**"
# 重大度しきい値
thresholds:
fail_on: critical # critical, high, medium, low
warn_on: medium
# カテゴリの切り替え
categories:
injection: true
secrets: true
crypto: true
auth: true
config: true
dependencies: true
# カスタムパターン
patterns:
secrets:
- name: "Internal API Key"
pattern: "INTERNAL_[A-Z]{3}_KEY_[a-zA-Z0-9]{32}"
severity: high
除外パターン
誤検知用に .security-scan-ignore を作成します:
# 特定のファイルを除外
src/test/fixtures/mock-credentials.ts
# 特定の行を除外(インラインコメントを使用)
# security-scan-ignore: test fixture
const mockApiKey = "sk_test_fake123";
コマンドリファレンス
| コマンド | 説明 |
|---|---|
/security-scan | 完全なセキュリティスキャン |
/security-scan --quick | 重大な問題のみ |
/security-scan --scope <path> | 特定のパスをスキャン |
/security-scan --focus <cat> | 単一カテゴリ |
/security-scan --details | 詳細出力 |
/security-scan --json | JSON 形式の出力 |
/security-scan --fix | 可能な限り自動修正 |
関連スキル
/secrets-scan- シークレット検出の深掘り/dependency-scan- パッケージ脆弱性分析/config-scan- 設定セキュリティレビュー/review-code- 一般的なコードレビュー(セキュリティ含む)
参考資料
references/owasp/- OWASP Top 10 検出詳細references/patterns/- 言語固有の脆弱性パターンreferences/remediation/- 脆弱性タイプ別の修復ガイダンスassets/severity-matrix.md- 重大度スコアリング基準
ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ
詳細情報
- 作者
- jwynia
- リポジトリ
- jwynia/agent-skills
- ライセンス
- MIT
- 最終更新
- 不明
Source: https://github.com/jwynia/agent-skills / ライセンス: MIT
関連スキル
secure-code-guardian
認証・認可の実装、ユーザー入力の保護、OWASP Top 10の脆弱性対策が必要な場合に使用します。bcrypt/argon2によるパスワードハッシング、パラメータ化ステートメントによるSQLインジェクション対策、CORS/CSPヘッダーの設定、Zodによる入力検証、JWTトークンの構築などのカスタムセキュリティ実装に対応します。認証、認可、入力検証、暗号化、OWASP Top 10対策、セッション管理、セキュリティ強化全般で活用できます。ただし、構築済みのOAuth/SSO統合や単独のセキュリティ監査が必要な場合は、より特化したスキルの検討をお勧めします。
claude-authenticity
APIエンドポイントが本物のClaudeによって支えられているか(ラッパーやプロキシ、偽装ではないか)を、claude-verifyプロジェクトを模した9つの重み付きルールベースチェックで検証できます。また、Claudeの正体を上書きしているプロバイダーから注入されたシステムプロンプトも抽出します。完全に自己完結しており、httpx以外の追加パッケージは不要です。Claude APIキーまたはエンドポイントを検証したい場合、サードパーティのClaudeサービスが本物か確認したい場合、APIプロバイダーのClaude正当性を監査したい場合、複数モデルを並行してテストしたい場合、またはプロバイダーが注入したシステムプロンプトを特定したい場合に使用できます。
anth-security-basics
Anthropic Claude APIのセキュリティベストプラクティスを適用し、キー管理、入力値の検証、プロンプトインジェクション対策を実施します。APIキーの保護、Claudeに送信する前のユーザー入力検証、コンテンツセーフティガードレールの実装が必要な場合に活用できます。「anthropic security」「claude api key security」「secure anthropic」「prompt injection defense」といったフレーズでトリガーされます。
x-ray
x-ray.mdプレ監査レポートを生成します。概要、強化された脅威モデル(プロトコルタイプのプロファイリング、Gitの重み付け攻撃面分析、時間軸リスク分析、コンポーザビリティ依存関係マッピング)、不変条件、統合、ドキュメント品質、テスト分析、開発者・Gitの履歴をカバーしています。「x-ray」「audit readiness」「readiness report」「pre-audit report」「prep this protocol」「protocol prep」「summarize this protocol」のキーワードで実行されます。
semgrep
Semgrepスタティック分析スキャンを実行し、カスタム検出ルールを作成します。Semgrepでのコードスキャン、セキュリティ脆弱性の検出、カスタムYAMLルールの作成、または特定のバグパターンの検出が必要な場合に使用します。重要:ユーザーが「バグをスキャンしたい」「コード品質を確認したい」「脆弱性を見つけたい」「スタティック分析」「セキュリティlint」「コード監査」または「コーディング標準を適用したい」と尋ねた場合も、Semgrepという名称を明記していなくても、このスキルを使用してください。Semgrepは30以上の言語に対応したパターンベースのコードスキャンに最適なツールです。
ghost-bits-cast-attack
Java「ゴーストビッツ」/キャストアタック プレイブック(Black Hat Asia 2026)。16ビット文字が8ビットバイトに暗黙的に縮小されるJavaサービスへの攻撃時に使用します。WAF/IDSを回避して、SQLインジェクション、デシリアライゼーション型RCE、ファイルアップロード(Webシェル)、パストトラバーサル、CRLF インジェクション、リクエストスマグリング、SMTPインジェクションを実行できます。Tomcat、Spring、Jetty、Undertow、Vert.x、Jackson、Fastjson、Apache Commons BCEL、Apache HttpClient、Angus Mail、JDK HttpServer、Lettuce、Jodd、XMLWriterに影響し、WAFバイパスにより多くの「パッチ済み」CVEを再度有効化します。