論文の概要: IRFuzzer: Specialized Fuzzing for LLVM Backend Code Generation
- arxiv url: http://arxiv.org/abs/2402.05256v2
- Date: Mon, 14 Jul 2025 02:30:08 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-07-15 18:48:20.866111
- Title: IRFuzzer: Specialized Fuzzing for LLVM Backend Code Generation
- Title(参考訳): IRFuzzer:LLVMバックエンドコード生成のためのファズリング
- Authors: Yuyang Rong, Zhanghan Yu, Zhenkai Weng, Stephen Neuendorffer, Hao Chen,
- Abstract要約: IRFuzzerを実装し,LLVMコンパイラバックエンドのファジィ化の有効性について検討する。
IRFuzzerのミューテータは、構造化制御フロー、ベクトルタイプ、関数定義を含む幅広いLLVM IR入力を生成することができる。
IRFuzzer は 29 の成熟した LLVM バックエンドターゲットにファジィをファジィ化することで,既存のファジィよりも有効であることを示す。
- 参考スコア(独自算出の注目度): 3.4764546186868452
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Modern compilers, such as LLVM, are complex pieces of software. Due to their complexity, manual testing is unlikely to suffice, yet formal verification is difficult to scale. End-to-end fuzzing can be used, but it has difficulties in achieving high coverage of some components of LLVM. In this paper, we implement IRFuzzer to investigate the effectiveness of specialized fuzzing of the LLVM compiler backend. We focus on two approaches to improve the fuzzer: guaranteed input validity using constrained mutations and improved feedback quality. The mutator in IRFuzzer is capable of generating a wide range of LLVM IR inputs, including structured control flow, vector types, and function definitions. The system instruments coding patterns in the compiler to monitor the execution status of instruction selection. The instrumentation not only provides a new coverage feedback called matcher table coverage, but also provides an architecture specific guidance to the mutator. We show that IRFuzzer is more effective than existing fuzzers by fuzzing on 29 mature LLVM backend targets. In the process, we reported 74 confirmed new bugs in LLVM upstream, out of which 49 have been fixed, five have been back ported to LLVM 15, showing that specialized fuzzing provides useful and actionable insights to LLVM developers.
- Abstract(参考訳): LLVMのような現代のコンパイラは複雑なソフトウェアである。
その複雑さのため、手動テストは十分ではないが、正式な検証はスケールすることが難しい。
エンドツーエンドファジィは使用できるが、LLVMのいくつかのコンポーネントを高いカバレッジでカバーすることは困難である。
本稿では,LLVM コンパイラバックエンドのファジィ化の有効性を検討するために IRFuzzer を実装した。
ファジィザを改善するための2つのアプローチに焦点をあてる: 制約付き突然変異を用いた入力妥当性の保証とフィードバック品質の改善。
IRFuzzerのミューテータは、構造化制御フロー、ベクトルタイプ、関数定義を含む幅広いLLVM IR入力を生成することができる。
システムは、命令選択の実行状況を監視するために、コンパイラ内のパターンをコーディングする。
インスツルメンテーションは、Matcherテーブルカバレッジと呼ばれる新しいカバレッジフィードバックを提供するだけでなく、ミュータへのアーキテクチャ固有のガイダンスも提供する。
IRFuzzer は 29 の成熟した LLVM バックエンドターゲットにファジィをファジィ化することで,既存のファジィよりも有効であることを示す。
その過程で74のバグが確認され、そのうち49のバグが修正され、5のバグがLLVM 15に移植された。
関連論文リスト
- LLAMA: Multi-Feedback Smart Contract Fuzzing Framework with LLM-Guided Seed Generation [56.84049855266145]
進化的突然変異戦略とハイブリッドテスト技術を統合したマルチフィードバックスマートコントラクトファジリングフレームワーク(LLAMA)を提案する。
LLAMAは、91%の命令カバレッジと90%のブランチカバレッジを達成すると同時に、148の既知の脆弱性のうち132が検出される。
これらの結果は、現実のスマートコントラクトセキュリティテストシナリオにおけるLAMAの有効性、適応性、実用性を強調している。
論文 参考訳(メタデータ) (2025-07-16T09:46:58Z) - May the Feedback Be with You! Unlocking the Power of Feedback-Driven Deep Learning Framework Fuzzing via LLMs [13.976286931563006]
ディープラーニング(DL)フレームワークのバグを見つけるためのシンプルで効果的な方法はファズテスト(ファズリング)です。
本稿では,DLフレームワークに対するフィードバック駆動ファジィのシールを壊すためのFUELを提案する。
FUELはPyTorchとサマリーの104のバグを検出し、93が新たなバグとして確認され、47がすでに修正され、5がCVE IDに割り当てられた。
論文 参考訳(メタデータ) (2025-06-21T08:51:53Z) - DESIL: Detecting Silent Bugs in MLIR Compiler Infrastructure [8.760618981915016]
DESILは、MLIRドキュメントに基づいたUB-eliminationルールのセットを定義することで、サイレントバグ検出を可能にする。
DESILにはサイレントバグ検出のための差分テストが組み込まれている。
23の静かなバグと19のクラッシュバグを検出し、そのうち12/14が確認または修正された。
論文 参考訳(メタデータ) (2025-04-02T05:48:51Z) - ReF Decompile: Relabeling and Function Call Enhanced Decompile [50.86228893636785]
逆コンパイルの目標は、コンパイルされた低レベルコード(アセンブリコードなど)を高レベルプログラミング言語に変換することである。
このタスクは、脆弱性識別、マルウェア分析、レガシーソフトウェアマイグレーションなど、さまざまなリバースエンジニアリングアプリケーションをサポートする。
論文 参考訳(メタデータ) (2025-02-17T12:38:57Z) - Your Fix Is My Exploit: Enabling Comprehensive DL Library API Fuzzing with Large Language Models [49.214291813478695]
AIアプリケーションで広く使用されているディープラーニング(DL)ライブラリは、オーバーフローやバッファフリーエラーなどの脆弱性を含むことが多い。
従来のファジィングはDLライブラリの複雑さとAPIの多様性に悩まされている。
DLライブラリのためのLLM駆動ファジィ手法であるDFUZZを提案する。
論文 参考訳(メタデータ) (2025-01-08T07:07:22Z) - FuzzCoder: Byte-level Fuzzing Test via Large Language Model [46.18191648883695]
我々は,攻撃を成功させることで,入力ファイルのパターンを学習するために,微調整された大言語モデル(FuzzCoder)を採用することを提案する。
FuzzCoderは、プログラムの異常な動作を引き起こすために、入力ファイル内の突然変異位置と戦略位置を予測することができる。
論文 参考訳(メタデータ) (2024-09-03T14:40:31Z) - OVLW-DETR: Open-Vocabulary Light-Weighted Detection Transformer [63.141027246418]
本稿では,OVLW-DETR(Open-Vocabulary Light-Weighted Detection Transformer)を提案する。
本稿では,視覚言語モデル(VLM)からオブジェクト検出器への知識伝達を簡易なアライメントで行うエンド・ツー・エンドのトレーニングレシピを提案する。
実験により,提案手法は標準ゼロショットLVISベンチマークにおいて,既存の実時間開語彙検出器よりも優れていることが示された。
論文 参考訳(メタデータ) (2024-07-15T12:15:27Z) - KGym: A Platform and Dataset to Benchmark Large Language Models on Linux Kernel Crash Resolution [59.20933707301566]
大規模言語モデル(LLM)は、ますます現実的なソフトウェア工学(SE)タスクにおいて一貫して改善されている。
現実世界のソフトウェアスタックでは、Linuxカーネルのような基本的なシステムソフトウェアの開発にSEの取り組みが費やされています。
このような大規模システムレベルのソフトウェアを開発する際にMLモデルが有用かどうかを評価するため、kGymとkBenchを紹介する。
論文 参考訳(メタデータ) (2024-07-02T21:44:22Z) - LLAMAFUZZ: Large Language Model Enhanced Greybox Fuzzing [6.042114639413868]
特殊なファジィザは複雑な構造化データを扱うことができるが、文法にさらなる努力が必要であり、低スループットに悩まされる。
本稿では,構造化データに対するグレーボックスファジングを強化するために,Large Language Modelを活用する可能性について検討する。
LLMベースのファザであるLLAMAFUZZは、LLMのパワーを統合して、構造化データをファザリングに理解し、変更する。
論文 参考訳(メタデータ) (2024-06-11T20:48:28Z) - LLM-Vectorizer: LLM-based Verified Loop Vectorizer [12.048697450464935]
大規模言語モデル(LLM)は、個々の配列要素を処理するスカラープログラムからベクトル化されたコードを生成することができる。
LLMは1.1xから9.4xまでのランタイムスピードアップで高性能なベクトルコードを生成することができる。
我々のアプローチでは、TSVCベンチマークデータセットで正しいベクター化の38.2%を検証できる。
論文 参考訳(メタデータ) (2024-06-07T07:04:26Z) - DebugBench: Evaluating Debugging Capability of Large Language Models [80.73121177868357]
DebugBench - LLM(Large Language Models)のベンチマーク。
C++、Java、Pythonの4つの主要なバグカテゴリと18のマイナータイプをカバーする。
ゼロショットシナリオで2つの商用および4つのオープンソースモデルを評価する。
論文 参考訳(メタデータ) (2024-01-09T15:46:38Z) - ML-Bench: Evaluating Large Language Models and Agents for Machine Learning Tasks on Repository-Level Code [76.84199699772903]
ML-Benchは、既存のコードリポジトリを利用してタスクを実行する現実世界のプログラミングアプリケーションに根ざしたベンチマークである。
LLM(Large Language Model)とAIエージェントの両方を評価するために、事前に定義されたデプロイメント環境でLLMのテキスト-コード変換を評価するML-LLM-Benchと、Linuxサンドボックス環境でエンドツーエンドのタスク実行で自律エージェントをテストするML-Agent-Benchの2つの設定が採用されている。
論文 参考訳(メタデータ) (2023-11-16T12:03:21Z) - Leveraging Large Language Models for Automated Proof Synthesis in Rust [6.202137610101939]
大規模言語モデル(LLM)は、コード解析と合成に成功している。
我々は、LLMと静的解析を組み合わせることで、Verusと呼ばれるRustベースの形式検証フレームワークの不変性、アサーション、その他の証明構造を合成する。
プロトタイプでは,検証タスクを複数の小さなタスクに分割し,反復的にGPT-4をクエリし,その出力と軽量な静的解析を組み合わせる。
論文 参考訳(メタデータ) (2023-11-07T05:47:47Z) - WhiteFox: White-Box Compiler Fuzzing Empowered by Large Language Models [11.33856613057612]
提案するWhiteFoxは,ソースコード情報付きLarge Language Modelを用いた,最初のホワイトボックスコンパイラファザである。
WhiteFoxは、高度な最適化を行うための高品質なテストプログラムを生成することができる。
WhiteFoxはDLコンパイラの101のバグを発見した。
論文 参考訳(メタデータ) (2023-10-24T16:39:06Z) - Coverage-Guided Tensor Compiler Fuzzing with Joint IR-Pass Mutation [20.519361342905775]
広範に使われているTVMテンソルコンパイラのためのファジィ手法であるTzerを提案する。
以上の結果から,Tzerはテンソルコンパイラテストにおいて,既存のファジリング技術よりも大幅に優れていることがわかった。
これまでTzerは、TVMの49の既知のバグを検出し、37のバグが確認され、25のバグが修正された。
論文 参考訳(メタデータ) (2022-02-21T01:48:11Z) - iffDetector: Inference-aware Feature Filtering for Object Detection [70.8678270164057]
Inference-aware Feature Filtering (IFF)モジュールを導入し、現代の検出器と簡単に組み合わせることができる。
IFFは、畳み込み機能を強化するためにハイレベルなセマンティクスを活用することでクローズドループ最適化を行う。
IFFはCNNベースの物体検出器とプラグアンドプレイ方式で融合でき、計算コストのオーバーヘッドは無視できる。
論文 参考訳(メタデータ) (2020-06-23T02:57:29Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。