論文の概要: LLM-Enhanced Static Analysis for Precise Identification of Vulnerable OSS Versions
- arxiv url: http://arxiv.org/abs/2408.07321v1
- Date: Wed, 14 Aug 2024 06:43:06 GMT
- ステータス: 処理完了
- システム内更新日: 2024-08-15 14:13:57.290797
- Title: LLM-Enhanced Static Analysis for Precise Identification of Vulnerable OSS Versions
- Title(参考訳): 可変OSSバージョンの高精度同定のためのLCM拡張静的解析
- Authors: Yiran Cheng, Lwin Khin Shar, Ting Zhang, Shouguo Yang, Chaopeng Dong, David Lo, Shichao Lv, Zhiqiang Shi, Limin Sun,
- Abstract要約: オープンソースソフトウェア(OSS)は、そのコラボレーティブな開発モデルとコスト効果の性質から、人気が高まっている。
開発プロジェクトにおける特定のソフトウェアバージョンの採用は、これらのバージョンが脆弱性をもたらす場合にセキュリティリスクをもたらす可能性がある。
脆弱性のあるバージョンを識別する現在の方法は、通常、事前に定義されたルールで静的解析を使用して、脆弱性パッチに関わるコードを分析してトレースする。
本稿では,C/C++で記述されたOSSの脆弱なバージョンを特定するために,Vercationを提案する。
- 参考スコア(独自算出の注目度): 12.706661324384319
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Open-source software (OSS) has experienced a surge in popularity, attributed to its collaborative development model and cost-effective nature. However, the adoption of specific software versions in development projects may introduce security risks when these versions bring along vulnerabilities. Current methods of identifying vulnerable versions typically analyze and trace the code involved in vulnerability patches using static analysis with pre-defined rules. They then use syntactic-level code clone detection to identify the vulnerable versions. These methods are hindered by imprecisions due to (1) the inclusion of vulnerability-irrelevant code in the analysis and (2) the inadequacy of syntactic-level code clone detection. This paper presents Vercation, an approach designed to identify vulnerable versions of OSS written in C/C++. Vercation combines program slicing with a Large Language Model (LLM) to identify vulnerability-relevant code from vulnerability patches. It then backtraces historical commits to gather previous modifications of identified vulnerability-relevant code. We propose semantic-level code clone detection to compare the differences between pre-modification and post-modification code, thereby locating the vulnerability-introducing commit (vic) and enabling to identify the vulnerable versions between the patch commit and the vic. We curate a dataset linking 74 OSS vulnerabilities and 1013 versions to evaluate Vercation. On this dataset, our approach achieves the F1 score of 92.4%, outperforming current state-of-the-art methods. More importantly, Vercation detected 134 incorrect vulnerable OSS versions in NVD reports.
- Abstract(参考訳): オープンソースソフトウェア(OSS)は、そのコラボレーティブな開発モデルとコスト効果の性質から、人気が高まっている。
しかしながら、開発プロジェクトにおける特定のソフトウェアバージョンの採用は、これらのバージョンが脆弱性をもたらす場合にセキュリティリスクをもたらす可能性がある。
脆弱性のあるバージョンを識別する現在の方法は、通常、事前に定義されたルールで静的解析を使用して、脆弱性パッチに関わるコードを分析してトレースする。
次に、セマンティックレベルのコードクローン検出を使用して、脆弱性のあるバージョンを識別する。
これらの手法は,(1) 解析に脆弱性のないコードを含めること,(2) 構文レベルのコードクローン検出が不十分であることによる不正確さによって阻害される。
本稿では,C/C++で記述されたOSSの脆弱なバージョンを特定するために,Vercationを提案する。
VercationはプログラムスライシングとLarge Language Model(LLM)を組み合わせることで、脆弱性パッチから脆弱性関連コードを識別する。
その後、過去のコミットをバックトレースして、特定された脆弱性関連コードの以前の修正を収集する。
本研究では,修正前コードと修正後コードの違いを比較し,脆弱性導入コミット(vic)を特定し,パッチコミットとビック間の脆弱性バージョンを識別する意味レベルコードクローン検出を提案する。
Vercationを評価するために、74のOSS脆弱性と1013バージョンをリンクするデータセットをキュレートする。
このデータセットでは、F1スコア92.4%を達成し、現在の最先端手法よりも優れています。
さらに重要なことに、VercationはNVDレポートで134の誤ったOSSバージョンを検出した。
関連論文リスト
- SecCodePLT: A Unified Platform for Evaluating the Security of Code GenAI [47.11178028457252]
我々はGenAIのリスクをコードする統合的かつ包括的な評価プラットフォームSecCodePLTを開発した。
安全でないコードには、専門家と自動生成を組み合わせたデータ生成のための新しい方法論を導入する。
サイバー攻撃支援のために、我々はモデルに実際の攻撃を引き起こすよう促すサンプルと、我々の環境における動的な指標を構築した。
論文 参考訳(メタデータ) (2024-10-14T21:17:22Z) - M2CVD: Enhancing Vulnerability Semantic through Multi-Model Collaboration for Code Vulnerability Detection [52.4455893010468]
大規模言語モデル(LLM)は、コード理解において強力な能力を持つが、微調整コストとセマンティックアライメントの問題により、プロジェクト固有の最適化が制限される。
CodeBERTのようなコードモデルは微調整が容易であるが、複雑なコード言語から脆弱性のセマンティクスを学ぶことはしばしば困難である。
本稿では,M2CVD(Multi-Model Collaborative Vulnerability Detection)手法を提案する。
論文 参考訳(メタデータ) (2024-06-10T00:05:49Z) - Predicting Likely-Vulnerable Code Changes: Machine Learning-based Vulnerability Protections for Android Open Source Project [0.0]
本稿では,ソースコードの変更に対するセキュリティレビューを選択的にトリガするフレームワークを提案する。
このフレームワークは、コード変更がソースコードリポジトリに送信される前に、コミット前に追加のセキュリティレビューを自動的に要求することができる。
論文 参考訳(メタデータ) (2024-05-26T18:17:46Z) - Patch2QL: Discover Cognate Defects in Open Source Software Supply Chain
With Auto-generated Static Analysis Rules [1.9591497166224197]
本稿では,SASTルールの自動生成によるOSSのコグネート欠陥の検出手法を提案する。
具体的には、プリパッチバージョンとポストパッチバージョンから重要な構文と意味情報を抽出する。
我々はPatch2QLというプロトタイプツールを実装し、それをC/C++の基本OSSに適用した。
論文 参考訳(メタデータ) (2024-01-23T02:23:11Z) - Game Rewards Vulnerabilities: Software Vulnerability Detection with
Zero-Sum Game and Prototype Learning [17.787508315322906]
本稿では,ソフトのvulneRability dEteCtion フレームワークと zerO-sum ゲーム,プロトタイプの LearNing,RECON を提案する。
我々はRECONが6.29%のF1スコアで最先端のベースラインを上回っていることを示す。
論文 参考訳(メタデータ) (2024-01-16T05:50:42Z) - Zero-Shot Detection of Machine-Generated Codes [83.0342513054389]
本研究は,LLMの生成したコードを検出するためのトレーニング不要な手法を提案する。
既存のトレーニングベースまたはゼロショットテキスト検出装置は、コード検出に効果がないことがわかった。
本手法は,リビジョン攻撃に対する堅牢性を示し,Javaコードによく適応する。
論文 参考訳(メタデータ) (2023-10-08T10:08:21Z) - On the Security Blind Spots of Software Composition Analysis [46.1389163921338]
Mavenリポジトリで脆弱性のあるクローンを検出するための新しいアプローチを提案する。
Maven Centralから53万以上の潜在的な脆弱性のあるクローンを検索します。
検出された727個の脆弱なクローンを検出し、それぞれに検証可能な脆弱性証明プロジェクトを合成する。
論文 参考訳(メタデータ) (2023-06-08T20:14:46Z) - Transformer-based Vulnerability Detection in Code at EditTime:
Zero-shot, Few-shot, or Fine-tuning? [5.603751223376071]
脆弱性のあるコードパターンの大規模データセットにディープラーニングを活用する実用的なシステムを提案する。
美術品の脆弱性検出モデルと比較すると,我々の手法は工芸品の状態を10%改善する。
論文 参考訳(メタデータ) (2023-05-23T01:21:55Z) - CodeLMSec Benchmark: Systematically Evaluating and Finding Security
Vulnerabilities in Black-Box Code Language Models [58.27254444280376]
自動コード生成のための大規模言語モデル(LLM)は、いくつかのプログラミングタスクにおいてブレークスルーを達成した。
これらのモデルのトレーニングデータは、通常、インターネット(例えばオープンソースのリポジトリから)から収集され、障害やセキュリティ上の脆弱性を含む可能性がある。
この不衛生なトレーニングデータは、言語モデルにこれらの脆弱性を学習させ、コード生成手順中にそれを伝播させる可能性がある。
論文 参考訳(メタデータ) (2023-02-08T11:54:07Z) - VELVET: a noVel Ensemble Learning approach to automatically locate
VulnErable sTatements [62.93814803258067]
本稿では,ソースコード中の脆弱な文を見つけるための新しいアンサンブル学習手法であるVELVETを提案する。
我々のモデルは、グラフベースとシーケンスベースニューラルネットワークを組み合わせて、プログラムグラフの局所的およびグローバル的コンテキストを捕捉する。
VELVETは、合成データと実世界のデータに対して、それぞれ99.6%と43.6%の精度を達成している。
論文 参考訳(メタデータ) (2021-12-20T22:45:27Z) - Multi-context Attention Fusion Neural Network for Software Vulnerability
Identification [4.05739885420409]
ソースコードのセキュリティ脆弱性の共通カテゴリのいくつかを効率的に検出することを学ぶディープラーニングモデルを提案する。
モデルは、学習可能なパラメータの少ないコードセマンティクスの正確な理解を構築します。
提案したAIは、ベンチマークされたNIST SARDデータセットから特定のCWEに対して98.40%のF1スコアを達成する。
論文 参考訳(メタデータ) (2021-04-19T11:50:36Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。