オープンソースコミュニティに、大規模言語モデル(LLM)をプロンプトインジェクション攻撃から防御するための、初のフェデレーション型脅威インテリジェンス・フィードが登場しました。prompt-shield v0.6.0と共にリリースされたこのフィードには、ed25519キーで署名された56個の精査済み攻撃シグネチャが含まれており、軽量なPythonクライアントを介して無料のCDNから取得できます。

なぜLLM防御には共有インテリジェンス・ソースが不足していたのか

従来のセキュリティレイヤーは、公開され、定期的に更新されるシグネチャに依存しています。WebアプリケーションファイアウォールはOWASPパターンを消費し、アンチウイルスプログラムはClamAVのアップデートを取り込みます。これらのフィードが防御を最新の状態に保っています。対照的に、LLMセキュリティツールは個別に動作しており、各ベンダーや研究者が独自の悪意のあるプロンプトのリストを維持しています。

このギャップは技術的なものではありません。商用ベンダーは脅威データを製品として扱うため、クローズドな状態に保ちます。大規模な研究グループには、公開フィードが要求する「退屈な」インフラを運用するためのリソースが不足しています。既存のバリデータ・マーケットプレイスは一方通行のハブとして機能しており、リアルタイムでコミュニティ主導のストリームを提供するのではなく、静的なアップデートをプッシュするにとどまっています。その結果、防御面が断片化し、新しいプロンプトインジェクションの手法が見逃されてしまう状況が生じています。

新しいフィードの仕組み

このプロジェクトは公開GitHubリポジトリで管理されており、以下の3つのファイルが含まれています。

  • signatures.json – LLMの出力を乗っ取る可能性のあるパターンを記述した56個の攻撃シグネチャ。
  • signatures.json.minisig – JSONファイルをメンテナーの秘密鍵に紐付けるed25519署名。
  • public.key – クライアントライブラリが署名を検証するために使用する公開鍵。

200行のピュアPythonクライアントがJSONを取得し、公開鍵に対してminisigをチェックし、新しいルールをprompt-shieldエンジンにマージします。検証に失敗した場合、クライアントは最後に確認された正常なキャッシュにフォールバックするため、信頼できないデータが防御レイヤーに到達することはありません。

このフィードを際立たせている3つの設計原則があります。

  1. ゼロ・テレメトリ – クライアントは単一のHTTP GETリクエストを行うだけで、識別子、APIキー、使用メトリクスなどを送信することはありません。
  2. 暗号学的検証 – 誰でもフィードをダウンロードできますが、メンテナーの秘密鍵で署名されたデータのみが受け入れられます。
  3. フェイルセーフ動作 – 署名が破損していてもシールドが無効になることはありません。システムは単に、以前に検証済みのルールを引き続き使用します。

シグネチャは、NVIDIAのGarakレッドチーム・コーパス、OWASP LLM Top 10の例、HackerOneでの公開情報、およびメンテナーによって審査されたコミュニティからの投稿など、いくつかの信頼できるソースから抽出されています。

誰が恩恵を受け、何が懸念されるのか

LLMを活用したアプリを構築する開発者は、単一のコマンド(pip install prompt-shield-ai)で統合できる、無料で検証可能なプロンプトインジェクションパターンのソースを手にしました。かつて独自のクローズドソースのインテリジェンスに頼っていた組織は、コミュニティが維持する代替手段によって、それらのフィードを補完または置き換えることができます。

プロジェクトの「バス係数(bus factor)」、つまりその人がいなくなるとプロジェクトが立ち行かなくなる人数は、現在は「1」です。もしメンテナーがアップデートの署名を停止すれば、フィードは停滞し、ダウンストリームのユーザーは新しいシグネチャを受け取れなくなります。著者は、このプロジェクトを個人の取り組みから持続可能なコミュニティ資産へと変えるため、リポジトリを共同管理するエンジニアを明示的に募集しています。

要点: LLMのプロンプトインジェクションに対する、公開検証可能でコミュニティ主導の脅威インテリジェンス・フィードが利用可能になりました。これは、コミュニティが維持と最新性の確保に協力することを条件に、独自のソリューションに代わる低コストで透明性の高い選択肢を提供します。