論文の概要: Fuzzing-based Mutation Testing of C/C++ CPS
- arxiv url: http://arxiv.org/abs/2503.24100v1
- Date: Mon, 31 Mar 2025 13:55:27 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-04-01 14:37:43.819670
- Title: Fuzzing-based Mutation Testing of C/C++ CPS
- Title(参考訳): C/C++ CPSのファジィに基づく突然変異試験
- Authors: Jaekwon Lee, Fabrizio Pastore, Lionel Briand,
- Abstract要約: CとC++ソフトウェアの最先端の突然変異テスト技術は、シンボリック実行に依存している。
本稿では,C および C++ ソフトウェアにおけるファジテストの有効性を実証したファジテストに依存することを提案する。
- 参考スコア(独自算出の注目度): 2.362412515574206
- License:
- Abstract: Mutation testing can help minimize the delivery of faulty software. Therefore, it is a recommended practice for developing embedded software in safety-critical cyber-physical systems (CPS). However, state-of-the-art mutation testing techniques for C and C++ software, which are common languages for CPS, depend on symbolic execution. Unfortunately, symbolic execution's limitations hinder its applicability (e.g., systems with black-box components). We propose relying on fuzz testing, which has demonstrated its effectiveness for C and C++ software. Fuzz testing tools automatically create test inputs that explore program branches in various ways, exercising statements in different program states, and thus enabling the detection of mutants, which is our objective. We empirically evaluated our approach using software components from operational satellite systems. Our assessment shows that our approach can detect between 40% and 90% of the mutants not detected by developers' test suites. Further, we empirically determined that the best results are obtained by integrating the Clang compiler, a memory address sanitizer, and relying on laf-intel instrumentation to collect coverage and guide fuzzing. Our approach detects a significantly higher percentage of live mutants compared to symbolic execution, with an increase of up to 50 percentage points; further, we observed that although the combination of fuzzing and symbolic execution leads to additional mutants being killed, the benefits are minimal (a gain of less than one percentage point).
- Abstract(参考訳): 突然変異テストは、欠陥のあるソフトウェアのデリバリを最小限にするのに役立つ。
そのため、安全クリティカルなサイバー物理システム(CPS)において組込みソフトウェアを開発するための推奨プラクティスである。
しかし、CPSの共通言語であるCとC++ソフトウェアの最先端の突然変異テスト技術は、シンボリック実行に依存している。
残念ながら、シンボル実行の制限は適用性を妨げている(例えば、ブラックボックスコンポーネントを持つシステム)。
本稿では,C および C++ ソフトウェアにおけるファジテストの有効性を実証したファジテストに依存することを提案する。
ファズテストツールは、プログラムブランチを様々な方法で探索するテストインプットを自動的に生成し、異なるプログラム状態のステートメントを実行することで、我々の目的であるミュータントの検出を可能にする。
運用衛星システムからのソフトウェアコンポーネントによるアプローチを実証的に評価した。
提案手法は,開発者のテストスイートで検出されていない変異体の40%から90%を検出できることを示す。
さらに,Clangコンパイラとメモリアドレスサニタイザを統合し,ラフ・インテライト・インスツルメンテーションに頼ってカバレッジを収集しファジィングを誘導することで,最良の結果が得られることを実証的に判断した。
さらに, ファジィングとシンボル実行の組み合わせは, 新たな変異体を殺傷することにつながるが, 利益は最小限に抑えられた(1ポイント未満の利得)。
関連論文リスト
- FuzzCoder: Byte-level Fuzzing Test via Large Language Model [46.18191648883695]
我々は,攻撃を成功させることで,入力ファイルのパターンを学習するために,微調整された大言語モデル(FuzzCoder)を採用することを提案する。
FuzzCoderは、プログラムの異常な動作を引き起こすために、入力ファイル内の突然変異位置と戦略位置を予測することができる。
論文 参考訳(メタデータ) (2024-09-03T14:40:31Z) - MOTIF: A tool for Mutation Testing with Fuzzing [3.4742750855568763]
ミューテーションテストは、セーフティクリティカルなサイバー物理システムで動作する組み込みソフトウェアにとって望ましいプラクティスである。
MOTIFは、グレーボックスファジィツールを活用して、ミュータント内の注入された欠陥を検出するCの単体テストケースを生成することで制限を克服する。
論文 参考訳(メタデータ) (2024-06-04T15:12:01Z) - Vulnerability Detection in C/C++ Code with Deep Learning [3.105656247358225]
我々は、C/C++プログラムのソースコードから抽出したプログラムスライスでニューラルネットワークをトレーニングし、ソフトウェア脆弱性を検出する。
この結果から,ソースコードの特徴の相違と,脆弱なプログラムスライスと非脆弱なプログラムスライスをバランスよく組み合わせることで,バランスの取れた精度が得られることがわかった。
論文 参考訳(メタデータ) (2024-05-20T21:39:19Z) - 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) - Zero-Shot Detection of Machine-Generated Codes [83.0342513054389]
本研究は,LLMの生成したコードを検出するためのトレーニング不要な手法を提案する。
既存のトレーニングベースまたはゼロショットテキスト検出装置は、コード検出に効果がないことがわかった。
本手法は,リビジョン攻撃に対する堅牢性を示し,Javaコードによく適応する。
論文 参考訳(メタデータ) (2023-10-08T10:08:21Z) - Guess & Sketch: Language Model Guided Transpilation [59.02147255276078]
学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
論文 参考訳(メタデータ) (2023-09-25T15:42:18Z) - Effective Test Generation Using Pre-trained Large Language Models and
Mutation Testing [13.743062498008555]
大規模言語モデル(LLM)が生成するテストケースの有効性を,バグの発見の観点から改善するための MuTAP を導入する。
MuTAPは、プログラム・アンダー・テスト(PUT)の自然言語記述がない場合に有効なテストケースを生成することができる
提案手法は, 最大28%の人書きコードスニペットを検出できることを示す。
論文 参考訳(メタデータ) (2023-08-31T08:48:31Z) - Fuzzing for CPS Mutation Testing [3.512722797771289]
本稿では, ファジテストを利用した突然変異検査手法を提案し, C および C++ ソフトウェアで有効であることが証明された。
実験により, ファジテストに基づく突然変異試験は, シンボル実行よりも高い頻度で生存変異体を殺傷することが明らかとなった。
論文 参考訳(メタデータ) (2023-08-15T16:35:31Z) - Fault-Aware Neural Code Rankers [64.41888054066861]
サンプルプログラムの正しさを予測できる故障認識型ニューラルネットワークローダを提案する。
我々のフォールト・アウェア・ローダは、様々なコード生成モデルのpass@1精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2022-06-04T22:01:05Z) - Noisy Adaptive Group Testing using Bayesian Sequential Experimental
Design [63.48989885374238]
病気の感染頻度が低い場合、Dorfman氏は80年前に、人のテストグループは個人でテストするよりも効率が良いことを示した。
本研究の目的は,ノイズの多い環境で動作可能な新しいグループテストアルゴリズムを提案することである。
論文 参考訳(メタデータ) (2020-04-26T23:41:33Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。