コミュニケーションツールのSlackに導入されたAIに特定のプロンプトを伝えることで、他人の機密データを流出させることが可能になっていることが明らかになりました。

Data Exfiltration from Slack AI via indirect prompt injection

https://promptarmor.substack.com/p/data-exfiltration-from-slack-ai-via

Data Exfiltration from Slack AI via indirect prompt injection

https://simonwillison.net/2024/Aug/20/data-exfiltration-from-slack-ai/

大規模言語モデル(LLM)のセキュリティを研究するpromptarmorによると、攻撃者がパブリックチャンネルで悪意のあるプロンプトを入力した場合、ユーザーがプライベートチャンネルに投稿した機密データが引き出され、攻撃者に伝わってしまう可能性があるとのこと。

この問題は、Slack AIのLLMが開発者によって作成された「システムプロンプト」とユーザーによって入力されるプロンプトを区別できないために発生するそうです。Slack AIはチャンネルに投稿されたプロンプトを学習することがあるため、一般のユーザーが何か質問したときに、攻撃者から取り込んだ悪意のある結果を返すことがあるといいます。

promptarmorが示した攻撃手順では、プライベートチャンネルにAPIキーを置いていたユーザーが「僕の○○のAPIキーはなんだっけ?」と尋ねた際、Slack AIがエラーメッセージに加えて「ここをクリックしてください」という文章を返すように命令することが可能なことが示されています。



「ここをクリック」には情報を攻撃者に送信するためのURLが仕込まれていて、さらにURLのパラメーターリンクには、Slack AIがプライベートチャンネルを通じて学習したユーザーのAPIキーが追加されているといった具合です。ユーザーがリンクをクリックしてしまうだけで、パラメーターリンクとして付いたAPIキーが攻撃者に知られることになります。



promptarmorは「Slack AIはソースの引用元を明記するとのことですが、今回の場合、攻撃者のプロンプトを引用元として明記していません。このように、Slack AIが明らかに攻撃者のメッセージを取り込んでいるにもかかわらず、出力のソースとして攻撃者のプロンプトを引用していないため、この攻撃を追跡することは非常に困難です。さらに、攻撃者のプロンプトは検索結果の最初のページにさえ含まれていないため、被害者は潜在的に複数ページの結果をスクロールダウンしない限り、攻撃者のプロンプトには気づかないでしょう。この攻撃はAPIキーに限らず、どのような秘密でも流出させることができる可能性があることを示しています」と述べました。

2024年8月14日以降、Slack AIはメッセージに加えてアップロードされたドキュメントやGoogle Driveのファイルなども取り込むようになったため、promptarmorは「リスクを受ける範囲が増加している」と指摘。promptarmorはSlack AIに情報を開示したものの、Slack AIから「証拠が不十分であると判断した」など問題の本質を理解していないような回答があり、適切な対応は行われなかったそうです。



promptarmorは「このようなプロンプトインジェクションがいかに新しく、業界全体でいかに誤解されているかを考えると、問題が理解されるには時間がかかるでしょう。テストは8月14日以前に実施したため、ドキュメント取り込み機能については明確にわかりませんが、この攻撃が行われる可能性も高いと考えられます。管理者は、この問題が解決されるまで、Slack AIがドキュメントを取り込む機能を制限する必要があります」と述べました。