[論文レビュー] DeceptPrompt: Exploiting LLM-driven Code Generation via Adversarial Natural Language Instructions
DeceptPromptは、意味的整合性を保ちつつ特定の脆弱性を引き起こすようにコード大規模言語モデル(Code LLM)を誘導する、偽装された自然言語指示を生成する画期的な敵対的攻撃フレームワークを提案する。スプリット制御損失を用いた遺伝的進化ベースの最適化により、意味的に自然なプレフィックス/サフィックスを挿入することで、複数のLLMにわたり平均50%の攻撃成功率(ASR)向上を達成した。
With the advancement of Large Language Models (LLMs), significant progress has been made in code generation, enabling LLMs to transform natural language into programming code. These Code LLMs have been widely accepted by massive users and organizations. However, a dangerous nature is hidden in the code, which is the existence of fatal vulnerabilities. While some LLM providers have attempted to address these issues by aligning with human guidance, these efforts fall short of making Code LLMs practical and robust. Without a deep understanding of the performance of the LLMs under the practical worst cases, it would be concerning to apply them to various real-world applications. In this paper, we answer the critical issue: Are existing Code LLMs immune to generating vulnerable code? If not, what is the possible maximum severity of this issue in practical deployment scenarios? In this paper, we introduce DeceptPrompt, a novel algorithm that can generate adversarial natural language instructions that drive the Code LLMs to generate functionality correct code with vulnerabilities. DeceptPrompt is achieved through a systematic evolution-based algorithm with a fine grain loss design. The unique advantage of DeceptPrompt enables us to find natural prefix/suffix with totally benign and non-directional semantic meaning, meanwhile, having great power in inducing the Code LLMs to generate vulnerable code. This feature can enable us to conduct the almost-worstcase red-teaming on these LLMs in a real scenario, where users are using natural language. Our extensive experiments and analyses on DeceptPrompt not only validate the effectiveness of our approach but also shed light on the huge weakness of LLMs in the code generation task. When applying the optimized prefix/suffix, the attack success rate (ASR) will improve by average 50% compared with no prefix/suffix applying.
研究の動機と目的
- 意味的整合性を保ちつつ脆弱なコードを誘発する敵対的自然言語指示が、Code LLMに対して効果を発揮するかどうかを調査すること。
- 現実世界のユーザー入力を模倣する実用的なレッドチーム手法を開発し、Code LLMの最悪のセキュリティ挙動をテストすること。
- 代表的なCode LLM(例:CodeLlama、WizardCoder)が、意味的に無害に見えるが悪意あるプロンプトによって脆弱なコードを生成する傾向にあるかどうかを評価すること。
- プロンプト構造(例:プレフィックス/サフィックスの配置、長さ、グループサイズ)が敵対的プロンプト攻撃の効果に与える影響を理解すること。
- 微細な自然言語操作によって、機能的に正しいコードが体系的に深刻な脆弱性を含むように操作可能であることを示すこと。
提案手法
- DeceptPromptは、意味的に無害だが生成コードに特定の脆弱性を誘発する敵対的自然言語プレフィックスおよびサフィックスを生成するため、遺伝的進化ベースの最適化プロセスを採用する。
- 生成コードの機能的正しさを維持するとともに、ターゲット脆弱性(例:CWE-79、CWE-200)を注入する、新規のスプリット制御損失関数を導入する。
- 最適化されたプレフィックスが意味的に整合的で、敵対的入力として検出されないことを保証するため、参照言語モデル(GPT-2)を用いてパープレキシティを評価する。
- プレフィックス/サフィックス長、配置(プレフィックス対サフィックス)、集団サイズといった主要ハイパーパrameterのアブレーションスタディを実施し、攻撃成功率に与える影響を分析する。
- CodeLlama-7B、StarChat-15B、WizardCoderバージョンなど、複数のCode LLMを対象に、多様な脆弱性ターゲットおよびプロンプト設定下でフレームワークを評価する。
- コードスニペットやソフトプロンプトに依存しない、完全な自然言語指示を用いることで、実際のユーザーインタラクションを模倣する実世界の展開シナリオを想定する。
実験結果
リサーチクエスチョン
- RQ1意味的整合性を保ちつつ、脆弱なコードを誘発する敵対的自然言語指示によって、Code LLMが機能的に正しいが脆弱なコードを生成できるか?
- RQ2DeceptPromptは、敵対的プレフィックス/サフィックスを含まないベースラインプロンプトと比較して、攻撃成功率(ASR)をどの程度向上させるか?
- RQ3長さ、配置(プレフィックス対サフィックス)、グループサイズといったプロンプト構造が、敵対的攻撃のパフォーマンスに与える影響は何か?
- RQ4DeceptPromptが生成した敵対的プレフィックスは、パープレキシティなどの標準的指標によっても意味的に整合的で、検出されないまま保たれるか?
- RQ5CodeLlama や WizardCoder といった代表的なCode LLMは、CWE-79 や CWE-200 などの異なる脆弱性タイプに対して、どの程度この攻撃に脆弱であるか?
主な発見
- DeceptPromptは、敵対的プレフィックスまたはサフィックスを含まないベースラインプロンプトと比較して、平均して攻撃成功率(ASR)を50%向上させる。
- 10トークンのシードプレフィックステンプレートを用いる場合、DeceptPromptはASR 62.5%を達成するが、6トークンテンプレートでは55%に低下し、3トークンテンプレートでは35%にまで低下する。これは、より長いテンプレートが性能向上に寄与することを示している。
- 敵対的コンテキストをサフィックスとして配置すると、ASRは62.5%から52.5%に低下し、誤った機能性率(WFR)は0%から5%に上昇する。これは、タスク記述に近い位置に配置することで攻撃効果が向上することを示している。
- 集団サイズを100から64に減らすとASRは45%に低下し、さらに40に減らすと42.5%にまで低下する。これは、より大きな探索空間が最適化の成功確率を高めることを示している。
- 最適化されたプレフィックスのパープレキシティは低く保たれており、DeceptPromptが意味的整合性を維持し、標準的な言語品質指標で検出されないことを示している。
- 評価対象のすべてのCode LLM(CodeLlama-7B、StarChat-15B、WizardCoder-3B、WizardCoder-15B)が成功裏に攻撃を受け、この種の敵対的プロンプト攻撃に対して広範な脆弱性が明らかになった。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。