論文の概要: LeanBin: Harnessing Lifting and Recompilation to Debloat Binaries
- arxiv url: http://arxiv.org/abs/2406.16162v1
- Date: Sun, 23 Jun 2024 16:46:05 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-25 18:44:41.970205
- Title: LeanBin: Harnessing Lifting and Recompilation to Debloat Binaries
- Title(参考訳): LeanBin: バイナリのリフティングと再コンパイルを損なう
- Authors: Igor Wodiany, Antoniu Pop, Mikel Luján,
- Abstract要約: LeanBinは、観測された実行トレースに基づいて、リフトと再コンパイルを利用する。
肥大化したバイナリを生成し、最大1.24$times$で3.65%のガジェットを高速に動作させる。
- 参考スコア(独自算出の注目度): 1.1749374602770741
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: To reduce the source of potential exploits, binary debloating or specialization tools are used to remove unnecessary code from binaries. This paper presents a new binary debloating and specialization tool, LeanBin, that harnesses lifting and recompilation, based on observed execution traces. The dynamically recorded execution traces capture the required subset of instructions and control flow of the application binary for a given set of inputs. This initial control flow is subsequently augmented using heuristic-free static analysis to avoid overrestricting the input space; and the further structuring of the control flow and translation of binary instructions into a subset of C, enables a lightweight generation of the code that can be recompiled, obtaining LLVM IR and a new debloated binary. Unlike most debloating approaches, LeanBin enables both binary debloating of the application and shared libraries, while reusing the existing compiler infrastructure. Additionally, unlike existing binary lifters, it does not rely on potentially unsound heuristics, used by static lifters, nor suffers from long execution times, a limitation of existing dynamic lifters. Instead LeanBin combines both heuristic-free static and dynamic analysis. The run time during lifting and debloating SPEC CPU2006 INT benchmarks is on average 1.78$\times$, normalized to the native execution, and the debloated binary runs with an average overhead of 1.21$\times$. The percentage of gadgets, compared to the original binary, has a geomean between 24.10% and 30.22%, depending on the debloating strategy; the code size can be as low as 53.59%. For the SQLite use-case, LeanBin debloats a binary together with its shared library, and generates a debloated binary that runs up to 1.24$\times$ faster with 3.65% gadgets.
- Abstract(参考訳): 潜在的なエクスプロイトのソースを減らすために、バイナリのデブロや特殊化ツールを使用して、不要なコードをバイナリから削除する。
本稿では、観測された実行トレースに基づいて、リフトと再コンパイルを利用する新しいバイナリデブロと特殊化ツールであるLeanBinを提案する。
動的に記録された実行トレースは、必要な命令のサブセットと、所定の入力セットに対するアプリケーションバイナリの制御フローをキャプチャする。
この初期制御フローは、ヒューリスティックフリーな静的解析を用いて拡張され、入力空間の過剰制限を回避し、制御フローとバイナリ命令のCの部分集合への変換をさらに構造化することにより、再コンパイル可能なコードの軽量な生成を可能にし、LLVM IRと新しいデブロッドバイナリを得る。
ほとんどのデ肥大化アプローチとは異なり、LeanBinは既存のコンパイラインフラストラクチャを再利用しながら、アプリケーションと共有ライブラリのバイナリデ肥大化を可能にする。
さらに、既存のバイナリリフターとは異なり、スタティックリフターが使用する潜在的な非健全なヒューリスティックや、既存の動的リフターの制限である長時間の実行時間にも依存しない。
LeanBinはヒューリスティックな静的解析と動的解析を組み合わせたものだ。
SPEC CPU2006 INTベンチマークの起動時の実行時間は平均1.78$\times$で、ネイティブ実行に正規化され、デブロ化されたバイナリは平均1.21$\times$で実行される。
元々のバイナリに比べてガジェットの割合は、デ肥大戦略によって24.10%から30.22%の間であり、コードサイズは53.59%と低い。
SQLiteのユースケースでは、LeanBinは共有ライブラリと一緒にバイナリをデブロートし、最大1.24$\times$で3.65%のガジェットで走るデブロ化されたバイナリを生成する。
関連論文リスト
- Enhancing Reverse Engineering: Investigating and Benchmarking Large Language Models for Vulnerability Analysis in Decompiled Binaries [2.696054049278301]
新しくコンパイルされたバイナリコード脆弱性データセットであるDeBinVulを紹介します。
DeBinVulを使って最先端のLLMを微調整し、バイナリコード脆弱性の検出においてパフォーマンスが19%、24%、21%向上したことを報告します。
論文 参考訳(メタデータ) (2024-11-07T18:54:31Z) - BitStack: Fine-Grained Size Control for Compressed Large Language Models in Variable Memory Environments [53.71158537264695]
大規模言語モデル(LLM)は、多くのアプリケーションに革命をもたらしたが、ローカルデバイスにおけるメモリ制限により、その展開は依然として困難である。
textbfBitStackは,メモリ使用量とモデル性能のトレードオフを可能にする,新しいトレーニング不要な重み圧縮手法である。
論文 参考訳(メタデータ) (2024-10-31T13:26:11Z) - B-Side: Binary-Level Static System Call Identification [1.6050948947693462]
B-Sideはシステムコールのスーパーセットを識別できる静的バイナリ解析ツールで、x86-64の静的/動的実行実行が実行時に呼び出すことができる。
B-Sideは、プログラム/ライブラリソースへのアクセスを前提とせず、シンボリックな実行を活用することで、適切な精度を示す。
論文 参考訳(メタデータ) (2024-10-23T17:26:52Z) - CP-BCS: Binary Code Summarization Guided by Control Flow Graph and
Pseudo Code [79.87518649544405]
本稿ではCP-BCSと呼ばれる制御フローグラフと擬似コード案内バイナリコード要約フレームワークを提案する。
CP-BCSは双方向の命令レベル制御フローグラフと擬似コードを利用して、専門家の知識を取り入れ、包括的なバイナリ関数の実行動作と論理意味論を学ぶ。
論文 参考訳(メタデータ) (2023-10-24T14:20:39Z) - Improving Dual-Encoder Training through Dynamic Indexes for Negative
Mining [61.09807522366773]
本稿では,ソフトマックスを証明可能な境界で近似し,木を動的に維持するアルゴリズムを提案する。
我々は,2000万以上のターゲットを持つデータセットについて検討し,オラクル・ブルート力負の鉱業に関して,誤差を半分に削減した。
論文 参考訳(メタデータ) (2023-03-27T15:18:32Z) - Extending Source Code Pre-Trained Language Models to Summarise
Decompiled Binaries [4.0484792045035505]
ソースコードの事前訓練済み言語モデルを拡張して、逆コンパイルされたバイナリ関数を要約する。
このようなモデルの性能に及ぼす入力特性とデータ特性の影響について検討する。
BinT5は最先端のBLEU-4スコアを60.83、58.82、44.21で達成し、ソースを要約し、逆コンパイルし、合成的に削除した。
論文 参考訳(メタデータ) (2023-01-04T16:56:33Z) - Boosting Neural Networks to Decompile Optimized Binaries [13.255618541522436]
Decompilation は低レベルプログラム言語 (LPL) を機能的に等価な高レベルプログラム言語 (HPL) に変換することを目的としている。
本稿では,コンパイラ最適化バイナリをターゲットとしたNeurDPという新しい学習手法を提案する。
論文 参考訳(メタデータ) (2023-01-03T06:45:54Z) - Towards Accurate Binary Neural Networks via Modeling Contextual
Dependencies [52.691032025163175]
既存のバイナリニューラルネットワーク(BNN)は主にバイナライズ機能を備えた局所畳み込みで動作する。
本稿では,二元系ニューラルモジュールの設計を新たに提案し,二元系ニューラルモジュールを大きなマージンで導く。
論文 参考訳(メタデータ) (2022-09-03T11:51:04Z) - LoopStack: a Lightweight Tensor Algebra Compiler Stack [61.04098601022665]
LoopStackはテンソル操作のためのドメイン固有のコンパイラスタックである。
最先端の機械学習フレームワークのパフォーマンスにマッチし、頻繁なマシンコードを生成する。
メモリフットプリントは非常に小さく、バイナリサイズは245KBで、30K行未満の効率的なコードによって、モバイルや組み込みデバイスでの使用に適している。
論文 参考訳(メタデータ) (2022-05-02T01:57:58Z) - Semantic-aware Binary Code Representation with BERT [27.908093567605484]
バグ発見、マルウェア分析、コードクローン検出など、幅広いバイナリ分析アプリケーションでは、バイナリコード上でのコンテキスト意味の回復が必要である。
近年,バイナリのコード表現を自動再構築するために,機械学習に基づくバイナリ解析手法が提案されている。
本稿では,バイナリコードのセマンティックなコード表現を生成するためにBERTを利用するDeepSemanticを提案する。
論文 参考訳(メタデータ) (2021-06-10T03:31:29Z) - PolyDL: Polyhedral Optimizations for Creation of High Performance DL
primitives [55.79741270235602]
本稿では,Deep Learningプリミティブの高性能実装を自動的に生成するコンパイラアルゴリズムを提案する。
我々は多面体モデルを用いた新しいデータ再利用分析アルゴリズムを開発した。
また、このようなハイブリッドコンパイラとライブラリ使用の最小限のアプローチが、最先端のパフォーマンスをもたらすことを示す。
論文 参考訳(メタデータ) (2020-06-02T06:44:09Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。