本論文では、大規模言語モデル(LLM)アプリケーションに対する新しい攻撃手法として、語彙攻撃を提案している。
まず、LLMアプリケーションの脆弱性について概説する。LLMは自然言語の生成に優れているが、予期せぬ出力(ホールシネーション)や、ユーザーの指示を無視した行動を取る可能性がある。アプリケーション開発者はシステムプロンプトを使ってこれらの問題に対処しているが、ハッカーはこれらの制限を回避する攻撃手法を開発している。
提案する語彙攻撃は以下の特徴を持つ:
攻撃対象のモデルを知らなくても、別のモデルを使って攻撃を成功させることができる。
攻撃に使う語彙は、1つや数個の単語にとどまる場合が多く、検出が困難である。
実験では、オープンソースのLLMモデルであるFlan-T5-XXLとLlama2-7B-CHAT-HFを攻撃対象とし、Llama2-CHAT-HFとT5-BASEをアタッカーモデルとして使用した。
攻撃の目的は、LLMに不適切な出力(「I hate humans」)や特定の出力(「I have been PWNED」)を生成させることである。結果として、語彙攻撃は文字列セパレーター攻撃と同程度の成功率を示し、しかも検出が困難な攻撃が多数見つかった。
このように、単一の単語や短い単語列の挿入によって、LLMアプリケーションの安全性を脅かすことができる。今後の課題として、より広範なモデルへの攻撃、プロンプトリークの調査、自動テストの開発などが挙げられる。
Vocabulary Attack to Hijack Large Language Model Applications