name: scan-vuln description: Go プロジェクトの脆弱性スキャンを実行する。「脆弱性スキャン」「govulncheck」「セキュリティチェック」「脆弱性確認」「vuln」「CVE チェック」「セキュリティスキャン」などで起動。govulncheck を使用して既知の脆弱性を検出。 allowed-tools: [Read, Bash, Glob, Grep]
Scan-Vuln
Go プロジェクトの脆弱性スキャンを実行します。govulncheck を使用して既知の脆弱性を検出。
引数
--json: JSON 形式で出力--help: ヘルプを表示
実行手順
1. govulncheck のインストール確認
which govulncheck || go install golang.org/x/vuln/cmd/govulncheck@latest
2. 脆弱性スキャン実行
# 基本的なスキャン
govulncheck ./...
# JSON 形式で出力
govulncheck -json ./...
# バイナリのスキャン
govulncheck -mode=binary ./bin/app
3. 結果レポート
## 脆弱性スキャン結果
### 検出された脆弱性: {N} 件
#### GO-2024-XXXX (Critical)
- **パッケージ**: github.com/xxx/yyy
- **バージョン**: v1.2.3
- **説明**: {脆弱性の説明}
- **影響を受けるコード**: {ファイル:行}
- **修正バージョン**: v1.2.4
#### GO-2024-YYYY (High)
- **パッケージ**: github.com/aaa/bbb
- **バージョン**: v2.0.0
- **説明**: {脆弱性の説明}
- **修正バージョン**: v2.0.1
### 推奨アクション
1. `go get -u github.com/xxx/yyy@v1.2.4`
2. `go get -u github.com/aaa/bbb@v2.0.1`
3. `go mod tidy`
4. `go test ./...` で動作確認
脆弱性の深刻度
| レベル | 説明 | |--------|------| | Critical | 即座に対応が必要、リモートコード実行など | | High | 早急に対応が必要、データ漏洩など | | Medium | 計画的に対応、DoS など | | Low | 時間があるときに対応 |
脆弱性対応フロー
- 検出:
govulncheck ./...で脆弱性を検出 - 評価: 実際にコードで使用されているか確認
- 更新: 修正バージョンへ更新
- テスト: 更新後の動作確認
- デプロイ: 本番環境へ反映
CI/CD への統合
# GitHub Actions の例
- name: Run govulncheck
run: |
go install golang.org/x/vuln/cmd/govulncheck@latest
govulncheck ./...
重要な注意事項
- ✅ 定期的に govulncheck を実行して新しい脆弱性を検出
- ✅ 脆弱性修正のための更新後は、必ずテストを実行
- ✅ govulncheck は実際に呼び出されるコードパスのみを報告するため、誤検知が少ない
- ✅ 間接依存の脆弱性も検出される
Related skills
Security Audit Scanner
Premium
Security
Analyzes code to detect OWASP Top 10 vulnerabilities.
Claude Codeadvanced
210
87
868
OWASP Security Checklist
Security
Generates application security checklists based on the OWASP Top 10.
claudeCursorWindsurfintermediate
148
41
405
Threat Model Generator
Security
Generates threat model documents with STRIDE analysis.
claudeCursoradvanced
78
23
255