Secure LLM
LLM (大規模言語モデル) アプリケーションのセキュリティ脅威から保護
Secure LLMは大規模言語モデルから情報露漏洩、データ改竄を保護するファイアーウォールとガバナンス機能を提供します。
LLM(Large Language Model /大規模言語モデル)は人間の会話と違和感がないほど適切に指示を理解し回答を導いてくれます。無限に学習することが可能で情報を1つのモデルに蓄積させることができます。
これは情報セキュリティにおいては学習した内容によっては非常にリスクの高い情報資産となり得ます。大規模言語モデル開発時や利用時における情報漏洩、データ改竄のリスク対応は非常に重要な課題で、このリスクを低減させるソリューションが不可欠です。Secure LLMはOWASP TOP 10 for Large Language Model Applicationsに取り上げられているリスクに対応したソリューションでファイアーウォール機能とガバナンスを提供するテナント機能を提供します。
ソリューション概要
Secure LLMは安全にLLMの運用ができ、LLMセキュリティリスクを低減するセキュリティ機能を組み込んだLLMセキュリティフレームワークです。Secure LLMは2つのサービスで構成されております。1つ目はLLMへの不正な指示の検知と阻止、指示や応答のデータ内の機密情報の検知を行うファイアウォール機能「Secure LLM Firewall」でもう一つはユーザーとLLMをチームで管理し、チーム内のイベントを記録する監査機能や特定のイベントを監視するアラート機能を備えてたテナント機能「Secure LLM Tenant」を提供します。
BetaのフェーズではChatベースのアプリケーションをSecure LLMに連携させてサービスを提供します。
Secure LLM Tenant
Team
Team
LLM
Secure LLM Firewall
LLM
Secure LLM Firewall
LLMの悪用からアプリケーションを守るファイアウォール機能
LLMへの指示にプロンプトインジェクションなど不正な指示がないか検査します。またLLMへの指示やLLMからの応答に対して機密情報や危険な情報(コード)が含まれていないか検査します。Secure LLM FirewallはAPIインターフェースを提供し、LLMにアクセスする前にSecure LLM FirewallのAPIに指示を投入し検査を行い、検査結果を返します。アプリケーションは検査結果に応じてLLMへの指示を継続するか判断します。LLMからの回答に対して、Secure LLM FirewallのAPIに回答を送信し回答内に機密情報、個人情報、危険なスクリプトなどないか判定し検査結果を返します。
プロンプトインジェクションなど具体的な攻撃手法以下の記事を参照してください。
Secure LLM Tenant
テナント機能でユーザー・LLMを制御し統制
テンナント単位で認証方法やテナント下に登録されるチームを管理することができます。人とモデルを管理することができる。TeamとAgent機能を通して人とモデルを管理し、LLMコンポネントを保護します。
Team
Agentに登録されたLLMにアクセスするユーザーをチームで管理して、チーム単位でLLMに関わる情報を制御することができます。社内のデータを取り込んだLLMは、重要な情報資産となり情報オーナーによってLLMへのアクセスを制御する必要があります。Team機能はその役割を果たします。
Agent
LLMをホストしているプロバイダーとSecure LLMの環境を接続し、LLMを保護します。複数のLLMプロバイダーと接続でき、利用用途や組織のポリシーに応じてLLMと接続できます。チームに登録されたユーザーの操作を監視し、閾値を超えるリクエストやトークン数が発生した場合は利用を一時停止することが可能です。管理者が再度有効にするまで利用ができません。
Audit
テナント上の操作、LLMへのアクセスなど、ユーザーの行動を記録します。情報資産にどのようなアクセスを行ったのか、記録を残し定期的なレビューをすることはセキュリティ運用の中で不可欠です。監査イベントでもリスクが高いものはアラート機能と連携し、迅速に対応することができます。
Alert
イベントの出力と同時に不審なイベントを検出してアラートを受信することは重要です。例えば、連続したログインの失敗、プロンプト入力の閾値超えや不正な指示の検出など、情報セキュリティに影響を及ぼす可能性のあるイベントを迅速に検知し、ユーザーに操作内容を確認することは不正を抑止する効果があります。
OWASP TOP 10 for LLM Applications
OWASP Top 10 for Large Language Model Applicationsは、LLM(大規模言語モデル)アプリケーションに特有のセキュリティリスクを特定したガイドラインです。従来のOWASP Top 10(Webアプリケーションの脆弱性リスト)を基に、LLMの特性に合わせてリスクを分類しています。例えば、不適切なプロンプト設計によるインジェクション攻撃、データ漏洩、過剰信頼による誤判断が挙げられます。開発者や運用者はこのリストを参考に、LLMアプリケーションの安全性を確保し、モデルの誤用や攻撃リスクを低減する対策を講じることが重要です。
LLM01 Prompt Injection (プロンプトインジェクション)
プロンプトインジェクションは、特定の入力でLLMの動作や出力を意図しない方法に変更する脆弱性です。入力が視認できなくても影響を与え、ガイドライン違反や不正アクセスを引き起こす可能性があります。ジェイルブレイクはその一種で、安全対策を無視させます。防止には安全なプロンプト設計や継続的なモデル改善が必要です。
LLM02 Sensitive Information Disclosure (機密情報の開示)
機密情報はLLMやアプリケーションに影響を与え、プライバシー侵害や知的財産侵害のリスクがあります。個人情報や機密ビジネスデータがモデル出力に含まれる可能性があり、不正アクセスを招く恐れもあります。リスク軽減にはデータのサニタイズや明確な使用条件ポリシー、機密情報の制限をシステムに組み込む必要がありますが、プロンプトインジェクションで回避される可能性もあります。
LLM03 Supply Chain (サプライチェーン)
LLMのサプライチェーンリスクは、モデルの訓練データやアルゴリズム、依存する外部サービスが不正や脆弱性により攻撃を受ける可能性を指します。不正なデータや改ざんされたコードにより、モデルが誤学習や不正動作を引き起こす危険性があります。
LLM04 Data and Model Poisoning (データとモデルの汚染)
データポイズニングは、LLMの訓練データや微調整段階で改ざんが行われ、モデルに脆弱性やバイアス、バックドアが導入されるリスクを指します。これにより、モデル性能の低下や有害な出力が生じ、外部データソースやオープンソースモデルでは特に危険です。さらに、隠れたバックドアやマルウェアが埋め込まれる可能性もあり、モデルが予期せぬ動作をするリスクが高まります。
LLM05 Improper Output Handling (不適切な出力処理)
不適切な出力処理は、LLMの生成した出力が十分に検証やサニタイズされず、下流システムでセキュリティリスクを引き起こす問題です。この脆弱性により、XSS、CSRF、SSRF、権限昇格、リモートコード実行などが発生する可能性があり、出力内容の適切な処理が重要です。
LLM06 Excessive Agency (過剰な代理権)
LLMベースのシステムは拡張機能を通じて他のシステムと連携し、プロンプトに応じたアクションを実行します。これを管理するエージェントは動的に決定を行い、出力を基に繰り返し呼び出しを行います。しかし、過剰なエージェンシーにより、予期しない出力や操作された結果が有害なアクションを引き起こす脆弱性が生じる可能性があります。
LLM07 System Prompt Leakage (システムプロンプトの漏洩)
LLMのシステムプロンプト漏洩は、モデル動作を誘導するプロンプトに意図せず機密情報が含まれ、攻撃に利用されるリスクを指します。プロンプト内に資格情報や接続文字列などを含めるべきではなく、システムガードレールや権限分離の欠如が根本的なセキュリティリスクとなります。攻撃者はモデルの反応を観察することでプロンプトの制約を推測し、悪用する可能性があります。
LLM08 Vector and Embedding Weaknesses (ベクトルと埋め込みの弱点)
ベクトルと埋め込みの脆弱性は、LLMを用いた検索拡張生成(RAG)システムにおいて重大なリスクをもたらします。これらの弱点を悪用すると、有害なコンテンツの挿入、モデル出力の操作、機密情報への不正アクセスが可能となります。RAGは外部知識ソースを活用し、応答の精度と関連性を向上させますが、ベクトルや埋め込みの管理が重要です。
LLM09 Misinformation (誤情報)
LLMの誤情報は、信頼性があるように見える誤った情報を生成し、セキュリティ侵害や評判の失墜、法的責任を引き起こす可能性があります。主な原因は幻覚で、モデルが根拠のない内容を生成する現象です。さらに、トレーニングデータのバイアスや不完全性も誤情報の要因となります。また、LLM出力を過度に信頼し精査しない「過度の依存」により、誤情報が重要な決定に組み込まれるリスクが高まります。
LLM10 Unbounded Consumption (無限の消費)
無制限の消費は、LLMが過度に推論を実行されることで、サービス拒否(DoS)、経済的損失、モデルの盗難などのリスクを引き起こす現象です。特にクラウド環境では、計算リソースの悪用や不正使用が問題となり、サービスや財務リソースの低下につながる可能性があります。
Secure LLM 緩和できるリスク
OWASP TOP 10 for LLM ApplicationのリスクをSecure LLMが提供する機能で緩和することができます。
Secure LLM Firewall
不正な指示や個人情報や機密情報を検出するため、アプリケーションからモデルへの双方向通信時に検査します。
LLM01 プロンプトインジェクション
LLM02 機密情報の開示
LLM05 不適切な出力処理
LLM10 無限の消費
Secure LLM Tenant
ユーザやモデルを管理し、監査イベントを残し、ガバナンスが取れた環境にすることでリスクを低減させます。
LLM03 サプライチェーン
LLM04 データとモデルの汚染
LLM07 システムプロンプトの漏洩
現在の開発状況について
現在、Azureリソース上で開発しており、Azure Open AI Service, Open AI上のモデルを対象にしております。今度、機能拡張の中で他環境のモデルのサポートを行う予定です。
将来、当ソリューションの導入をご検討可能の方はお問い合わせください。テスト環境のレビューを行っていただき、ご要望などを取り入れながらサービスリリースをいたします。