論文の概要: How Effective Are Neural Networks for Fixing Security Vulnerabilities
- arxiv url: http://arxiv.org/abs/2305.18607v2
- Date: Tue, 2 Apr 2024 00:48:11 GMT
- ステータス: 処理完了
- システム内更新日: 2024-04-04 13:41:51.151658
- Title: How Effective Are Neural Networks for Fixing Security Vulnerabilities
- Title(参考訳): ニューラルネットワークはセキュリティ脆弱性の修正にどの程度有効か
- Authors: Yi Wu, Nan Jiang, Hung Viet Pham, Thibaud Lutellier, Jordan Davis, Lin Tan, Petr Babkin, Sameena Shah,
- Abstract要約: 本稿では LLM と DL ベースの APR モデルの Java 脆弱性修復機能について検討し比較した。
結果として、より大きな脆弱性修復トレーニングデータを作成するなど、Javaの自動脆弱性修正を強化するイノベーションが求められている。
- 参考スコア(独自算出の注目度): 25.050519427592253
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Security vulnerability repair is a difficult task that is in dire need of automation. Two groups of techniques have shown promise: (1) large code language models (LLMs) that have been pre-trained on source code for tasks such as code completion, and (2) automated program repair (APR) techniques that use deep learning (DL) models to automatically fix software bugs. This paper is the first to study and compare Java vulnerability repair capabilities of LLMs and DL-based APR models. The contributions include that we (1) apply and evaluate five LLMs (Codex, CodeGen, CodeT5, PLBART and InCoder), four fine-tuned LLMs, and four DL-based APR techniques on two real-world Java vulnerability benchmarks (Vul4J and VJBench), (2) design code transformations to address the training and test data overlapping threat to Codex, (3) create a new Java vulnerability repair benchmark VJBench, and its transformed version VJBench-trans and (4) evaluate LLMs and APR techniques on the transformed vulnerabilities in VJBench-trans. Our findings include that (1) existing LLMs and APR models fix very few Java vulnerabilities. Codex fixes 10.2 (20.4%), the most number of vulnerabilities. (2) Fine-tuning with general APR data improves LLMs' vulnerability-fixing capabilities. (3) Our new VJBench reveals that LLMs and APR models fail to fix many Common Weakness Enumeration (CWE) types, such as CWE-325 Missing cryptographic step and CWE-444 HTTP request smuggling. (4) Codex still fixes 8.3 transformed vulnerabilities, outperforming all the other LLMs and APR models on transformed vulnerabilities. The results call for innovations to enhance automated Java vulnerability repair such as creating larger vulnerability repair training data, tuning LLMs with such data, and applying code simplification transformation to facilitate vulnerability repair.
- Abstract(参考訳): セキュリティ上の脆弱性の修復は、自動化の難しい作業です。
1)コード補完などのタスクのためにソースコードで事前訓練された大規模コード言語モデル(LLM)と、(2)ディープラーニング(DL)モデルを使用してソフトウェアバグを自動的に修正する自動プログラム修復(APR)技術である。
本稿では LLM と DL ベースの APR モデルの Java 脆弱性修復機能について検討し比較した。
コントリビューションには、(1) 5つのLM(Codex, CodeGen, CodeT5, PLBART, InCoder)、4つの微調整LDM、4つのDLベースのAPRテクニックを実世界のJava脆弱性ベンチマーク(Vul4J, VJBench)に適用し、(2) Codexにオーバーラップするトレーニングとテストデータに対処するための設計コード変換、(3)新しいJava脆弱性修復ベンチマークVJBenchの作成、(4)変換されたバージョンVJBench-transと(4)は、VJBench-transの変換された脆弱性に関するLLMとAPR技術の評価を含む。
その結果,(1)既存の LLM モデルと APR モデルは,Java の脆弱性をほとんど解決していないことがわかった。
Codexは最大の脆弱性である10.2 (20.4%)を修正している。
2) 一般的なAPRデータによる微調整により, LLMの脆弱性修正能力が向上する。
(3) 我々の新しいVJBenchは、LLMとAPRモデルが、CWE-325ミス暗号化ステップやCWE-444HTTPリクエストの密輸など、多くの共通弱列挙型(CWE)の修正に失敗したことを明らかにしている。
(4) Codexは8.3のトランスフォーメーションされた脆弱性をまだ修正し、トランスフォーメーションされた脆弱性に関する他のLLMやAPRモデルよりも優れている。
結果として、より大きな脆弱性修復トレーニングデータを作成し、そのようなデータでLLMをチューニングし、脆弱性修復を容易にするためのコードの単純化変換を適用するなど、Javaの自動脆弱性修正を強化するイノベーションが求められている。
関連論文リスト
- Exploring Safety Generalization Challenges of Large Language Models via Code [126.80573601180411]
本稿では,自然言語入力をコード入力に変換するフレームワークであるCodeAttackを紹介する。
我々の研究は、コード入力に対するこれらのモデルの共通の安全性の脆弱性を明らかにした。
CodeAttackと自然言語の分布ギャップが大きくなると、安全性の一般化が弱くなる。
論文 参考訳(メタデータ) (2024-03-12T17:55:38Z) - Multi-LLM Collaboration + Data-Centric Innovation = 2x Better
Vulnerability Repair [14.920535179015006]
VulMasterはTransformerベースのニューラルネットワークモデルで、データ中心のイノベーションを通じて脆弱性の修復を生成する。
VulMasterを,5,800の脆弱性関数を持つ1,754のプロジェクトからなる実世界のC/C++脆弱性修復データセットで評価した。
論文 参考訳(メタデータ) (2024-01-27T16:51:52Z) - LLM-Powered Code Vulnerability Repair with Reinforcement Learning and
Semantic Reward [3.729516018513228]
我々は,大規模な言語モデルであるCodeGen2を利用した多目的コード脆弱性解析システム texttSecRepair を導入する。
そこで本研究では,LLMを用いた脆弱性解析に適した命令ベースデータセットを提案する。
GitHub上の6つのオープンソースIoTオペレーティングシステムにおいて、ゼロデイとNデイの脆弱性を特定します。
論文 参考訳(メタデータ) (2024-01-07T02:46:39Z) - Understanding the Effectiveness of Large Language Models in Detecting
Security Vulnerabilities [13.591113697508117]
LLM(Large Language Models)は、コード関連のタスクにおいて顕著なパフォーマンスを示す。
LLMは、既存の静的解析やディープラーニングに基づく脆弱性検出ツールよりもよく機能することを示す。
LLMは、しばしば、コード内の脆弱なデータフローを特定する、信頼できる説明を提供する。
論文 参考訳(メタデータ) (2023-11-16T13:17:20Z) - A Wolf in Sheep's Clothing: Generalized Nested Jailbreak Prompts can Fool Large Language Models Easily [51.63085197162279]
大きな言語モデル(LLM)は有用で安全な応答を提供するように設計されている。
ジェイルブレイク」と呼ばれる 敵のプロンプトは 保護を回避できる
有効なジェイルブレイクプロンプトを生成するためにLLM自体を活用する自動フレームワークであるReNeLLMを提案する。
論文 参考訳(メタデータ) (2023-11-14T16:02:16Z) - Enhancing Large Language Models for Secure Code Generation: A
Dataset-driven Study on Vulnerability Mitigation [24.668682498171776]
大規模言語モデル(LLM)はコード生成に大きな進歩をもたらし、初心者と経験豊富な開発者の両方に恩恵を与えている。
しかし、GitHubのようなオープンソースのリポジトリから無防備なデータを使用したトレーニングは、セキュリティ上の脆弱性を不注意に伝播するリスクをもたらす。
本稿では,ソフトウェアセキュリティの観点からのLLMの評価と拡張に焦点をあてた総合的研究について述べる。
論文 参考訳(メタデータ) (2023-10-25T00:32:56Z) - Jailbreaking Black Box Large Language Models in Twenty Queries [102.17459476527233]
大規模言語モデル(LLM)は、敵のジェイルブレイクに対して脆弱である。
これらの脆弱性を特定するために,PAIR(Prompt Automatic Iterative Refinement)を提案する。
PAIRは、LCMへのブラックボックスアクセスのみのセマンティックジェイルブレイクを生成する。
論文 参考訳(メタデータ) (2023-10-12T15:38:28Z) - Do-Not-Answer: A Dataset for Evaluating Safeguards in LLMs [59.596335292426105]
本稿では,大規模な言語モデルにおけるセーフガードを評価するための,最初のオープンソースデータセットを収集する。
我々は、自動安全性評価において、GPT-4に匹敵する結果を得るために、BERTライクな分類器をいくつか訓練する。
論文 参考訳(メタデータ) (2023-08-25T14:02:12Z) - Can Large Language Models Find And Fix Vulnerable Software? [0.0]
GPT-4は、その脆弱性の約4倍の脆弱性を同定した。
各脆弱性に対して実行可能な修正を提供し、偽陽性率の低いことを証明した。
GPT-4のコード修正により脆弱性の90%が減少し、コード行数はわずか11%増加した。
論文 参考訳(メタデータ) (2023-08-20T19:33:12Z) - Not what you've signed up for: Compromising Real-World LLM-Integrated
Applications with Indirect Prompt Injection [64.67495502772866]
大規模言語モデル(LLM)は、様々なアプリケーションに統合されつつある。
本稿では、プロンプトインジェクション攻撃を用いて、攻撃者が元の命令をオーバーライドし、制御を採用する方法を示す。
我々は、コンピュータセキュリティの観点から、影響や脆弱性を体系的に調査する包括的な分類法を導出する。
論文 参考訳(メタデータ) (2023-02-23T17:14:38Z) - CodeLMSec Benchmark: Systematically Evaluating and Finding Security
Vulnerabilities in Black-Box Code Language Models [58.27254444280376]
自動コード生成のための大規模言語モデル(LLM)は、いくつかのプログラミングタスクにおいてブレークスルーを達成した。
これらのモデルのトレーニングデータは、通常、インターネット(例えばオープンソースのリポジトリから)から収集され、障害やセキュリティ上の脆弱性を含む可能性がある。
この不衛生なトレーニングデータは、言語モデルにこれらの脆弱性を学習させ、コード生成手順中にそれを伝播させる可能性がある。
論文 参考訳(メタデータ) (2023-02-08T11:54:07Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。