独立行政法人情報処理推進機構(IPA)および一般社団法人JPCERT コーディネーションセンター(JPCERT/CC)は3月25日、LibreChat RAG APIにおけるログインジェクションの脆弱性について「Japan Vulnerability Notes(JVN)」で発表した。影響を受けるシステムは以下の通り。
LibreChat RAG API バージョン 0.7.0
LibreChat RAG APIは、FastAPIとLangChainを用いて構築された非同期バックエンドサービスとして設計されており、PostgreSQLのpgvector拡張と連携してドキュメントベースのRAG(検索拡張生成)機能を提供しているが、同機能では、ユーザーからの入力が適切に無害化されずにログファイルに出力されているため、POSTリクエストのフォームデータ内のfile_idパラメーターに改行文字を挿入することで、ログエントリの改ざんが可能となっている。
想定される影響としては、認証された攻撃者によってログが操作され、悪意のある活動の隠蔽、フォレンジック調査の妨害、他のユーザーへのなりすましが行われる可能性がある。また、改ざんされたログがウェブベースの管理コンソールや安全でないログ管理ツールを通じて閲覧された場合、クロスサイトスクリプティング(XSS)やリモートコード実行などの二次的な攻撃につながる可能性がある。
JVNでは、下記のワークアラウンドを組み合わせて実施することで、本脆弱性の影響を軽減することが可能と案内している。
・RAGへの取り込み処理において、悪意のあるデータが入力ログに記録されないように無害化する
・使用していない場合は、PostgreSQLのpgvector拡張機能を無効にする
・RAGの出力を他のツールに渡す前に検証し、間接的なプロンプトインジェクションにつながるおそれのあるデータの転送を防止する
