論文の概要: A Repository-Level Dataset For Detecting, Classifying and Repairing
Software Vulnerabilities
- arxiv url: http://arxiv.org/abs/2401.13169v1
- Date: Wed, 24 Jan 2024 01:27:48 GMT
- ステータス: 処理完了
- システム内更新日: 2024-01-25 15:56:41.673272
- Title: A Repository-Level Dataset For Detecting, Classifying and Repairing
Software Vulnerabilities
- Title(参考訳): ソフトウェア脆弱性の検出・分類・修復のためのレポジトリレベルデータセット
- Authors: Xinchen Wang, Ruida Hu, Cuiyun Gao, Xin-Cheng Wen, Yujia Chen and Qing
Liao
- Abstract要約: 我々は、自動データ収集フレームワークを提案し、textbfReposVulという最初のリポジトリレベルの高品質な脆弱性データセットを構築した。
提案するフレームワークは,主に3つのモジュールを含む。(1)脆弱性解消モジュールは,脆弱性修正に関連するコード変更を,大規模言語モデル(LLM)と静的解析ツールを併用した,絡み合ったパッチから識別することを目的としたもので,(2)脆弱性の相互呼び出し関係の取得を目的とした多言語依存性抽出モジュールで,リポジトリレベル,ファイルを含む各脆弱性パッチに対して,複数の粒度情報を構築する。
- 参考スコア(独自算出の注目度): 13.90550557801464
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Open-Source Software (OSS) vulnerabilities bring great challenges to the
software security and pose potential risks to our society. Enormous efforts
have been devoted into automated vulnerability detection, among which deep
learning (DL)-based approaches have proven to be the most effective. However,
the current labeled data present the following limitations: (1) \textbf{Tangled
Patches}: Developers may submit code changes unrelated to vulnerability fixes
within patches, leading to tangled patches. (2) \textbf{Lacking
Inter-procedural Vulnerabilities}: The existing vulnerability datasets
typically contain function-level and file-level vulnerabilities, ignoring the
relations between functions, thus rendering the approaches unable to detect the
inter-procedural vulnerabilities. (3) \textbf{Outdated Patches}: The existing
datasets usually contain outdated patches, which may bias the model during
training.
To address the above limitations, in this paper, we propose an automated data
collection framework and construct the first repository-level high-quality
vulnerability dataset named \textbf{ReposVul}. The proposed framework mainly
contains three modules: (1) A vulnerability untangling module, aiming at
distinguishing vulnerability-fixing related code changes from tangled patches,
in which the Large Language Models (LLMs) and static analysis tools are jointly
employed. (2) A multi-granularity dependency extraction module, aiming at
capturing the inter-procedural call relationships of vulnerabilities, in which
we construct multiple-granularity information for each vulnerability patch,
including repository-level, file-level, function-level, and line-level. (3) A
trace-based filtering module, aiming at filtering the outdated patches, which
leverages the file path trace-based filter and commit time trace-based filter
to construct an up-to-date dataset.
- Abstract(参考訳): オープンソースソフトウェア(oss)の脆弱性は、ソフトウェアセキュリティに大きな課題をもたらし、社会に潜在的なリスクをもたらします。
ディープラーニング(DL)ベースのアプローチが最も効果的であることが証明された。
しかし、現在のラベル付きデータは以下の制限を示している: (1) \textbf{tangled patch}: 開発者はパッチ内の脆弱性修正とは無関係なコード変更を提出でき、絡み合ったパッチにつながる。
(2) \textbf{lacking inter-procedural vulnerabilities}: 既存の脆弱性データセットには一般的に関数レベルの脆弱性とファイルレベルの脆弱性が含まれ、関数間の関係を無視する。
(3) \textbf{outdated patch}: 既存のデータセットには一般的に時代遅れのパッチが含まれており、トレーニング中にモデルをバイアスする可能性がある。
上記の制約に対処するため,本稿では,自動データ収集フレームワークを提案し,最初のリポジトリレベルの高品質な脆弱性データセットである \textbf{ReposVul} を構築した。
提案するフレームワークは,主に3つのモジュールを含む。(1)脆弱性修正関連コード変更と,大規模言語モデル(LLM)と静的解析ツールを併用した,絡み合ったパッチの区別を目的とした脆弱性回避モジュール。
2)リポジトリレベル,ファイルレベル,関数レベル,行レベルなど,脆弱性パッチごとに複数の粒度情報を構築する脆弱性のプロセス間コール関係を捉えることを目的とした,マルチ粒度依存性抽出モジュール。
3) 古いパッチのフィルタリングを目的としたトレースベースのフィルタリングモジュールは,ファイルパストレースベースのフィルタとコミットタイムトレースベースのフィルタを活用して,最新のデータセットを構築する。
関連論文リスト
- Learning Graph-based Patch Representations for Identifying and Assessing Silent Vulnerability Fixes [5.983725940750908]
ソフトウェアプロジェクトは多くのサードパーティのライブラリに依存しているため、リスクの高い脆弱性は依存関係チェーンを通じて下流のプロジェクトへと伝播する可能性がある。
無力な脆弱性修正は、ダウンストリームソフトウェアが緊急のセキュリティ問題にタイムリーに気付いておらず、ソフトウェアにセキュリティリスクを生じさせる。
本稿ではGRAphベースのパッチrEpresentationであるGRAPEを提案する。
論文 参考訳(メタデータ) (2024-09-13T03:23:11Z) - LLM-Enhanced Static Analysis for Precise Identification of Vulnerable OSS Versions [12.706661324384319]
オープンソースソフトウェア(OSS)は、そのコラボレーティブな開発モデルとコスト効果の性質から、人気が高まっている。
開発プロジェクトにおける特定のソフトウェアバージョンの採用は、これらのバージョンが脆弱性をもたらす場合にセキュリティリスクをもたらす可能性がある。
脆弱性のあるバージョンを識別する現在の方法は、通常、事前に定義されたルールで静的解析を使用して、脆弱性パッチに関わるコードを分析してトレースする。
本稿では,C/C++で記述されたOSSの脆弱なバージョンを特定するために,Vercationを提案する。
論文 参考訳(メタデータ) (2024-08-14T06:43:06Z) - PriRoAgg: Achieving Robust Model Aggregation with Minimum Privacy Leakage for Federated Learning [49.916365792036636]
フェデレートラーニング(FL)は、大規模分散ユーザデータを活用する可能性から、最近大きな勢いを増している。
送信されたモデル更新は、センシティブなユーザ情報をリークする可能性があり、ローカルなトレーニングプロセスの集中的な制御の欠如は、モデル更新に対する悪意のある操作の影響を受けやすいグローバルモデルを残します。
我々は、Lagrange符号化計算と分散ゼロ知識証明を利用した汎用フレームワークPriRoAggを開発し、集約されたプライバシを満たすとともに、幅広いロバストな集約アルゴリズムを実行する。
論文 参考訳(メタデータ) (2024-07-12T03:18:08Z) - VulEval: Towards Repository-Level Evaluation of Software Vulnerability Detection [14.312197590230994]
textbfVulEvalという名前のリポジトリレベルの評価システムは、プロセス間およびプロセス内脆弱性の検出性能を同時に評価することを目的としている。
VulEvalは大規模データセットで構成され、合計で4,196のCVEエントリ、232,239の関数、および対応する4,699のリポジトリレベルのソースコードがC/C++プログラミング言語に含まれる。
論文 参考訳(メタデータ) (2024-04-24T02:16:11Z) - Just-in-Time Detection of Silent Security Patches [7.840762542485285]
セキュリティパッチは黙秘される可能性がある。つまり、CVEのような包括的なアドバイザリを常に備えているわけではない。
この透明性の欠如により、ユーザーは利用可能なセキュリティアップデートを気にせず、攻撃者が未パッチの脆弱性を悪用する十分な機会を提供する。
本稿では,大規模言語モデル(LLM)を活用して,生成されたコード変更説明を用いてパッチ情報を拡張することを提案する。
論文 参考訳(メタデータ) (2023-12-02T22:53:26Z) - REEF: A Framework for Collecting Real-World Vulnerabilities and Fixes [40.401211102969356]
本稿では,REal-world vulnErabilities and Fixesをオープンソースリポジトリから収集するための自動収集フレームワークREEFを提案する。
脆弱性とその修正を収集する多言語クローラを開発し、高品質な脆弱性修正ペアをフィルタするためのメトリクスを設計する。
大規模な実験を通じて,我々の手法が高品質な脆弱性修正ペアを収集し,強力な説明を得られることを示す。
論文 参考訳(メタデータ) (2023-09-15T02:50:08Z) - DeepfakeBench: A Comprehensive Benchmark of Deepfake Detection [55.70982767084996]
ディープフェイク検出の分野で見落とされがちな課題は、標準化され、統一され、包括的なベンチマークがないことである。
DeepfakeBenchと呼ばれる,3つの重要なコントリビューションを提供するディープフェイク検出のための,最初の包括的なベンチマークを提示する。
DeepfakeBenchには15の最先端検出方法、9CLデータセット、一連のDeepfake検出評価プロトコルと分析ツール、包括的な評価ツールが含まれている。
論文 参考訳(メタデータ) (2023-07-04T01:34:41Z) - CodeLMSec Benchmark: Systematically Evaluating and Finding Security
Vulnerabilities in Black-Box Code Language Models [58.27254444280376]
自動コード生成のための大規模言語モデル(LLM)は、いくつかのプログラミングタスクにおいてブレークスルーを達成した。
これらのモデルのトレーニングデータは、通常、インターネット(例えばオープンソースのリポジトリから)から収集され、障害やセキュリティ上の脆弱性を含む可能性がある。
この不衛生なトレーニングデータは、言語モデルにこれらの脆弱性を学習させ、コード生成手順中にそれを伝播させる可能性がある。
論文 参考訳(メタデータ) (2023-02-08T11:54:07Z) - Reference Twice: A Simple and Unified Baseline for Few-Shot Instance Segmentation [103.90033029330527]
FSIS(Few-Shot Instance)は、サポート例が限定された新しいクラスの検出とセグメンテーションを必要とする。
我々は、FSISのサポートとクエリ機能の関係を利用するための統合フレームワーク、Reference Twice(RefT)を導入する。
論文 参考訳(メタデータ) (2023-01-03T15:33:48Z) - Defensive Patches for Robust Recognition in the Physical World [111.46724655123813]
データエンドディフェンスは、モデルを変更する代わりに入力データの操作によって堅牢性を改善する。
従来のデータエンドディフェンスは、様々なノイズに対する低一般化と、複数のモデル間での弱い転送可能性を示している。
モデルがこれらの機能をよりよく活用することを支援することにより、これらの問題に対処するための防御パッチ生成フレームワークを提案する。
論文 参考訳(メタデータ) (2022-04-13T07:34:51Z) - VELVET: a noVel Ensemble Learning approach to automatically locate
VulnErable sTatements [62.93814803258067]
本稿では,ソースコード中の脆弱な文を見つけるための新しいアンサンブル学習手法であるVELVETを提案する。
我々のモデルは、グラフベースとシーケンスベースニューラルネットワークを組み合わせて、プログラムグラフの局所的およびグローバル的コンテキストを捕捉する。
VELVETは、合成データと実世界のデータに対して、それぞれ99.6%と43.6%の精度を達成している。
論文 参考訳(メタデータ) (2021-12-20T22:45:27Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。