論文の概要: Enhancing Reverse Engineering: Investigating and Benchmarking Large Language Models for Vulnerability Analysis in Decompiled Binaries
- arxiv url: http://arxiv.org/abs/2411.04981v1
- Date: Thu, 07 Nov 2024 18:54:31 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-11-08 19:39:18.352548
- Title: Enhancing Reverse Engineering: Investigating and Benchmarking Large Language Models for Vulnerability Analysis in Decompiled Binaries
- Title(参考訳): 逆エンジニアリングの強化:非コンパイルバイナリにおける脆弱性解析のための大規模言語モデルの調査とベンチマーク
- Authors: Dylan Manuel, Nafis Tanveer Islam, Joseph Khoury, Ana Nunez, Elias Bou-Harb, Peyman Najafirad,
- Abstract要約: 新しくコンパイルされたバイナリコード脆弱性データセットであるDeBinVulを紹介します。
DeBinVulを使って最先端のLLMを微調整し、バイナリコード脆弱性の検出においてパフォーマンスが19%、24%、21%向上したことを報告します。
- 参考スコア(独自算出の注目度): 2.696054049278301
- License:
- Abstract: Security experts reverse engineer (decompile) binary code to identify critical security vulnerabilities. The limited access to source code in vital systems - such as firmware, drivers, and proprietary software used in Critical Infrastructures (CI) - makes this analysis even more crucial on the binary level. Even with available source code, a semantic gap persists after compilation between the source and the binary code executed by the processor. This gap may hinder the detection of vulnerabilities in source code. That being said, current research on Large Language Models (LLMs) overlooks the significance of decompiled binaries in this area by focusing solely on source code. In this work, we are the first to empirically uncover the substantial semantic limitations of state-of-the-art LLMs when it comes to analyzing vulnerabilities in decompiled binaries, largely due to the absence of relevant datasets. To bridge the gap, we introduce DeBinVul, a novel decompiled binary code vulnerability dataset. Our dataset is multi-architecture and multi-optimization, focusing on C/C++ due to their wide usage in CI and association with numerous vulnerabilities. Specifically, we curate 150,872 samples of vulnerable and non-vulnerable decompiled binary code for the task of (i) identifying; (ii) classifying; (iii) describing vulnerabilities; and (iv) recovering function names in the domain of decompiled binaries. Subsequently, we fine-tune state-of-the-art LLMs using DeBinVul and report on a performance increase of 19%, 24%, and 21% in the capabilities of CodeLlama, Llama3, and CodeGen2 respectively, in detecting binary code vulnerabilities. Additionally, using DeBinVul, we report a high performance of 80-90% on the vulnerability classification task. Furthermore, we report improved performance in function name recovery and vulnerability description tasks.
- Abstract(参考訳): セキュリティ専門家は、重大なセキュリティ脆弱性を特定するためにバイナリコードをリバースエンジニア(デコンパイル)する。
ファームウェアやドライバ、CI(Critical Infrastructures)で使用されるプロプライエタリなソフトウェアなど、重要なシステムにおけるソースコードへのアクセス制限により、この分析はバイナリレベルでさらに重要になります。
利用可能なソースコードであっても、ソースとプロセッサによって実行されるバイナリコードの間のコンパイル後にセマンティックギャップが持続する。
このギャップはソースコードの脆弱性の検出を妨げる可能性がある。
とは言っても、LLM(Large Language Models)に関する現在の研究は、ソースコードにのみ焦点をあてることで、この領域における非コンパイルバイナリの重要性を見落としている。
本研究は,主に関連するデータセットがないために,非コンパイルバイナリの脆弱性を分析する上で,最先端のLLMの実質的な意味的限界を実証的に明らかにした最初のものである。
このギャップを埋めるために、新しくコンパイルされたバイナリコード脆弱性データセットであるDeBinVulを紹介します。
当社のデータセットはマルチアーキテクチャとマルチ最適化で,CIで広く使用されていることと,多数の脆弱性との関連性から,C/C++に重点を置いています。
具体的には、タスクのために脆弱性のある非脆弱性のバイナリコードの150,872のサンプルをキュレートする。
(i)識別;
(二)分類
(三)脆弱性、及び
(iv) 逆コンパイルされたバイナリのドメインで関数名を復元する。
その後、DeBinVulを使って最先端のLCMを微調整し、バイナリコード脆弱性を検出する際のCodeLlama、Llama3、CodeGen2の能力の19%、24%、および21%のパフォーマンス向上を報告した。
さらに,DeBinVulを用いて,脆弱性分類タスクの80~90%の性能を報告した。
さらに,機能名回復と脆弱性記述タスクの性能向上を報告した。
関連論文リスト
- RedCode: Risky Code Execution and Generation Benchmark for Code Agents [50.81206098588923]
RedCodeはリスクの高いコード実行と生成のためのベンチマークである。
RedCode-Execは、危険なコード実行につながる可能性のある、挑戦的なプロンプトを提供する。
RedCode-Genは160のプロンプトに関数シグネチャとドキュメントを入力として提供し、コードエージェントが命令に従うかどうかを評価する。
論文 参考訳(メタデータ) (2024-11-12T13:30:06Z) - HexaCoder: Secure Code Generation via Oracle-Guided Synthetic Training Data [60.75578581719921]
大規模言語モデル(LLM)は、自動コード生成に大きな可能性を示している。
最近の研究は、多くのLLM生成コードが深刻なセキュリティ脆弱性を含んでいることを強調している。
我々は,LLMがセキュアなコードを生成する能力を高めるための新しいアプローチであるHexaCoderを紹介する。
論文 参考訳(メタデータ) (2024-09-10T12:01:43Z) - 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) - How Far Have We Gone in Binary Code Understanding Using Large Language Models [51.527805834378974]
バイナリコード理解におけるLarge Language Models(LLM)の有効性を評価するためのベンチマークを提案する。
評価の結果、既存のLLMはバイナリコードをある程度理解でき、それによってバイナリコード解析の効率が向上することが明らかとなった。
論文 参考訳(メタデータ) (2024-04-15T14:44:08Z) - FoC: Figure out the Cryptographic Functions in Stripped Binaries with LLMs [54.27040631527217]
削除されたバイナリの暗号関数を抽出するFoCと呼ばれる新しいフレームワークを提案する。
まず、自然言語における暗号関数のセマンティクスを要約するために、バイナリ大言語モデル(FoC-BinLLM)を構築した。
次に、FoC-BinLLM上にバイナリコード類似モデル(FoC-Sim)を構築し、変更に敏感な表現を作成し、データベース内の未知の暗号関数の類似実装を検索する。
論文 参考訳(メタデータ) (2024-03-27T09:45:33Z) - BinaryAI: Binary Software Composition Analysis via Intelligent Binary Source Code Matching [8.655595404611821]
BinaryAIは2フェーズのバイナリソースコードマッチングを備えた新しいバイナリ・ソースSCA技術で、構文的および意味的両方のコード特徴をキャプチャする。
実験の結果、バイナリソースコードマッチングと下流SCAタスクにおいて、BinaryAIの優れた性能を示しました。
論文 参考訳(メタデータ) (2024-01-20T07:57:57Z) - The Vulnerability Is in the Details: Locating Fine-grained Information of Vulnerable Code Identified by Graph-based Detectors [33.395068754566935]
VULEXPLAINERは、粗いレベルの脆弱なコードスニペットから脆弱性クリティカルなコード行を見つけるためのツールである。
C/C++の一般的な8つの脆弱性に対して、90%の精度で脆弱性をトリガするコードステートメントにフラグを付けることができる。
論文 参考訳(メタデータ) (2024-01-05T10:15:04Z) - Feature Engineering-Based Detection of Buffer Overflow Vulnerability in
Source Code Using Neural Networks [2.9266864570485827]
ソースコードから抽出された特徴を学習するニューラルネットワークモデルに基づく脆弱性検出方法。
我々は,GloVeやfastTextといったアートワード埋め込みアルゴリズムの状態を用いて,セマンティックおよび構文情報を維持する。
従来のニューラルネットワークに関わる問題を克服できるニューラルネットワークモデルを提案してきた。
論文 参考訳(メタデータ) (2023-06-01T01:44:49Z) - A Hierarchical Deep Neural Network for Detecting Lines of Codes with
Vulnerabilities [6.09170287691728]
ソースコードの意図しない欠陥によって引き起こされるソフトウェア脆弱性は、サイバー攻撃の根本原因である。
本稿では,自然言語処理で使用されている手法に基づいて,LLVM IR表現から脆弱性を検出するためのディープラーニング手法を提案する。
論文 参考訳(メタデータ) (2022-11-15T21:21:27Z) - 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)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。