端末内で動く言語モデルでも入力の秘密は守られるか
The Illusion of Local Privacy: Confidentiality Boundary Failures in Consumer LLM Serving Systems
この論文をやさしく読む
ひとことで言うと
AIを自分の端末で動かしても、入力文がメモリやファイルに残ったり、共有サービスの境界から漏れたりする可能性を調べた研究です。
何に役立つ?
ローカルLLMの機密性を評価する際に、モデルだけでなく、その周囲の保存・メモリ管理・認可も点検するための観点を提供します。
この研究の面白いところ
モデル読み込み試験では問題を観測しなかった一方、ほかの境界では入力の残留や別テナントの状態復元が見つかりました。1つの安全性試験だけでシステム全体を判断できないことが具体的に示されています。
どこまで分かった?
対象は4つのモデル系列と2つのプラットフォームです。200回の成功は制御された試験内の結果で、パーサーに問題がなかったという結果も探索範囲内に限られます。要旨には対象版や修正状況は示されていません。
v1のアブストラクトに基づくAI解説。日本語訳とは別に、用途の解釈を含みます。
アブストラクトの日本語訳
大規模言語モデル(LLM)をローカルで動かすことは、ユーザーのプロンプトが端末にとどまるため、クラウドでの推論よりプライバシーを守れると考えられがちである。本研究では、推論をローカルに保つだけでプロンプトの機密性を保てるかを問う。結果は、それだけでは不十分であることを示す。機密性は、推論の前、最中、後に、周辺の提供用ソフトウェアがプロンプトをどう扱うかにも依存する。 一般利用者向けのローカルLLM提供システムで、機密性が破られ得る4つの境界、すなわちモデルの読み込み、実行時メモリ、ラッパー層の永続保存、サービス提供インターフェースを調べる。そのために、各境界を個別に試験し、観測した問題を原因となるソフトウェア構成要素へたどる計測基盤LLAnalyzerを開発した。重みが公開された4つのモデル系列と2つの一般利用者向け配備プラットフォームに適用すると、境界ごとに大きく異なる挙動が見られた。 24時間で1,200万回を超える実行を行ったAFL++による試験では、探索した状態空間内でパーサーのクラッシュも、不正な形式のGGUFの読み込み成功も観測しなかった。一方、実行時メモリでは、アロケーターが管理する領域に複数の平文表現が残るため、推論後もプロンプトを復元できた。消去処理は残留を減らすが、取り除き切れない。また、一般利用者向けラッパーは平文で永続保存することで、プロンプトの残存期間を延ばし得る。 サービス提供境界では、認証済みのあるクライアントが別テナントの保存済み会話状態を復元できる、従来記録されていなかったllama.cppの認可上の欠陥を見つけた。攻撃は制御された試験200回すべてで成功した。これとは別に、共有されるプロンプト接頭部のキャッシュは、広域ネットワーク条件でも区別可能な遠隔タイミングオラクルを露出させる。ローカルLLMシステムには、プロンプトの残存期間、永続保存、テナント分離について明示的な保証が必要だと論じる。
v1の要旨から自動生成。本文の精読・人による確認は未実施。
- 初稿
- 2026-09-16(UTC)
- 最新改訂
- 2026-09-16 · v1
- 査読・掲載
- 査読状況未確認
更新履歴
- v1 2026-09-16 この版を読む
取得できた版を表示。版の更新は査読済みを意味しません。過去版の本文差分は未解析です。
原文の要旨
Running large language models (LLMs) locally is often considered more private than cloud-hosted inference because user prompts remain on the device. We ask whether keeping inference local is, by itself, sufficient to keep those prompts confidential. Our results show that it is not: prompt confidentiality also depends on how the surrounding serving software handles prompt data before, during, and after inference. We examine four boundaries at which prompt confidentiality can fail in consumer local-LLM serving systems: model loading, runtime memory, wrapper-level persistence, and the serving interface. To study these boundaries, we develop LLAnalyzer, a measurement framework that tests each boundary separately and traces observed failures to the responsible software component. Applying LLAnalyzer to four open-weight model families and two consumer deployment platforms, we find markedly different behaviour across boundaries. In a 24-hour AFL++ campaign with more than 12 million executions, we observe no parser crashes or successful malformed GGUF loads within the explored state space. Runtime memory tells a different story: we recover prompts after inference because multiple plaintext representations survive in allocator-managed memory, and sanitisation reduces this residue without eliminating it. We also find that consumer wrappers can extend prompt lifetime through plaintext persistence. At the serving boundary, we uncover a previously undocumented authorization flaw in llama.cpp that allows one authenticated client to restore another tenant's saved conversation state; the attack succeeds in 200/200 controlled trials. Separately, shared prompt-prefix caching exposes a remote timing oracle that remains distinguishable under WAN conditions. We argue that local LLM systems need explicit guarantees for prompt lifetime, persistent storage, and tenant isolation.
著者のコメント
20 pages, 1 figure, 12 tables. Code and experimental artifacts: https://github.com/0xzodiac/Local-LLMs-Forensics, Preprint under review for IEEE Transactions on Information Forensics and Security (T-IFS)
arXiv ID: 2609.18526 / 要約の誤りについて