脅威アクターたちが、AIを活用したセキュリティツールを回避する新たな手法の試験を始めています。それは、有害なプロンプトインジェクションのコンテンツをコードのコメント内に仕込むというものです。
ESETの研究者は、この「GuardBreaker」と名付けられた手法を、ロシア寄りの脅威グループUAC-0099がウクライナを標的とした攻撃で使用したVBScriptの中で発見しました。
この悪意あるスクリプトには、核兵器の製造方法を尋ねるコメントが含まれていました。これは、LLMベースのコードスキャナーの安全性ルールを発動させるために仕込まれたコンテンツです。
このコメント自体はマルウェアの動作には影響しません。しかし、AI解析ツールがファイルの処理を拒否したり、実際の悪意あるコードにたどり着く前にレビューを打ち切ったりする可能性があります。
このVBScriptは、UAC-0099にのみ関連付けられているローダー「MATCHBOIL」をダウンロード・インストールするために作られていました。MATCHBOILは、侵害されたシステムに追加のペイロードを配信することができます。
GuardBreakerは、間接的なプロンプトインジェクションの基本的な形態です。攻撃者は、AIシステムに検査を求められるファイルの中に命令を隠します。
LLMがこのファイルを読み込むと、悪意あるコメントを信頼できないデータとしてではなく、命令として扱ってしまう可能性があります。現代のLLMは、システム命令とユーザー制御下のコンテンツを同じコンテキスト内で処理することが多いためです。
このため、モデルが正当なアナリストの指示と、ソースコード内に埋め込まれた攻撃者制御のテキストとを一貫して区別することは困難になります。
GuardBreakerのコメントは、目に見える形でそのまま残されていました。暗号化も難読化も施されておらず、従来の静的解析ツールから隠されてもいませんでした。その価値は、セキュリティパイプラインの一部となりうるAIシステムに影響を与える点にあります。
UAC-0099は以前から、IDAやWiresharkといったツールに対する解析回避チェックを使用してきました。今回のGuardBreaker手法は、同グループがLLMベースのコードスキャナーや自動化されたセキュリティワークフローについても、回避の対象として検討し始めていることを示唆しています。
同様のAIを狙った回避の試みは、悪意あるオープンソースパッケージにも見られます。
セキュリティ研究者たちは、悪意あるJavaScriptペイロードの前に、偽のシステム命令やポリシーを発動させるためのテキストを仕込んだPyPIパッケージを発見しています。
別のキャンペーンでは、攻撃者がAIスキャナーに対して悪意あるコードを無視し、パッケージを安全だとマークするよう指示するプロンプトを埋め込んでいました。脅威アクターたちは、コンテキストウィンドウを枯渇させる手法も試みています。
ある悪意あるnpmパッケージは、「You’re absolutely right!」というフレーズを何千回も繰り返していたと報告されています。これは、スキャナーが利用可能なコンテキストを使い切ってしまい、ファイルの後方に隠されたマルウェアにたどり着けなくなることを狙ったものと見られます。
これらの手法は、AIを活用した防御に死角を生み出す可能性があります。攻撃者はまた、巨大なファイル、特殊なフォーマット、偽の機密データラベル、不正な形式のコードなどを使って、解析を不完全にしたり遅延させたりすることも考えられます。
組織は、コードの安全性の判断を単一のLLMに委ねるべきではありません。AIによる解析結果は、従来型のスキャン、サンドボックス化、行動検知、複数モデルの併用、そして人間によるレビューによって検証する必要があると、welivesecurityは述べています。
セキュリティチームはまた、AIツールがファイルの解析を拒否した場合、それをクリーンな結果としてではなく、警告シグナルとして扱うべきです。
AIの応答が失敗または不完全だった場合には、自動的により深い調査を発動させる仕組みが必要です。それにより、GuardBreaker型の手口がマルウェア防御をすり抜ける容易な抜け道となることを防げます。
16,000以上の組織から得られる最新のインテリジェンスで、脅威の検知率を58%向上。SOCにTIフィードを統合しましょう
翻訳元: https://cyberpress.org/guardbreaker-tricks-ai-guardrails/