最近、セキュリティ研究者であるzer0dacはChatGPTに存在するセキュリティの脆弱性を明らかにしました。この脆弱性により、攻撃者はプロンプトインジェクション(Prompt Injection)およびパストラバーサル(Path Traversal)技術を用いて、一部のファイルアクセス制限を回避し、不正な追加データにアクセスすることが可能です。現在、OpenAIは報告を受けた後、関連するメカニズムを修正しています。

分析によると、問題の核心はChatGPTがアップロードされたファイルを処理するプロセスにあります。通常の場合、ユーザーがファイルをアップロードした後、システムは直接的な元のファイルのダウンロード機能を提供しません。ユーザーがダウンロードを要求した場合、システムは通常そのファイルが一時的なセッション内容であり、抽出できないとフィードバックします。

image.png

しかし、zer0dacはテスト中に「バイパス」するパスを見つけています。もしユーザーがChatGPTにアップロードされたファイルを編集させた後、「誤ってファイルを削除した」としてダウンロードリンクを要求すると、ChatGPTは有効なダウンロードURLを生成します。このリンクを通じて、攻撃者は内部検索パスにアクセスできるだけでなく、さらにパストラバーサル技術を利用して権限制限を突破し、ターゲットパス以外のファイルの内容を読み取る試みをすることができます。

zer0dacは、ChatGPTの既存のサンドボックスメカニズムによって、この脆弱性自体が高機密データを直接取得することはできないと指摘していますが、これは複雑な攻撃チェーンにおける重要な一歩となる可能性があり、後の深い攻撃に役立つかもしれません。現在、OpenAIはこれを対象とした最適化を行い、ファイルダウンロードURLの生成ロジックを調整し、根本的に内部ファイルパスの露出リスクを防いでいます。この出来事は、大規模モデルアプリケーション開発において、ユーザーインタラクションの入力フィルタリングと権限の分離がセキュリティ保護の最も重要な点であることを再び教えてくれます。