← Back to list

security-review
by shiiman
⭐ 2🍴 0📅 Jan 16, 2026
SKILL.md
name: security-review description: セキュリティ脆弱性を自動検出する。認証情報のハードコード、コマンドインジェクション、危険なシェル構文などをチェック。
Security Review Skill
Claude がコード変更時に自動的に適用する、セキュリティ観点のチェックと警告能力。
自動適用条件
- すべてのシェルスクリプト変更時(
.sh,.bash,.zsh) - 設定ファイル変更時(
.bashrc,.zshrc,.gitconfig等) - 特に以下のパターンで重点チェック:
- 環境変数の設定
- 外部コマンドの実行
- ファイル操作
検出パターン
1. ハードコードされた認証情報
# ❌ 危険: ハードコード
export API_KEY="sk-xxxxxxxxxxxx"
PASSWORD="secret123"
TOKEN="Bearer eyJhbGci..."
# ✅ 安全: 環境変数から取得(別ファイルで管理)
export API_KEY="${API_KEY:-}"
# または .env ファイルから読み込み(.envはgitignore)
2. コマンドインジェクション
# ❌ 危険: 変数未クォート
rm $filename
cat $user_input
# ❌ 危険: eval使用
eval "$user_command"
# ✅ 安全: 変数クォート
rm "$filename"
cat "$user_input"
# ✅ 安全: evalを避ける
"$user_command" # 直接実行(信頼できる場合のみ)
3. 危険なシェル構文
# ❌ 危険: バッククォート(ネスト問題)
result=`command`
# ❌ 危険: 変数展開のクォート忘れ
if [ $var = "value" ]; then
# ✅ 安全: $() を使用
result=$(command)
# ✅ 安全: 変数をクォート
if [ "$var" = "value" ]; then
4. ファイル権限の問題
# ❌ 危険: 過度な権限
chmod 777 script.sh
chmod a+w config.sh
# ✅ 安全: 最小限の権限
chmod 755 script.sh # 実行可能スクリプト
chmod 644 config # 設定ファイル(読み取りのみ)
5. パス・ファイル名のインジェクション
# ❌ 危険: ユーザー入力をパスに使用
cat "/tmp/$user_input"
# ✅ 安全: バリデーション付き
if [[ "$user_input" =~ ^[a-zA-Z0-9_-]+$ ]]; then
cat "/tmp/$user_input"
fi
重大度レベル
| レベル | 説明 | 対応 |
|---|---|---|
| Critical | 認証情報露出、コマンドインジェクション | 即時修正必須 |
| High | 変数クォート漏れ、eval使用 | コミット前に修正 |
| Medium | ファイル権限問題、バッククォート使用 | 計画的に修正 |
| Low | ベストプラクティス違反 | 改善推奨 |
自動アクション
- Critical/High を検出したら、コミット前に警告を表示
- 修正案を具体的に提示
- セキュリティ関連の変更は
/review --securityを推奨
チェックリスト
- ハードコードされた認証情報がない
- すべての変数が適切にクォートされている
-
evalを使用していない - ファイル権限が最小限に設定されている
- ユーザー入力がサニタイズされている
Score
Total Score
50/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
Reviews
💬
Reviews coming soon