[論文レビュー] LLM4Vuln: A Unified Evaluation Framework for Decoupling and Enhancing LLMs' Vulnerability Reasoning
本論文は、LLM4Vuln という、LLMの脆弱性推論を知識取得、文脈追加、プロンプト設計から切り離すモジュール式フレームワークと、UniVul という多言語脆弱性知識ベンチマークを導入し、6つのLLMを 3,528 の管理シナリオで 147 個の正解脆弱性と 147 の非脆弱ケースに渡って評価する。
Large language models (LLMs) have demonstrated significant potential in various tasks, including those requiring human-level intelligence, such as vulnerability detection. However, recent efforts to use LLMs for vulnerability detection remain preliminary, as they lack a deep understanding of whether a subject LLM's vulnerability reasoning capability stems from the model itself or from external aids such as knowledge retrieval and tooling support. In this paper, we aim to decouple LLMs' vulnerability reasoning from other capabilities, such as vulnerability knowledge adoption, context information retrieval, and advanced prompt schemes. We introduce LLM4Vuln, a unified evaluation framework that separates and assesses LLMs' vulnerability reasoning capabilities and examines improvements when combined with other enhancements. To support this evaluation, we construct UniVul, the first benchmark that provides retrievable knowledge and context-supplementable code across three representative programming languages: Solidity, Java, and C/C++. Using LLM4Vuln and UniVul, we test six representative LLMs (GPT-4.1, Phi-3, Llama-3, o4-mini, DeepSeek-R1, and QwQ-32B) for 147 ground-truth vulnerabilities and 147 non-vulnerable cases in 3,528 controlled scenarios. Our findings reveal the varying impacts of knowledge enhancement, context supplementation, and prompt schemes. We also identify 14 zero-day vulnerabilities in four pilot bug bounty programs, resulting in $3,576 in bounties.
研究の動機と目的
- LLMの脆弱性推論を外部支援(知識取得、文脈、プロンプト設計)から切り離し、内在的能力を理解する。
- 標準化された評価のための統一で取り出せる脆弱性知識ベースと文脈補完可能なコードを提供する。
- 知識、文脈、プロンプトが言語とモデルを横断して脆弱性検出にどの程度可変的に影響を与えるかを定量化する。
- 現実世界での有用性を検証するためのパイロットバグバウンティ研究を通じて実用性を実証する。
提案手法
- 脆弱性検出タスクを R = fL(T, K, C, P, I) という関数として形式化し、モデル能力と外部強化を分離する。
- 制御付き評価と強化のための、知識取得、文脈補完、プロンプト設計、指示遵守の4つの差し替え可能なコンポーネントを導入する。
- Solidity、Java、および C/C++ における取得可能な脆弱性知識と文脈補完可能なコードを含む UniVul ベンチマークを構築する。知識とテストセットを含む。
- ベクトルデータベース(FAISS)と要約を用いて、知識取得と要約ベースの脆弱性情報照合を可能にする。
- 標準化された評価指標(TP、TN、FP、FN、FPt)を生成し、精度/再現率を計算するためのGPT-4.1支援のアノテーションパイプラインを採用する。
- 6つのLLM(GPT-4.1、Phi-3、Llama-3、o4-mini、DeepSeek-R1、QwQ-32B)を3つの言語と3,528のシナリオで評価する。
実験結果
リサーチクエスチョン
- RQ1LLMの脆弱性推論のうち、モデル自体によるものと外部支援によるものはどの程度か。
- RQ2知識強化、文脈補完、プロンプト設計の最適化が脆弱性推論に与える限界的有用性は何か。
- RQ3従来のファンデーションモデルは、外部強化を脆弱性検出に活用する際に深い推論モデルとどう比較されるか?
- RQ4LLM4Vuln は複数言語と複数のモデルタイプにわたる脆弱性推論を信頼性高く評価できるか?
- RQ5ゼロデイ脆弱性を特定する際の本フレームワークの実世界での適用性はどうか?
主な発見
- 知識強化は言語を超えて異種の影響をもたらす;Solidity では実質的な改善が見られるが、Java および C/C++ では従来モデルで限定的または負の効果となる。
- 文脈補完は一貫した改善をもたらさない;従来モデルは文脈の恩恵を受けることがある一方、深い推論モデルはときに文脈なしの方が良い場合がある。
- CoT prompting はモデル全体で精度を向上させ、偽陽性を減少させる。深い推論モデルはCoTプロンプト下でより安定した性能を示す。
- 従来のファンデーションモデルは外部強化の恩恵をより受けやすい一方、深い推論モデルはそのままでより強力な脆弱性推論を示す。
- トップ設定を用いたパイロットバグバウンティ研究で14件の真の脆弱性を特定し、賞金は3,576ドルとなり、実用性を裏付けた。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。