論文の概要: To Err is Machine: Vulnerability Detection Challenges LLM Reasoning
- arxiv url: http://arxiv.org/abs/2403.17218v2
- Date: Tue, 07 Jan 2025 21:57:38 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-01-09 14:54:28.746641
- Title: To Err is Machine: Vulnerability Detection Challenges LLM Reasoning
- Title(参考訳): To Err is Machine: LLM推論の脆弱性検出
- Authors: Benjamin Steenhoek, Md Mahbubur Rahman, Monoshi Kumar Roy, Mirza Sanjida Alam, Hengbo Tong, Swarna Das, Earl T. Barr, Wei Le,
- Abstract要約: 脆弱性検出という,困難なコード推論タスクを提示する。
最新のSOTA(State-of-the-art)モデルでは,脆弱性検出評価では54.5%のバランスド精度しか報告されていない。
脆弱性検出を克服するためには、新しいモデル、新しいトレーニング方法、あるいはもっと実行固有の事前トレーニングデータが必要になるかもしれない。
- 参考スコア(独自算出の注目度): 8.602355712876815
- License:
- Abstract: In this paper, we present a challenging code reasoning task: vulnerability detection. Large Language Models (LLMs) have shown promising results in natural-language and math reasoning, but state-of-the-art (SOTA) models reported only 54.5% Balanced Accuracy in our vulnerability detection evaluation, even those models pre-trained on large amounts of source code. Our error analysis on LLM responses shows that the models struggle to reason about the code semantics relevant to identifying vulnerabilities, especially subtle semantic differences caused by small textual changes. We explored prominent models and training settings to understand their effects on vulnerability detection performance -- including better prompts, larger models, more pre-training data, and fine-tuning -- but none led to significant improvements. This raises the question of whether simply scaling training data and model size will allow us to "solve" complex code reasoning tasks like vulnerability detection, or if a fundamental shift in modeling and training techniques is required. We also explored adding domain knowledge to prompts; although it helped certain models understand some code semantics, vulnerability detection requires multi-step reasoning, and these models still failed in steps, such as reasoning about variable relations. Our results suggest that new models, new training methods, or more execution-specific pretraining data may be needed to conquer vulnerability detection. We speculate that auto-regressive pre-training on source code may not effectively extract code semantics, especially on the current pretraining mixtures, in which execution data is scarce. Success on vulnerability detection as a code reasoning task can benefit many areas of software engineering such as debugging, test input generation, and program repair. Our code and data are available at https://doi.org/10.6084/m9.figshare.27368025.
- Abstract(参考訳): 本稿では,脆弱性検出という困難なコード推論課題について述べる。
大規模言語モデル(LLM)は、自然言語と数学の推論において有望な結果を示しているが、SOTA(State-of-the-art)モデルは、脆弱性検出評価において54.5%のバランスの取れた精度しか報告していない。
LLM応答のエラー解析は、脆弱性の特定、特に小さなテキストによる変化による微妙なセマンティックな違いに関連するコードのセマンティクスについて、モデルが推論に苦慮していることを示している。
優れたプロンプト、より大きなモデル、事前トレーニングデータ、微調整などを含む、脆弱性検出のパフォーマンスへの影響を理解するために、著名なモデルとトレーニング設定を調査しました。
これは、単にトレーニングデータとモデルサイズをスケールするだけで、脆弱性検出のような複雑なコード推論タスクを"解決"できるのか、モデリングとトレーニングテクニックの根本的なシフトが必要なのか、という疑問を提起する。
特定のモデルはいくつかのコードセマンティクスを理解するのに役立ちましたが、脆弱性検出には複数のステップの推論が必要です。
この結果から,新たなモデル,新たなトレーニング手法,あるいはより実行固有の事前学習データが必要である可能性が示唆された。
ソースコードにおける自動回帰事前学習は、特に実行データが不足している現在の事前学習混合物において、コード意味を効果的に抽出することができないと推測する。
コード推論タスクとしての脆弱性検出の成功は、デバッグ、テストインプット生成、プログラムの修復など、ソフトウェア工学の多くの分野に恩恵をもたらす。
私たちのコードとデータはhttps://doi.org/10.6084/m9.figshare.27368025で公開されています。
関連論文リスト
- Exploring Automatic Cryptographic API Misuse Detection in the Era of LLMs [60.32717556756674]
本稿では,暗号誤用の検出において,大規模言語モデルを評価するための体系的評価フレームワークを提案する。
11,940個のLCM生成レポートを詳細に分析したところ、LSMに固有の不安定性は、報告の半数以上が偽陽性になる可能性があることがわかった。
最適化されたアプローチは、従来の手法を超え、確立されたベンチマークでこれまで知られていなかった誤用を明らかにすることで、90%近い顕著な検出率を達成する。
論文 参考訳(メタデータ) (2024-07-23T15:31:26Z) - AutoDetect: Towards a Unified Framework for Automated Weakness Detection in Large Language Models [95.09157454599605]
大規模言語モデル(LLM)はますます強力になってきていますが、それでも顕著ですが微妙な弱点があります。
従来のベンチマークアプローチでは、特定のモデルの欠陥を徹底的に特定することはできない。
さまざまなタスクにまたがるLLMの弱点を自動的に露呈する統合フレームワークであるAutoDetectを導入する。
論文 参考訳(メタデータ) (2024-06-24T15:16:45Z) - SORRY-Bench: Systematically Evaluating Large Language Model Safety Refusal Behaviors [64.9938658716425]
安全でないユーザリクエストを認識して拒否する、大規模な言語モデル(LLM)の既存の評価は、3つの制限に直面している。
まず、既存の手法では、安全でないトピックの粗い粒度を使い、いくつかのきめ細かいトピックを過剰に表現している。
第二に、プロンプトの言語的特徴とフォーマッティングは、様々な言語、方言など、多くの評価において暗黙的にのみ考慮されているように、しばしば見過ごされる。
第3に、既存の評価は大きなLCMに頼っているため、コストがかかる可能性がある。
論文 参考訳(メタデータ) (2024-06-20T17:56:07Z) - Towards Effectively Detecting and Explaining Vulnerabilities Using Large Language Models [17.96542494363619]
大規模言語モデル(LLM)は、複雑なコンテキストを解釈する際、顕著な能力を示した。
本稿では,脆弱性の検出と説明の両面において,LSMの能力について検討する。
脆弱性説明のための特別な微調整の下で、LLMVulExpはコードの脆弱性の種類を検出するだけでなく、コードコンテキストを分析して原因、場所、修正提案を生成する。
論文 参考訳(メタデータ) (2024-06-14T04:01:25Z) - VulDetectBench: Evaluating the Deep Capability of Vulnerability Detection with Large Language Models [12.465060623389151]
本研究では,Large Language Models(LLM)の脆弱性検出機能を評価するために,新しいベンチマークであるVulDetectBenchを紹介する。
このベンチマークは、LLMの脆弱性を特定し、分類し、発見する能力を、難易度を高める5つのタスクを通じて総合的に評価している。
本ベンチマークでは,脆弱性検出の特定のタスクにおいて,様々なLLMの能力評価を効果的に行うとともに,コードセキュリティの重要領域における今後の研究と改善の基盤となる。
論文 参考訳(メタデータ) (2024-06-11T13:42:57Z) - Harnessing Large Language Models for Software Vulnerability Detection: A Comprehensive Benchmarking Study [1.03590082373586]
ソースコードの脆弱性発見を支援するために,大規模言語モデル(LLM)を提案する。
目的は、複数の最先端のLCMをテストし、最も優れたプロンプト戦略を特定することである。
LLMは従来の静的解析ツールよりも多くの問題を特定でき、リコールやF1スコアの点で従来のツールよりも優れています。
論文 参考訳(メタデータ) (2024-05-24T14:59:19Z) - LLMs Cannot Reliably Identify and Reason About Security Vulnerabilities (Yet?): A Comprehensive Evaluation, Framework, and Benchmarks [17.522223535347905]
大規模な言語モデル(LLM)は、自動脆弱性修正に使用するために提案されているが、ベンチマークでは、セキュリティ関連のバグが一貫して欠如していることが示されている。
SecLLMHolmesは,LLMがセキュリティ関連のバグを確実に識別し,原因を判断できるかどうか,これまでで最も詳細な調査を行う,完全に自動化された評価フレームワークである。
論文 参考訳(メタデータ) (2023-12-19T20:19:43Z) - Understanding the Effectiveness of Large Language Models in Detecting Security Vulnerabilities [12.82645410161464]
5つの異なるセキュリティデータセットから5,000のコードサンプルに対して、16の事前学習された大規模言語モデルの有効性を評価する。
全体として、LSMは脆弱性の検出において最も穏やかな効果を示し、データセットの平均精度は62.8%、F1スコアは0.71である。
ステップバイステップ分析を含む高度なプロンプト戦略は、F1スコア(平均0.18まで)で実世界のデータセット上でのLLMのパフォーマンスを著しく向上させることがわかった。
論文 参考訳(メタデータ) (2023-11-16T13:17:20Z) - Are Large Language Models Really Robust to Word-Level Perturbations? [68.60618778027694]
本稿では,事前学習した報酬モデルを診断ツールとして活用する,新たな合理的評価手法を提案する。
より長い会話は、質問を理解する能力の観点から言語モデルの包括的把握を示す。
この結果から,LLMは日常言語でよく使われる単語レベルの摂動に対する脆弱性をしばしば示している。
論文 参考訳(メタデータ) (2023-09-20T09:23:46Z) - Red Teaming Language Model Detectors with Language Models [114.36392560711022]
大規模言語モデル(LLM)は、悪意のあるユーザによって悪用された場合、重大な安全性と倫理的リスクをもたらす。
近年,LLM生成テキストを検出し,LLMを保護するアルゴリズムが提案されている。
1) LLMの出力中の特定の単語を, 文脈が与えられたシノニムに置き換えること, 2) 生成者の書き方を変更するための指示プロンプトを自動で検索すること,である。
論文 参考訳(メタデータ) (2023-05-31T10:08:37Z) - CodeLMSec Benchmark: Systematically Evaluating and Finding Security
Vulnerabilities in Black-Box Code Language Models [58.27254444280376]
自動コード生成のための大規模言語モデル(LLM)は、いくつかのプログラミングタスクにおいてブレークスルーを達成した。
これらのモデルのトレーニングデータは、通常、インターネット(例えばオープンソースのリポジトリから)から収集され、障害やセキュリティ上の脆弱性を含む可能性がある。
この不衛生なトレーニングデータは、言語モデルにこれらの脆弱性を学習させ、コード生成手順中にそれを伝播させる可能性がある。
論文 参考訳(メタデータ) (2023-02-08T11:54:07Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。