Agent Skills by ALSEL
Anthropic Claudeセキュリティ⭐ リポ 8,981品質スコア 100/100

secure-code-guardian

認証・認可の実装、ユーザー入力の保護、OWASP Top 10の脆弱性対策が必要な場合に使用します。bcrypt/argon2によるパスワードハッシング、パラメータ化ステートメントによるSQLインジェクション対策、CORS/CSPヘッダーの設定、Zodによる入力検証、JWTトークンの構築などのカスタムセキュリティ実装に対応します。認証、認可、入力検証、暗号化、OWASP Top 10対策、セッション管理、セキュリティ強化全般で活用できます。ただし、構築済みのOAuth/SSO統合や単独のセキュリティ監査が必要な場合は、より特化したスキルの検討をお勧めします。

description の原文を見る

Use when implementing authentication/authorization, securing user input, or preventing OWASP Top 10 vulnerabilities — including custom security implementations such as hashing passwords with bcrypt/argon2, sanitizing SQL queries with parameterized statements, configuring CORS/CSP headers, validating input with Zod, and setting up JWT tokens. Invoke for authentication, authorization, input validation, encryption, OWASP Top 10 prevention, secure session management, and security hardening. For pre-built OAuth/SSO integrations or standalone security audits, consider a more specialized skill.

SKILL.md 本文

セキュアコードガーディアン

コアワークフロー

  1. 脅威モデル化 — 攻撃面と脅威を特定する
  2. 設計 — セキュリティ制御を計画する
  3. 実装 — 多層防御によるセキュアコードを記述する(以下のコード例を参照)
  4. 検証 — 明確なチェックポイントでセキュリティ制御をテストする(以下を参照)
  5. ドキュメント化 — セキュリティ上の決定を記録する

検証チェックポイント

各実装ステップの後、以下を確認します:

  • 認証: ブルートフォース保護(ロックアウト/レート制限のトリガー)、セッション固定化耐性、トークン有効期限、および無効な認証情報エラーメッセージをテストします(ユーザーの存在を漏らしてはいけません)。
  • 認可: 水平および垂直特権昇格パスがブロックされていることを確認します。異なるロール/ユーザーに属するトークンでテストします。
  • 入力処理: SQLインジェクションペイロード(' OR 1=1--)が拒否されることを確認します。XSSペイロード(<script>alert(1)</script>)がエスケープまたは拒否されることを確認します。
  • ヘッダー/CORS: セキュリティスキャナー(例:curl -I、Mozilla Observatory)でセキュリティヘッダーが存在し、CORS オリジンアロウリストが正しいことを検証します。

リファレンスガイド

コンテキストに基づいて詳細なガイダンスを読み込みます:

トピックリファレンス読み込むタイミング
OWASPreferences/owasp-prevention.mdOWASP Top 10 パターン
認証references/authentication.mdパスワードハッシング、JWT
入力検証references/input-validation.mdZod、SQLインジェクション
XSS/CSRFreferences/xss-csrf.mdXSS防止、CSRF
ヘッダーreferences/security-headers.mdHelmet、レート制限

制約

必ず実施すること

  • bcrypt/argon2 でパスワードをハッシュ化する(MD5/SHA-1/ソルト無しハッシュは絶対に使用しない)
  • パラメータ化クエリを使用する(文字列補間SQLは絶対に使用しない)
  • すべてのユーザー入力を使用前に検証・サニタイズする
  • 認証エンドポイントにレート制限を実装する
  • セキュリティヘッダーを設定する(CSP、HSTS、X-Frame-Options)
  • セキュリティイベントをログに記録する(認証失敗、特権昇格の試み)
  • シークレットを環境変数またはシークレット管理ツールに保存する(ソースコードに記述しない)

絶対にしてはいけないこと

  • パスワードを平文またはリバーシブル暗号化形式で保存する
  • ユーザー入力を検証なく信頼する
  • ログまたはエラーレスポンスに機密データを公開する
  • 弱い、または廃止予定のアルゴリズムを使用する(MD5、SHA-1、DES、ECBモード)
  • シークレットまたは認証情報をコードにハードコードする

コード例

パスワードハッシング(bcrypt)

import bcrypt from 'bcrypt';

const SALT_ROUNDS = 12; // minimum 10; 12 balances security and performance

export async function hashPassword(plaintext: string): Promise<string> {
  return bcrypt.hash(plaintext, SALT_ROUNDS);
}

export async function verifyPassword(plaintext: string, hash: string): Promise<boolean> {
  return bcrypt.compare(plaintext, hash);
}

パラメータ化SQLクエリ(Node.js / pg)

// NEVER: `SELECT * FROM users WHERE email = '${email}'`
// ALWAYS: use positional parameters
import { Pool } from 'pg';
const pool = new Pool();

export async function getUserByEmail(email: string) {
  const { rows } = await pool.query(
    'SELECT id, email, role FROM users WHERE email = $1',
    [email]  // value passed separately — never interpolated
  );
  return rows[0] ?? null;
}

Zodによる入力検証

import { z } from 'zod';

const LoginSchema = z.object({
  email: z.string().email().max(254),
  password: z.string().min(8).max(128),
});

export function validateLoginInput(raw: unknown) {
  const result = LoginSchema.safeParse(raw);
  if (!result.success) {
    // Return generic error — never echo raw input back
    throw new Error('Invalid credentials format');
  }
  return result.data;
}

JWT検証

import jwt from 'jsonwebtoken';

const JWT_SECRET = process.env.JWT_SECRET!; // never hardcode

export function verifyToken(token: string): jwt.JwtPayload {
  // Throws if expired, tampered, or wrong algorithm
  const payload = jwt.verify(token, JWT_SECRET, {
    algorithms: ['HS256'],   // explicitly allowlist algorithm
    issuer: 'your-app',
    audience: 'your-app',
  });
  if (typeof payload === 'string') throw new Error('Invalid token payload');
  return payload;
}

エンドポイントの保護 — 完全なフロー

import express from 'express';
import rateLimit from 'express-rate-limit';
import helmet from 'helmet';

const app = express();
app.use(helmet()); // sets CSP, HSTS, X-Frame-Options, etc.
app.use(express.json({ limit: '10kb' })); // limit payload size

const authLimiter = rateLimit({
  windowMs: 15 * 60 * 1000, // 15 minutes
  max: 10,                   // 10 attempts per window per IP
  standardHeaders: true,
  legacyHeaders: false,
});

app.post('/api/login', authLimiter, async (req, res) => {
  // 1. Validate input
  const { email, password } = validateLoginInput(req.body);

  // 2. Authenticate — parameterized query, constant-time compare
  const user = await getUserByEmail(email);
  if (!user || !(await verifyPassword(password, user.passwordHash))) {
    // Generic message — do not reveal whether email exists
    return res.status(401).json({ error: 'Invalid credentials' });
  }

  // 3. Authorize — issue scoped, short-lived token
  const token = jwt.sign(
    { sub: user.id, role: user.role },
    JWT_SECRET,
    { algorithm: 'HS256', expiresIn: '15m', issuer: 'your-app', audience: 'your-app' }
  );

  // 4. Secure response — token in httpOnly cookie, not body
  res.cookie('token', token, { httpOnly: true, secure: true, sameSite: 'strict' });
  return res.json({ message: 'Authenticated' });
});

出力テンプレート

セキュリティ機能を実装する場合、以下を提供します:

  1. セキュアな実装コード
  2. セキュリティ上の考慮事項の記載
  3. 設定要件(環境変数、ヘッダー)
  4. テスト推奨事項

知識リファレンス

OWASP Top 10、bcrypt/argon2、JWT、OAuth 2.0、OIDC、CSP、CORS、レート制限、入力検証、出力エンコーディング、暗号化(AES、RSA)、TLS、セキュリティヘッダー

ドキュメンテーション

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
Jeffallan
リポジトリ
Jeffallan/claude-skills
ライセンス
MIT
最終更新
2026/5/1

Source: https://github.com/Jeffallan/claude-skills / ライセンス: MIT

関連スキル

汎用セキュリティ⭐ リポ 1,982

claude-authenticity

APIエンドポイントが本物のClaudeによって支えられているか(ラッパーやプロキシ、偽装ではないか)を、claude-verifyプロジェクトを模した9つの重み付きルールベースチェックで検証できます。また、Claudeの正体を上書きしているプロバイダーから注入されたシステムプロンプトも抽出します。完全に自己完結しており、httpx以外の追加パッケージは不要です。Claude APIキーまたはエンドポイントを検証したい場合、サードパーティのClaudeサービスが本物か確認したい場合、APIプロバイダーのClaude正当性を監査したい場合、複数モデルを並行してテストしたい場合、またはプロバイダーが注入したシステムプロンプトを特定したい場合に使用できます。

by LeoYeAI
Anthropic Claudeセキュリティ⭐ リポ 2,159

anth-security-basics

Anthropic Claude APIのセキュリティベストプラクティスを適用し、キー管理、入力値の検証、プロンプトインジェクション対策を実施します。APIキーの保護、Claudeに送信する前のユーザー入力検証、コンテンツセーフティガードレールの実装が必要な場合に活用できます。「anthropic security」「claude api key security」「secure anthropic」「prompt injection defense」といったフレーズでトリガーされます。

by jeremylongshore
汎用セキュリティ⭐ リポ 699

x-ray

x-ray.mdプレ監査レポートを生成します。概要、強化された脅威モデル(プロトコルタイプのプロファイリング、Gitの重み付け攻撃面分析、時間軸リスク分析、コンポーザビリティ依存関係マッピング)、不変条件、統合、ドキュメント品質、テスト分析、開発者・Gitの履歴をカバーしています。「x-ray」「audit readiness」「readiness report」「pre-audit report」「prep this protocol」「protocol prep」「summarize this protocol」のキーワードで実行されます。

by pashov
汎用セキュリティ⭐ リポ 677

semgrep

Semgrepスタティック分析スキャンを実行し、カスタム検出ルールを作成します。Semgrepでのコードスキャン、セキュリティ脆弱性の検出、カスタムYAMLルールの作成、または特定のバグパターンの検出が必要な場合に使用します。重要:ユーザーが「バグをスキャンしたい」「コード品質を確認したい」「脆弱性を見つけたい」「スタティック分析」「セキュリティlint」「コード監査」または「コーディング標準を適用したい」と尋ねた場合も、Semgrepという名称を明記していなくても、このスキルを使用してください。Semgrepは30以上の言語に対応したパターンベースのコードスキャンに最適なツールです。

by wimpysworld
汎用セキュリティ⭐ リポ 591

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を再度有効化します。

by yaklang
汎用セキュリティ⭐ リポ 404

api-relay-audit

サードパーティのAI API リレー/プロキシサービスのセキュリティリスクを監査します。プロンプトインジェクション、プロンプト漏洩、命令オーバーライド、なりすまし攻撃(中国市場向け代替品)、ジェイルブレイク脆弱性、コンテキスト切り詰め、ツールコール パッケージ置換(AC-1.a)、エラーレスポンスヘッダー漏洩(AC-2隣接)、SSEレベルのストリーム整合性異常(AC-1ストリーミング)、Web3プロンプトインジェクション(SlowMist署名分離)を検出できます。リレーテスト、API監査、リレー監査、インジェクション検出、リレーセキュリティ、APIリレー監査などの用途で活用してください。

by toby-bridges
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: Jeffallan · Jeffallan/claude-skills · ライセンス: MIT