論文の概要: StackSight: Unveiling WebAssembly through Large Language Models and Neurosymbolic Chain-of-Thought Decompilation
- arxiv url: http://arxiv.org/abs/2406.04568v1
- Date: Fri, 7 Jun 2024 01:08:17 GMT
- ステータス: 処理完了
- システム内更新日: 2024-06-10 15:48:53.535185
- Title: StackSight: Unveiling WebAssembly through Large Language Models and Neurosymbolic Chain-of-Thought Decompilation
- Title(参考訳): StackSight: 大きな言語モデルとNeurosymbolic Chain-of-Thought逆コンパイルによるWebAssemblyの展開
- Authors: Weike Fang, Zhejian Zhou, Junzhou He, Weihang Wang,
- Abstract要約: StackSightは静的解析アルゴリズムを通じて仮想スタックの変更を視覚化し、追跡し、チェーン・オブ・シークレット・プロンプトを適用する。
評価結果は、StackSightがWebAssemblyの逆コンパイルを大幅に改善していることを示している。
またユーザ調査では、StackSightが生成したコードスニペットの勝利率が大幅に高く、コードのセマンティクスをよりよく把握できることを示した。
- 参考スコア(独自算出の注目度): 2.1094456929188676
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: WebAssembly enables near-native execution in web applications and is increasingly adopted for tasks that demand high performance and robust security. However, its assembly-like syntax, implicit stack machine, and low-level data types make it extremely difficult for human developers to understand, spurring the need for effective WebAssembly reverse engineering techniques. In this paper, we propose StackSight, a novel neurosymbolic approach that combines Large Language Models (LLMs) with advanced program analysis to decompile complex WebAssembly code into readable C++ snippets. StackSight visualizes and tracks virtual stack alterations via a static analysis algorithm and then applies chain-of-thought prompting to harness LLM's complex reasoning capabilities. Evaluation results show that StackSight significantly improves WebAssembly decompilation. Our user study also demonstrates that code snippets generated by StackSight have significantly higher win rates and enable a better grasp of code semantics.
- Abstract(参考訳): WebAssemblyはWebアプリケーションでほぼネイティブな実行を可能にし、高いパフォーマンスと堅牢なセキュリティを必要とするタスクにますます採用されている。
しかし、アセンブリライクな構文、暗黙のスタックマシン、低レベルのデータ型は、人間の開発者が理解するのが極めて困難であり、WebAssemblyのリバースエンジニアリング技術を効果的に必要とします。
本稿では,大規模言語モデル(LLM)と高度なプログラム解析を組み合わせた新しいニューロシンボリックアプローチであるStackSightを提案し,複雑なWebAssemblyコードを読みやすいC++スニペットに分解する。
StackSightは静的解析アルゴリズムを通じて仮想スタックの変更を視覚化し追跡し、LLMの複雑な推論機能を活用するためにチェーン・オブ・シークレット・プロンプトを適用する。
評価結果は、StackSightがWebAssemblyの逆コンパイルを大幅に改善していることを示している。
ユーザ調査では、StackSightが生成したコードスニペットの勝利率が大幅に高く、コードのセマンティクスをよりよく把握できることを示した。
関連論文リスト
- WebAssembly and Security: a review [0.8962460460173961]
私たちは7つの異なるセキュリティカテゴリを識別することで121の論文を分析します。
このギャップを埋めるために、WebAssemblyのセキュリティを扱う研究の包括的なレビューを提案しています。
論文 参考訳(メタデータ) (2024-07-17T03:37:28Z) - Multi-modal Learning for WebAssembly Reverse Engineering [7.18491643197374]
We present WasmRev, a first multi-modal pre-trained language model for WebAssembly reverse engineering。
WasmRevは大規模マルチモーダルコーパス上で自己教師型学習を用いて事前訓練される。
WasmRevを3つの重要なリバースエンジニアリングタスク、タイプリカバリ、関数目的の識別、WebAssemblyの要約に微調整します。
論文 参考訳(メタデータ) (2024-04-04T03:03:38Z) - Code-Switched Language Identification is Harder Than You Think [69.63439391717691]
コードスイッチングは、文字と音声の通信において一般的な現象である。
CSコーパスの構築の応用について検討する。
タスクをもっと多くの言語に拡張することで、タスクをより現実的にします。
文レベルのマルチラベルタグ付け問題としてタスクを再構築し、より難易度の高いものにする。
論文 参考訳(メタデータ) (2024-02-02T15:38:47Z) - SoK: Analysis techniques for WebAssembly [0.0]
WebAssemblyは低レベルのバイトコード言語で、C、C++、Rustといった言語をネイティブに近いパフォーマンスでブラウザで実行できる。
CやC++のようなメモリ不安全な言語の脆弱性は、WebAssemblyバイナリの脆弱性に変換できる。
WebAssemblyは暗号鍵のような悪意ある目的で使われてきた。
論文 参考訳(メタデータ) (2024-01-11T14:28:13Z) - LILO: Learning Interpretable Libraries by Compressing and Documenting Code [71.55208585024198]
LILOは、反復的に合成、圧縮、文書化を行う、ニューロシンボリックなフレームワークである。
LILOは、LLM誘導プログラム合成と、Stitchから自動化された最近のアルゴリズムの進歩を組み合わせたものである。
LILOのシンセサイザーが学習した抽象化を解釈し、デプロイするのを手助けすることで、AutoDocがパフォーマンスを向上させることが分かりました。
論文 参考訳(メタデータ) (2023-10-30T17:55:02Z) - When Do Program-of-Thoughts Work for Reasoning? [51.2699797837818]
本稿では,コードと推論能力の相関性を測定するために,複雑性に富んだ推論スコア(CIRS)を提案する。
具体的には、抽象構文木を用いて構造情報をエンコードし、論理的複雑性を計算する。
コードはhttps://github.com/zjunlp/EasyInstructのEasyInstructフレームワークに統合される。
論文 参考訳(メタデータ) (2023-08-29T17:22:39Z) - CodeIE: Large Code Generation Models are Better Few-Shot Information
Extractors [92.17328076003628]
大規模コーパスで事前訓練された大規模言語モデル(LLM)は、多くのNLPタスクにおいて、驚くべき数ショットの学習能力を示している。
本稿では、自然言語の代わりに構造化された出力をコード形式で再キャストすることを提案する。
論文 参考訳(メタデータ) (2023-05-09T18:40:31Z) - Beyond the C: Retargetable Decompilation using Neural Machine
Translation [5.734661402742406]
我々は,新しい言語に容易に再ターゲティング可能なプロトタイプ・デコンパイラを開発した。
トークン化やトレーニングデータ選択などのパラメータが逆コンパイルの品質に与える影響について検討する。
トレーニングデータ、トレーニングされた逆コンパイルモデル、そして将来の言語に依存しない逆コンパイルの研究を促進するためのコードをリリースします。
論文 参考訳(メタデータ) (2022-12-17T20:45:59Z) - Enhancing Semantic Code Search with Multimodal Contrastive Learning and
Soft Data Augmentation [50.14232079160476]
コード検索のためのマルチモーダルコントラスト学習とソフトデータ拡張を用いた新しい手法を提案する。
我々は,6つのプログラミング言語を用いた大規模データセットにおけるアプローチの有効性を評価するために,広範囲な実験を行った。
論文 参考訳(メタデータ) (2022-04-07T08:49:27Z) - Stack-based Buffer Overflow Detection using Recurrent Neural Networks [0.0]
プログラムのアセンブリコードでスタックベースのバッファオーバーフロー脆弱性を検出するために、現代の機械学習モデル、特にリカレントニューラルネットワークの利用を検討する。
我々のアーキテクチャは、コンテキストに強く依存する微妙なスタックベースのバッファオーバーフロー脆弱性を捕捉できることを示している。
論文 参考訳(メタデータ) (2020-12-30T11:24:44Z) - COSEA: Convolutional Code Search with Layer-wise Attention [90.35777733464354]
我々は、畳み込みニューラルネットワークを階層的注意で活用し、コード固有の構造論理をキャプチャする新しいディープラーニングアーキテクチャ、COSEAを提案する。
COSEAは、コード検索タスクの最先端メソッドよりも大幅に改善できる。
論文 参考訳(メタデータ) (2020-10-19T13:53:38Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。