mcpField
L
llm-security

llm-security

github.com/semgrepセキュリティ3331.6k 回インストール13 週間前に更新
リポジトリ

llm-security について

llm-securityは、OWASP Top 10 for LLM Applications 2025に基づくセキュリティガイドのスキルです。LLMアプリを構築・レビューする開発者向けに、用途別の優先リスクとコード例を含むルールを示します。

主な機能

  1. 01用途別の優先リスクの特定
  2. 02OWASPのLLMリスク10分類を網羅
  3. 03セキュリティ対策とリスク確認
  4. 04MITRE ATLASとNISTを参照

活用シーン

  1. 01チャットボットやLLM APIのレビュー
  2. 02ツールを使うAIエージェントの評価
  3. 03RAGシステムと埋め込みの保護
  4. 04学習データとモデル供給網の確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/semgrep/skills --skill llm-security

インストール後、Claude Code で/llm-securityを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

AGENTS.md
README.md
rules/
_sections.md
data-poisoning.md
excessive-agency.md
misinformation.md
output-handling.md
prompt-injection.md
sensitive-disclosure.md
supply-chain.md
system-prompt-leakage.md
unbounded-consumption.md
vector-embedding.md

詳細

LLM セキュリティガイドライン(OWASP Top 10 for LLM 2025)

OWASP Top 10 for LLM Applications 2025 に基づいた、安全な LLM アプリケーションを構築するためのセキュリティルールです。

このスキルの使い方

プロアクティブモード — LLM アプリケーションを構築またはレビューする際、アプリケーションのパターンに基づいて関連するセキュリティリスクを自動的に確認します。ユーザーが LLM セキュリティについて質問するのを待つ必要はありません。

リアクティブモード — ユーザーから LLM セキュリティについて質問された場合は、以下の対応表を使って、脆弱なコードと安全なコードの詳細な例を含む関連ルールファイルを探します。

ワークフロー
  1. ユーザーが何を構築しているかを特定します(以下の「何を構築していますか?」を参照)
  2. そのパターンに関する優先ルールを確認します
  3. コード例について、rules/ 内の該当するルールファイルを読みます
  4. 安全なパターンを適用するか、脆弱なパターンを指摘します

何を構築していますか?

ユーザーのタスクで最も重要なルールをすばやく特定するには、以下を使用します。

構築するもの...優先ルール
チャットボット/会話型 AIプロンプトインジェクション(LLM01)、システムプロンプトの漏えい(LLM07)、出力処理(LLM05)、無制限の消費(LLM10)
RAG システムベクトル/埋め込みの弱点(LLM08)、プロンプトインジェクション(LLM01)、機密情報の開示(LLM02)、誤情報(LLM09)
ツールを使う AI エージェント過剰な自律性(LLM06)、プロンプトインジェクション(LLM01)、出力処理(LLM05)、機密情報の開示(LLM02)
ファインチューニング/トレーニングデータポイズニング(LLM04)、サプライチェーン(LLM03)、機密情報の開示(LLM02)
LLM を活用した API無制限の消費(LLM10)、プロンプトインジェクション(LLM01)、出力処理(LLM05)、機密情報の開示(LLM02)
コンテンツ生成誤情報(LLM09)、出力処理(LLM05)、プロンプトインジェクション(LLM01)

カテゴリ

重大な影響
  • LLM01:プロンプトインジェクション(rules/prompt-injection.md)- 直接的および間接的なプロンプト操作を防止します
  • LLM02:機密情報の開示(rules/sensitive-disclosure.md)- PII、認証情報、専有データを保護します
  • LLM03:サプライチェーン(rules/supply-chain.md)- モデルのソース、トレーニングデータ、依存関係を保護します
  • LLM04:データおよびモデルのポイズニング(rules/data-poisoning.md)- トレーニングデータの操作やバックドアを防止します
  • LLM05:不適切な出力処理(rules/output-handling.md)- 後続処理で使用する前に LLM の出力をサニタイズします
高い影響
  • LLM06:過剰な自律性(rules/excessive-agency.md)- LLM の権限、機能、自律性を制限します
  • LLM07:システムプロンプトの漏えい(rules/system-prompt-leakage.md)- システムプロンプトが開示されないよう保護します
  • LLM08:ベクトルと埋め込みの弱点(rules/vector-embedding.md)- RAG システムと埋め込みを保護します
  • LLM09:誤情報(rules/misinformation.md)- ハルシネーションや誤った出力を軽減します
  • LLM10:無制限の消費(rules/unbounded-consumption.md)- DoS、コスト攻撃、モデルの窃取を防止します

OWASP/MITRE の参照情報を含む完全な索引については、rules/_sections.md を参照してください。

クイックリファレンス

脆弱性主な予防策
プロンプトインジェクション入力の検証、出力のフィルタリング、権限の分離
機密情報の開示データのサニタイズ、アクセス制御、暗号化
サプライチェーンモデルの検証、SBOM、信頼できるソースのみを使用
データポイズニングデータの検証、異常検知、サンドボックス化
出力処理LLM を信頼できないものとして扱う、出力のエンコード、クエリのパラメーター化
過剰な自律性最小権限、人間による介在、拡張機能の最小化
システムプロンプトの漏えいプロンプトに秘密情報を含めない、外部ガードレール
ベクトル/埋め込みアクセス制御、データの検証、モニタリング
誤情報RAG、ファインチューニング、人間による監視、相互検証
無制限の消費レート制限、入力の検証、リソースのモニタリング

主要原則

  1. LLM の出力を決して信用しない - 使用前にすべての出力を検証し、サニタイズします
  2. 最小権限 - LLM システムに必要最小限の権限を付与します
  3. 多層防御 - 複数のセキュリティ対策を重ねます
  4. 人間による監視 - 影響の大きい操作には承認を必須とします
  5. 監視とログ記録 - 異常を検出するため、すべての LLM とのやり取りを追跡します

参考資料

コメント