論文の概要: Understanding the Effectiveness of Large Language Models in Detecting Security Vulnerabilities
- arxiv url: http://arxiv.org/abs/2311.16169v2
- Date: Sun, 9 Jun 2024 18:12:48 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-12 04:38:15.242138
- Title: Understanding the Effectiveness of Large Language Models in Detecting Security Vulnerabilities
- Title(参考訳): セキュリティ脆弱性検出における大規模言語モデルの有効性の理解
- Authors: Avishree Khare, Saikat Dutta, Ziyang Li, Alaia Solko-Breslin, Rajeev Alur, Mayur Naik,
- Abstract要約: LLM(Large Language Models)は、コード関連のタスクにおいて顕著なパフォーマンスを示す。
トレーニング済みのLLMがセキュリティ上の脆弱性を検出し、既存のツールの限界に対処できるかどうかを評価する。
- 参考スコア(独自算出の注目度): 12.82645410161464
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Security vulnerabilities in modern software are prevalent and harmful. While automated vulnerability detection tools have made promising progress, their scalability and applicability remain challenging. Recently, Large Language Models (LLMs), such as GPT-4 and CodeLlama, have demonstrated remarkable performance on code-related tasks. However, it is unknown whether such LLMs can do complex reasoning over code. In this work, we explore whether pre-trained LLMs can detect security vulnerabilities and address the limitations of existing tools. We evaluate the effectiveness of pre-trained LLMs, in terms of performance, explainability, and robustness, on a set of five diverse security benchmarks spanning two languages, Java and C/C++, and covering both synthetic and real-world projects. Overall, all LLMs show modest effectiveness in end-to-end reasoning about vulnerabilities, obtaining an average of 60% accuracy across all datasets. However, we observe that LLMs show promising abilities at performing parts of the analysis correctly, such as identifying vulnerability-related specifications (e.g., sources and sinks) and leveraging natural language information to understand code behavior (e.g., to check if code is sanitized). Further, LLMs are relatively much better at detecting simpler vulnerabilities that typically only need local reasoning (e.g., Integer Overflows and NULL pointer dereference). We find that advanced prompting strategies that involve step-by-step analysis significantly improve performance of LLMs on real-world datasets (improving F1 score by up to 0.25 on average). Finally, we share our insights and recommendations for future work on leveraging LLMs for vulnerability detection.
- Abstract(参考訳): 現代のソフトウェアにおけるセキュリティ脆弱性は一般的で有害である。
自動脆弱性検出ツールは有望な進歩を遂げているが、スケーラビリティと適用性は依然として難しい。
近年, GPT-4 や CodeLlama などの大規模言語モデル (LLM) は, コード関連タスクにおいて顕著な性能を示した。
しかし、そのようなLLMがコードに対して複雑な推論を行うことができるかどうかは不明である。
本研究では,事前学習したLLMがセキュリティ上の脆弱性を検出し,既存のツールの限界に対処できるかどうかを検討する。
我々は、JavaとC/C++という2つの言語にまたがる5つのセキュリティベンチマークにおいて、性能、説明可能性、堅牢性の観点から、事前学習されたLLMの有効性を評価し、合成プロジェクトと実世界のプロジェクトの両方をカバーする。
全体として、すべてのLLMは、脆弱性に関するエンドツーエンドの推論において、控えめな効果を示し、すべてのデータセットで平均60%の精度が得られる。
しかし,LLMは脆弱性関連仕様(ソースやシンクなど)の特定や,コード動作の理解に自然言語情報を活用するなど,解析の一部を正しく行う上で有望な能力を示す。
さらに LLM は,ローカル推論(例えば Integer Overflow や NULL ポインタの参照など)のみを必要とする,より単純な脆弱性の検出も比較的優れている。
ステップバイステップ分析を含む高度なプロンプト戦略は,実世界のデータセット上でのLLMの性能を著しく向上させる(F1スコアを平均0.25まで向上させる)。
最後に、LLMを脆弱性検出に活用するための今後の取り組みについて、私たちの洞察とレコメンデーションを共有します。
関連論文リスト
- Exploring Automatic Cryptographic API Misuse Detection in the Era of LLMs [60.32717556756674]
本稿では,暗号誤用の検出において,大規模言語モデルを評価するための体系的評価フレームワークを提案する。
11,940個のLCM生成レポートを詳細に分析したところ、LSMに固有の不安定性は、報告の半数以上が偽陽性になる可能性があることがわかった。
最適化されたアプローチは、従来の手法を超え、確立されたベンチマークでこれまで知られていなかった誤用を明らかにすることで、90%近い顕著な検出率を達成する。
論文 参考訳(メタデータ) (2024-07-23T15:31:26Z) - SORRY-Bench: Systematically Evaluating Large Language Model Safety Refusal Behaviors [64.9938658716425]
安全でないユーザリクエストを認識して拒否する、大規模な言語モデル(LLM)の既存の評価は、3つの制限に直面している。
まず、既存の手法では、安全でないトピックの粗い粒度を使い、いくつかのきめ細かいトピックを過剰に表現している。
第二に、プロンプトの言語的特徴とフォーマッティングは、様々な言語、方言など、多くの評価において暗黙的にのみ考慮されているように、しばしば見過ごされる。
第3に、既存の評価は大きなLCMに頼っているため、コストがかかる可能性がある。
論文 参考訳(メタデータ) (2024-06-20T17:56:07Z) - Security Vulnerability Detection with Multitask Self-Instructed Fine-Tuning of Large Language Models [8.167614500821223]
脆弱性検出のためのMSIVD, マルチタスクによる自己指示型微調整を, チェーン・オブ・シント・プロンプトとLDMによる自己指示にインスパイアした。
実験の結果,MSIVDは高い性能を示し,LineVul(LLMベースの脆弱性検出ベースライン)はBigVulデータセットでは0.92点,PreciseBugsデータセットでは0.48点であった。
論文 参考訳(メタデータ) (2024-06-09T19:18:05Z) - Harnessing Large Language Models for Software Vulnerability Detection: A Comprehensive Benchmarking Study [1.03590082373586]
ソースコードの脆弱性発見を支援するために,大規模言語モデル(LLM)を提案する。
目的は、複数の最先端のLCMをテストし、最も優れたプロンプト戦略を特定することである。
LLMは従来の静的解析ツールよりも多くの問題を特定でき、リコールやF1スコアの点で従来のツールよりも優れています。
論文 参考訳(メタデータ) (2024-05-24T14:59:19Z) - Multitask-based Evaluation of Open-Source LLM on Software Vulnerability [2.7692028382314815]
本稿では,公開データセットを用いて対話型大規模言語モデル(LLM)を定量的に評価するためのパイプラインを提案する。
我々は,4つの共通ソフトウェア脆弱性タスクをカバーするBig-Vulを用いて,LLMの広範な技術的評価を行う。
既存の最先端のアプローチと事前訓練された言語モデル(LM)は、ソフトウェア脆弱性検出において、LLMよりも一般的に優れていることがわかった。
論文 参考訳(メタデータ) (2024-04-02T15:52:05Z) - A Comprehensive Study of the Capabilities of Large Language Models for Vulnerability Detection [9.422811525274675]
大規模言語モデル(LLM)は、コード生成やその他のソフトウェアエンジニアリングタスクに大きな可能性を実証しています。
脆弱性検出は、ソフトウェアシステムのセキュリティ、完全性、信頼性を維持する上で非常に重要である。
最近の研究は、ジェネリックプロンプト技術を用いた脆弱性検出にLLMを適用しているが、このタスクの能力とそれらが犯すエラーの種類は未だ不明である。
論文 参考訳(メタデータ) (2024-03-25T21:47:36Z) - CodeAttack: Revealing Safety Generalization Challenges of Large Language Models via Code Completion [117.178835165855]
本稿では,自然言語入力をコード入力に変換するフレームワークであるCodeAttackを紹介する。
我々の研究は、コード入力に対するこれらのモデルの新たな、普遍的な安全性の脆弱性を明らかにした。
CodeAttackと自然言語の分布ギャップが大きくなると、安全性の一般化が弱くなる。
論文 参考訳(メタデータ) (2024-03-12T17:55:38Z) - PPTC-R benchmark: Towards Evaluating the Robustness of Large Language
Models for PowerPoint Task Completion [96.47420221442397]
文,意味,多言語レベルでユーザ命令を攻撃することにより,逆ユーザ命令を構築する。
我々は、ロバストネス設定を組み込んだベンチマークを用いて、3つのクローズドソースと4つのオープンソースLCMをテストする。
GPT-4は我々のベンチマークで最も高い性能と強靭性を示す。
論文 参考訳(メタデータ) (2024-03-06T15:33:32Z) - How Far Have We Gone in Vulnerability Detection Using Large Language
Models [15.09461331135668]
包括的な脆弱性ベンチマークであるVulBenchを紹介します。
このベンチマークは、幅広いCTF課題と実世界のアプリケーションから高品質なデータを集約する。
いくつかのLSMは、脆弱性検出における従来のディープラーニングアプローチよりも優れていることがわかった。
論文 参考訳(メタデータ) (2023-11-21T08:20:39Z) - Do-Not-Answer: A Dataset for Evaluating Safeguards in LLMs [59.596335292426105]
本稿では,大規模な言語モデルにおけるセーフガードを評価するための,最初のオープンソースデータセットを収集する。
我々は、自動安全性評価において、GPT-4に匹敵する結果を得るために、BERTライクな分類器をいくつか訓練する。
論文 参考訳(メタデータ) (2023-08-25T14:02:12Z) - VELVET: a noVel Ensemble Learning approach to automatically locate
VulnErable sTatements [62.93814803258067]
本稿では,ソースコード中の脆弱な文を見つけるための新しいアンサンブル学習手法であるVELVETを提案する。
我々のモデルは、グラフベースとシーケンスベースニューラルネットワークを組み合わせて、プログラムグラフの局所的およびグローバル的コンテキストを捕捉する。
VELVETは、合成データと実世界のデータに対して、それぞれ99.6%と43.6%の精度を達成している。
論文 参考訳(メタデータ) (2021-12-20T22:45:27Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。