本文へ移動
cccskills
無料GitHub で公開

security-expert

脅威と攻撃面を洗い出し、最小権限と安全な失敗で守るための判断軸。認証/認可、入力検証、秘密情報管理、監査ログ等の設計・実装・レビューで使う。

インストール方法を見る

含まれるファイル(1)

  • SKILL.md3.4 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Security Expert Skill

発火条件(リポジトリ判定)

  • 認証/認可、入力、ファイルアップロード、外部API連携、決済、個人情報、管理画面、セキュリティ事故対応、ログ/監査の相談で適用する。
  • doc/input/rdd.md の「非機能要件(セキュリティ)」がある場合は必ず参照し、優先順位を確認する。

このSkillの基本方針(整理軸)

  • 基本方針: 「攻撃者視点」で穴を探し、「開発者視点」で運用可能な最小の対策に落とす。
  • デフォルト安全: 許可リスト(allowlist)・最小権限・安全な失敗(fail closed)を基本にする。
  • 秘密情報: secretsは .env 等の管理外に置き、クライアントに送らない(PUBLIC環境変数にしない)。

思想(判断ルール)

  1. セキュリティは機能。要件・設計・実装・運用の全レイヤに跨る。
  2. 入力は信じない(検証/正規化/サイズ制限)。出力は漏らさない(情報最小化)。
  3. 認可は認証より難しい。権限モデルを先に言語化し、境界で必ず検査する。
  4. ログは監査のために残すが、秘密情報・個人情報は残さない(マスキング/縮退)。
  5. 自作暗号・自作認証は避け、デファクトの枠組みを使う(採用根拠を示す)。

進め方(最初に確認する問い)

  • 守る対象は?(アカウント、個人情報、金銭、業務データ)
  • 攻撃面は?(API、フォーム、アップロード、Webhook、管理画面)
  • 誰が何をできる?(権限モデル:ロール/スコープ/所有者)
  • 失敗時の挙動は?(遮断/縮退/通知/監査)

出力フォーマット(必ずこの順)

  1. 脅威の整理(守る対象/攻撃面/想定攻撃)
  2. 推奨対策(最小セット)
  3. 設計(認可境界/入力検証/秘密情報/ログ/エラー応答)
  4. 検証(テスト/自動化/運用チェック)
  5. 落とし穴
  6. 次アクション(小さく適用する順)

チェックリスト(実装レビュー用)

入力検証

  • allowlist(型/形式/範囲/サイズ)で検証しているか
  • 正規化(trim/Unicode等)とエラーメッセージ最小化ができているか

認証・認可

  • 認可チェックが「必ず」境界で実行されるか(UIだけに寄せない)
  • IDOR(他人のID参照)になっていないか(所有者検証)

秘密情報

  • secretsがクライアントへ露出していないか(ログ/例外/ENV/レスポンス)
  • トークン/鍵のローテーション方針があるか(最低限の運用手順)

Webの基本

  • CSRF/SSR、XSS、SQLi/NoSQLi、パス・トラバーサル等の基本リスクを検討したか
  • レート制限/ロックアウト/監査ログ(必要箇所)があるか

よくある落とし穴

  • 「認証したから安全」として認可を省略する
  • エラーメッセージやログに秘密情報を残す
  • 入力検証をブラックリストで行い抜け道が残る

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

accessibility-engineer

無料日本語概要

セマンティックHTML/JSXとWAI-ARIAを「最小で正しく」適用し、キーボード操作・スクリーンリーダ・コントラスト等を満たす実装を作るための判断軸。ネイティブ要素優先、ARIAの過剰使用を避ける。

mae616/ai-template92026年10月6日 更新

agent-browser

無料日本語概要

Agent Browser(Headlessブラウザ自動化CLI)を使ったUI検証・E2Eテスト・スクリーンショット取得の判断軸。アクセシビリティツリーベースの要素選択を優先し、壊れにくいテスト設計を目指す。

mae616/ai-template92026年10月6日 更新

animation-principles

無料日本語概要

ディズニーの12原則とジブリ的自然運動をベースに、UIアニメーションの「なぜ動かすか」「どう動かすか」を判断する。アニメーション/モーション/トランジション設計の相談で、ツール非依存の概念的判断軸として使う。

mae616/ai-template92026年10月6日 更新

architecture-expert

無料日本語概要

アーキテクチャ設計(境界/依存/データフロー/非機能/運用)を、制約とトレードオフで言語化し、ADR-liteで合意形成しながら段階的に形にする。doc/input/rdd.md にアーキテクチャ/非機能/運用の要求がある、または設計判断(分割/責務/インタフェース/データ整合/観測性/スケール)相談で使う。

mae616/ai-template92026年10月6日 更新

biz-researcher

無料日本語概要

事業仮説を支える一次/二次情報を整理し、意思決定に足る「根拠」「不確実性」「次の調査」を可視化する。でたらめな引用や推測の断言を避け、出典の実在を重視する。

mae616/ai-template92026年10月6日 更新

creative-coder

無料日本語概要

体験品質(動き/触感/視線誘導)を「実装可能な制約」に落とし、アクセシビリティとパフォーマンスを犠牲にせずに表現を実現する。UIの表現・アニメーション・インタラクション設計/実装の相談で使う。

mae616/ai-template92026年10月6日 更新

mae616 のスキルをすべて見る

このスキルの問題を報告する