論文の概要: EFACT: an External Function Auto-Completion Tool to Strengthen Static Binary Lifting
- arxiv url: http://arxiv.org/abs/2405.09132v1
- Date: Wed, 15 May 2024 06:57:05 GMT
- ステータス: 処理完了
- システム内更新日: 2024-05-16 14:06:01.320778
- Title: EFACT: an External Function Auto-Completion Tool to Strengthen Static Binary Lifting
- Title(参考訳): EFACT:静的バイナリリフティングを強化するための外部機能自動補完ツール
- Authors: Yilei Zhang, Haoyu Liao, Zekun Wang, Bo Huang, Jianmei Guo,
- Abstract要約: 既存のツールは、静的バイナリリフトにおける外部関数補完(EXFC)の影響を見落としている。
本稿では,静的リフティングのための外部関数自動補完ツールEFACTを提案する。
EFACT は SPEC CPU 2017 においてEXFリカバリにおいて RetDec と McSema を96.4%,97.3% で上回った。
- 参考スコア(独自算出の注目度): 4.276785740191791
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Static binary lifting is essential in binary rewriting frameworks. Existing tools overlook the impact of External Function Completion (EXFC) in static binary lifting. EXFC recovers the prototypes of External Functions (EXFs, functions defined in standard shared libraries) using only the function symbols available. Incorrect EXFC can misinterpret the source binary, or cause memory overflows in static binary translation, which eventually results in program crashes. Notably, existing tools struggle to recover the prototypes of mangled EXFs originating from binaries compiled from C++. Moreover, they require time-consuming manual processing to support new libraries. This paper presents EFACT, an External Function Auto-Completion Tool for static binary lifting. Our EXF recovery algorithm better recovers the prototypes of mangled EXFs, particularly addressing the template specialization mechanism in C++. EFACT is designed as a lightweight plugin to strengthen other static binary rewriting frameworks in EXFC. Our evaluation shows that EFACT outperforms RetDec and McSema in mangled EXF recovery by 96.4% and 97.3% on SPEC CPU 2017. Furthermore, we delve deeper into static binary translation and address several cross-ISA EXFC problems. When integrated with McSema, EFACT correctly translates 36.7% more benchmarks from x86-64 to x86-64 and 93.6% more from x86-64 to AArch64 than McSema alone on EEMBC.
- Abstract(参考訳): 静的バイナリリフトはバイナリ書き換えフレームワークに不可欠である。
既存のツールは、静的バイナリリフトにおける外部関数補完(EXFC)の影響を見落としている。
EXFCは、利用可能な関数シンボルのみを使用して、外部関数(EXF、標準共有ライブラリで定義された関数)のプロトタイプを復元する。
不正なEXFCは、ソースバイナリを誤解釈したり、静的バイナリ変換でメモリオーバーフローを引き起こして、最終的にプログラムがクラッシュする。
特に、既存のツールは、C++からコンパイルされたバイナリから派生したmangled EXFのプロトタイプの復元に苦労している。
さらに、新しいライブラリをサポートするのに時間を要する手作業の処理も必要です。
本稿では,静的リフティングのための外部関数自動補完ツールEFACTを提案する。
我々のEXFリカバリアルゴリズムは、特にC++のテンプレート特殊化機構に対処するため、mangled EXFsのプロトタイプをよりよく回収する。
EFACTはEXFCの他の静的バイナリ書き換えフレームワークを強化するための軽量なプラグインとして設計されている。
EFACT は SPEC CPU 2017 においてEXFリカバリにおいて RetDec と McSema を96.4%,97.3% で上回った。
さらに,静的バイナリ変換を深く掘り下げ,いくつかのクロスISA EXFC問題に対処する。
McSemaと統合すると、EFACTはx86-64からx86-64への36.7%、x86-64からAArch64への93.6%のベンチマークをEEMBC上のMcSema単独よりも正確に翻訳する。
関連論文リスト
- ReF Decompile: Relabeling and Function Call Enhanced Decompile [50.86228893636785]
逆コンパイルの目標は、コンパイルされた低レベルコード(アセンブリコードなど)を高レベルプログラミング言語に変換することである。
このタスクは、脆弱性識別、マルウェア分析、レガシーソフトウェアマイグレーションなど、さまざまなリバースエンジニアリングアプリケーションをサポートする。
論文 参考訳(メタデータ) (2025-02-17T12:38:57Z) - ExecRepoBench: Multi-level Executable Code Completion Evaluation [45.963424627710765]
本稿では,リポジトリレベルのベンチマークであるExecRepoBenchの作成を通じて,ソフトウェア開発におけるコード補完を強化する新しいフレームワークを紹介する。
本稿では,抽象構文木をベースとした多段階文法ベースの補完手法を提案し,様々な論理単位のコードフラグメントをマスキングする。
次に,Repo-Instruct の 7B パラメータでオープンソースの LLM を微調整し,強力なコード補完ベースラインモデル Qwen2.5-Coder-Instruct-C を生成する。
論文 参考訳(メタデータ) (2024-12-16T17:14:35Z) - LeanBin: Harnessing Lifting and Recompilation to Debloat Binaries [1.1749374602770741]
LeanBinは、新しいバイナリデブロと特殊化ツールである。
観測された実行トレースに基づいて、リフトと再コンパイルを利用する。
論文 参考訳(メタデータ) (2024-06-23T16:46:05Z) - 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) - ReGAL: Refactoring Programs to Discover Generalizable Abstractions [59.05769810380928]
Generalizable Abstraction Learning (ReGAL)は、再利用可能な関数のライブラリをコード化して学習する手法である。
ReGALによって発見された共有関数ライブラリは、プログラムが様々な領域で容易に予測できることを示している。
CodeLlama-13Bでは、ReGALはLOGOで11.5%、日付理解で26.1%、TextCraftで8.1%という絶対精度が向上し、3つのドメインのうち2つでGPT-3.5を上回った。
論文 参考訳(メタデータ) (2024-01-29T18:45:30Z) - CP-BCS: Binary Code Summarization Guided by Control Flow Graph and
Pseudo Code [79.87518649544405]
本稿ではCP-BCSと呼ばれる制御フローグラフと擬似コード案内バイナリコード要約フレームワークを提案する。
CP-BCSは双方向の命令レベル制御フローグラフと擬似コードを利用して、専門家の知識を取り入れ、包括的なバイナリ関数の実行動作と論理意味論を学ぶ。
論文 参考訳(メタデータ) (2023-10-24T14:20:39Z) - Guess & Sketch: Language Model Guided Transpilation [59.02147255276078]
学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
論文 参考訳(メタデータ) (2023-09-25T15:42:18Z) - Revisiting Lightweight Compiler Provenance Recovery on ARM Binaries [10.38910167947036]
我々は、ARMバイナリのコンパイラ構成プロパティを効率よく正確に復元する浅層学習モデルにより、以前の作業を拡張した。
我々は、最先端のディープラーニングアプローチと同等の精度を99%以上達成し、トレーニング中に583回、推論時に3,826回達成した。
論文 参考訳(メタデータ) (2023-05-06T05:20:39Z) - XDA: Accurate, Robust Disassembly with Transfer Learning [23.716121748941138]
XDAは、トランスファーラーニングベースの分解フレームワークである。
マシンコードに存在するさまざまなコンテキスト依存を学習する。
IDA Proのような手書きの分解器より最大38倍速い。
論文 参考訳(メタデータ) (2020-10-02T04:14:17Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。