論文の概要: WaDec: Decompile WebAssembly Using Large Language Model
- arxiv url: http://arxiv.org/abs/2406.11346v1
- Date: Mon, 17 Jun 2024 09:08:30 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-18 15:31:23.254685
- Title: WaDec: Decompile WebAssembly Using Large Language Model
- Title(参考訳): WaDec: 大規模言語モデルを使用したWebAssemblyの非コンパイル
- Authors: Xinyu She, Yanjie Zhao, Haoyu Wang,
- Abstract要約: WebAssembly(略してWasm)がWeb開発の基礎として登場した。
その利点にもかかわらず、Wasmのバイナリの性質は開発者と研究者に重大な課題をもたらしている。
We introduced a novel approach, WaDec, which is a first use of a fine-tuned LLM to interpret and decompile Wasm binary code。
- 参考スコア(独自算出の注目度): 5.667013605202579
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: WebAssembly (abbreviated Wasm) has emerged as a cornerstone of web development, offering a compact binary format that allows high-performance applications to run at near-native speeds in web browsers. Despite its advantages, Wasm's binary nature presents significant challenges for developers and researchers, particularly regarding readability when debugging or analyzing web applications. Therefore, effective decompilation becomes crucial. Unfortunately, traditional decompilers often struggle with producing readable outputs. While some large language model (LLM)-based decompilers have shown good compatibility with general binary files, they still face specific challenges when dealing with Wasm. In this paper, we introduce a novel approach, WaDec, which is the first use of a fine-tuned LLM to interpret and decompile Wasm binary code into a higher-level, more comprehensible source code representation. The LLM was meticulously fine-tuned using a specialized dataset of wat-c code snippets, employing self-supervised learning techniques. This enables WaDec to effectively decompile not only complete wat functions but also finer-grained wat code snippets. Our experiments demonstrate that WaDec markedly outperforms current state-of-the-art tools, offering substantial improvements across several metrics. It achieves a code inflation rate of only 3.34%, a dramatic 97% reduction compared to the state-of-the-art's 116.94%. Unlike baselines' output that cannot be directly compiled or executed, WaDec maintains a recompilability rate of 52.11%, a re-execution rate of 43.55%, and an output consistency of 27.15%. Additionally, it significantly exceeds state-of-the-art performance in AST edit distance by 185%, cyclomatic complexity by 8%, and cosine similarity by 41%, achieving an average code similarity above 50%.
- Abstract(参考訳): WebAssembly(略してWasm)はWeb開発の基礎として現れ、Webブラウザでほぼネイティブに近い速度で実行可能な、コンパクトなバイナリフォーマットを提供する。
その利点にもかかわらず、Wasmのバイナリの性質は、特にWebアプリケーションのデバッグや解析における可読性に関して、開発者や研究者にとって大きな課題をもたらしている。
そのため、効率的な逆コンパイルが重要となる。
残念ながら、従来の逆コンパイラは可読性のある出力を生成するのに苦労することが多い。
いくつかの大きな言語モデル(LLM)ベースのデコンパイラは、一般的なバイナリファイルとの互換性が良いことを示しているが、Wasmを扱う際には、特別な問題に直面している。
本稿では、Wasmバイナリコードをより高レベルでより理解しやすいソースコード表現に解釈・デコンパイルするための微調整LDMの最初の使用である、新しいアプローチ、WaDecを紹介する。
LLMは、Wat-Cコードスニペットの特別なデータセットを使用して、綿密に微調整され、自己教師付き学習技術を用いている。
これにより、WaDecは完全なWat関数だけでなく、よりきめ細かいWatコードスニペットを効果的に分解できる。
我々の実験は、WaDecが現在の最先端ツールを著しく上回り、いくつかのメトリクスで大幅に改善されていることを実証した。
コードインフレーション率はわずか3.34%であり、最先端の116.94%と比べて97%も劇的に減少している。
直接コンパイルまたは実行できないベースラインの出力とは異なり、WaDecは52.11%、再実行率43.55%、出力一貫性27.15%を維持している。
さらに、AST編集距離の最先端性能を185%、サイクロマティック複雑性を8%、コサイン類似度を41%、平均コード類似度を50%以上達成している。
関連論文リスト
- Is This the Same Code? A Comprehensive Study of Decompilation Techniques for WebAssembly Binaries [4.66875056781341]
本稿では,C-based decompilerの正確性,可読性,構造的類似性など,様々な側面から実験的に評価する新しいフレームワークを提案する。
これによりWASMとネイティブバイナリに依存するソフトウェアシステムのセキュリティと信頼性が向上する。
論文 参考訳(メタデータ) (2024-11-04T17:08:03Z) - Understanding Code Understandability Improvements in Code Reviews [79.16476505761582]
GitHub上のJavaオープンソースプロジェクトからの2,401のコードレビューコメントを分析した。
改善提案の83.9%が承認され、統合され、1%未満が後に復活した。
論文 参考訳(メタデータ) (2024-10-29T12:21:23Z) - Demystifying and Assessing Code Understandability in Java Decompilation [3.2671789531342457]
機械レベルのコードを可読性のあるソースコードに変換するプロセスである逆コンパイルは、リバースエンジニアリングにおいて重要な役割を果たす。
本稿では,Javaの非コンパイルコードの可読性に関する最初の実証的研究を提案する。
論文 参考訳(メタデータ) (2024-09-30T14:44:00Z) - Towards Effective and Efficient Non-autoregressive Decoding Using Block-based Attention Mask [74.64216073678617]
AMDはアテンションマスクを用いて隠された出力ラベルの連続ブロック内で並列NAR推論を行う。
ビームサーチアルゴリズムは、CTC、ARデコーダ、AMD確率の動的融合を利用するように設計されている。
LibriSpeech-100hrコーパスの実験では、AMDモジュールを組み込んだトリパルタイトデコーダが最大1.73倍のデコード速度比を生み出すことを示唆している。
論文 参考訳(メタデータ) (2024-06-14T13:42:38Z) - Uncovering LLM-Generated Code: A Zero-Shot Synthetic Code Detector via Code Rewriting [78.48355455324688]
そこで本研究では,コードと書き直された変種との類似性に基づいて,ゼロショット合成符号検出器を提案する。
以上の結果から,既存のテキスト用合成コンテンツ検出装置よりも顕著な向上が見られた。
論文 参考訳(メタデータ) (2024-05-25T08:57:28Z) - Theoretically Achieving Continuous Representation of Oriented Bounding Boxes [64.15627958879053]
本論文は,オブジェクト指向境界ボックス表現における不連続性を完全に解決しようとする試みである。
本研究では,既存の検出器に容易に統合可能なCOBB(Continuous OBB)という新しい表現法を提案する。
OOD評価のためのオープンソースのディープラーニングフレームワークJittorの検出ツールボックスJDetをベースとした,モジュール化されたベンチマークを開発した。
論文 参考訳(メタデータ) (2024-02-29T09:27:40Z) - 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) - 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) - Improving type information inferred by decompilers with supervised
machine learning [0.0]
ソフトウェアリバースエンジニアリングでは、逆コンパイルはバイナリファイルからソースコードを回復するプロセスである。
関数によって返される高レベルな型を推測できる異なる分類モデルを構築する。
私たちのシステムは、79.1%のF1測定で関数戻り型を予測できますが、最良の逆コンパイラは30%のF1測定を得ます。
論文 参考訳(メタデータ) (2021-01-19T11:45:46Z) - PolyDL: Polyhedral Optimizations for Creation of High Performance DL
primitives [55.79741270235602]
本稿では,Deep Learningプリミティブの高性能実装を自動的に生成するコンパイラアルゴリズムを提案する。
我々は多面体モデルを用いた新しいデータ再利用分析アルゴリズムを開発した。
また、このようなハイブリッドコンパイラとライブラリ使用の最小限のアプローチが、最先端のパフォーマンスをもたらすことを示す。
論文 参考訳(メタデータ) (2020-06-02T06:44:09Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。