論文の概要: RLTrace: Synthesizing High-Quality System Call Traces for OS Fuzz Testing
- arxiv url: http://arxiv.org/abs/2310.02609v1
- Date: Wed, 4 Oct 2023 06:46:00 GMT
- ステータス: 処理完了
- システム内更新日: 2024-03-19 03:21:56.694556
- Title: RLTrace: Synthesizing High-Quality System Call Traces for OS Fuzz Testing
- Title(参考訳): RLTrace: OSファズテストのための高品質システムコールトレースの合成
- Authors: Wei Chen, Huaijin Wang, Weixi Gu, Shuai Wang,
- Abstract要約: ファズOSカーネルのシードとして多種多様なシステムコールトレースを合成するために,RLTraceと呼ばれる深層強化学習ベースのソリューションを提案する。
モデルトレーニング中、ディープラーニングモデルはOSカーネルと相互作用し、最適なシステムコールトレースを推論する。
RLTraceは,より包括的なシステムコールトレースを生成することにより,他のシードジェネレータよりも優れた性能を示す。
- 参考スコア(独自算出の注目度): 10.644829779197341
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Securing operating system (OS) kernel is one central challenge in today's cyber security landscape. The cutting-edge testing technique of OS kernel is software fuzz testing. By mutating the program inputs with random variations for iterations, fuzz testing aims to trigger program crashes and hangs caused by potential bugs that can be abused by the inputs. To achieve high OS code coverage, the de facto OS fuzzer typically composes system call traces as the input seed to mutate and to interact with OS kernels. Hence, quality and diversity of the employed system call traces become the prominent factor to decide the effectiveness of OS fuzzing. However, these system call traces to date are generated with hand-coded rules, or by analyzing system call logs of OS utility programs. Our observation shows that such system call traces can only subsume common usage scenarios of OS system calls, and likely omit hidden bugs. In this research, we propose a deep reinforcement learning-based solution, called RLTrace, to synthesize diverse and comprehensive system call traces as the seed to fuzz OS kernels. During model training, the deep learning model interacts with OS kernels and infers optimal system call traces w.r.t. our learning goal -- maximizing kernel code coverage. Our evaluation shows that RLTrace outperforms other seed generators by producing more comprehensive system call traces, subsuming system call corner usage cases and subtle dependencies. By feeding the de facto OS fuzzer, SYZKALLER, with system call traces synthesized by RLTrace, we show that SYZKALLER can achieve higher code coverage for testing Linux kernels. Furthermore, RLTrace found one vulnerability in the Linux kernel (version 5.5-rc6), which is publicly unknown to the best of our knowledge by the time of writing.
- Abstract(参考訳): オペレーティングシステム(OS)カーネルのセキュア化は,今日のサイバーセキュリティの状況において重要な課題のひとつだ。
OSカーネルの最先端テスト技術はソフトウェアファズテストである。
プログラム入力をイテレーションのランダムなバリエーションで変更することで、ファズテストはプログラムのクラッシュと、入力によって悪用される可能性のある潜在的なバグによって引き起こされるハングをトリガーすることを目的としている。
OSのコードカバレッジを高めるために、デファクトOSファジィザは通常、OSカーネルを変更・操作するための入力シードとしてシステムコールトレースを構成する。
したがって、OSファジィ化の有効性を決定する上で、採用するシステムコールトレースの品質と多様性が重要な要素となる。
しかし、これらのシステムコールトレースは、手書きのルールやOSユーティリティプログラムのシステムコールログの分析によって生成される。
我々の観察では、そのようなシステムコールトレースはOSシステムコールの一般的な使用シナリオをサブスクライブするだけであり、隠れたバグを省く可能性がある。
本研究では,多種多様なシステムコールトレースをファズOSカーネルへのシードとして合成する,RLTraceと呼ばれる深層強化学習ベースのソリューションを提案する。
モデルトレーニングの間、ディープラーニングモデルはOSカーネルと相互作用し、学習目標であるカーネルコードカバレッジを最大化する最適なシステムコールトレースを推論する。
RLTraceは,より包括的なシステムコールトレースを生成し,システムコールコーナーの使用事例と微妙な依存関係を仮定することにより,他のシードジェネレータよりも優れていることを示す。
RLTrace が生成したシステムコールトレースを,事実上の OS ファザである SYZKALLER に供給することにより,SYZKALLER が Linux カーネルのテストにおいて高いコードカバレッジを達成可能であることを示す。
さらに、RLTraceはLinuxカーネルに1つの脆弱性(バージョン5.5-rc6)を発見した。
関連論文リスト
- A Survey of Fuzzing Open-Source Operating Systems [11.770015366564774]
オープンソースのオペレーティングシステムの脆弱性は、重大なセキュリティリスクを引き起こす。
ファジィング(OSF)は、OSの複雑さと多層インタラクションによって、独特な課題に直面している。
この研究は、最先端のOSF技術について体系的に調査する。
論文 参考訳(メタデータ) (2025-02-17T02:53:02Z) - Demystifying OS Kernel Fuzzing with a Novel Taxonomy [42.56259589772939]
本研究はOSカーネルファジィングに関する最初の体系的研究である。
2017年から2024年にかけて、トップレベルの会場から99の学術研究の進捗状況をまとめることから始まる。
本稿では,カーネルファジングに特有の9つのコア機能に着目した,ステージベースファジングモデルとファジング分類法を提案する。
論文 参考訳(メタデータ) (2025-01-27T16:03:14Z) - OS-Genesis: Automating GUI Agent Trajectory Construction via Reverse Task Synthesis [55.390060529534644]
グラフィカルユーザインタフェース(GUI)エージェントのための新しいデータ合成パイプラインであるOS-Genesisを提案する。
事前に定義されたタスクに頼る代わりに、OS-Genesisはエージェントがまず環境を認識し、ステップワイドなインタラクションを実行することを可能にする。
次に、生成された軌道の品質を保証するために軌道報酬モデルを用いる。
論文 参考訳(メタデータ) (2024-12-27T16:21:58Z) - 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) - RelayAttention for Efficient Large Language Model Serving with Long System Prompts [59.50256661158862]
本稿では,長いシステムプロンプトを含むLCMサービスの効率を向上させることを目的とする。
これらのシステムプロンプトの処理には、既存の因果注意アルゴリズムにおいて、大量のメモリアクセスが必要である。
本稿では,DRAMから入力トークンのバッチに対して,DRAMから隠れた状態を正確に1回読み取ることのできるアテンションアルゴリズムであるRelayAttentionを提案する。
論文 参考訳(メタデータ) (2024-02-22T18:58:28Z) - KernelGPT: Enhanced Kernel Fuzzing via Large Language Models [8.77369393651381]
我々はLarge Language Models (LLM) を通じてsyscall仕様を自動合成する最初のアプローチである KernelGPT を提案する。
以上の結果から, KernelGPTは最新の技術よりも, より新しい, 有効な仕様を作成できることを示す。
論文 参考訳(メタデータ) (2023-12-31T18:47:33Z) - Language Models for Novelty Detection in System Call Traces [0.27309692684728604]
本稿では,システムコールのシーケンスの確率分布に依存する新規性検出手法を提案する。
提案手法は手作りを最小限に抑え、多くの新規品においてFスコアとAuROCを95%以上達成する。
ソースコードとトレーニングされたモデルはGitHubで公開されており、データセットはZenodoで公開されている。
論文 参考訳(メタデータ) (2023-09-05T13:11:40Z) - model-based script synthesis for fuzzing [10.739464605434977]
既存のアプローチは、トレースからのsyscallシーケンスやシステムコードの静的解析をモデル化することでカーネルを混乱させる。
我々は、異なるカーネル状態に到達するために、トレースされたsyscallシーケンスを学習し、変更するためのWinkFuzzを提案する。
論文 参考訳(メタデータ) (2023-08-08T08:07:50Z) - SysNoise: Exploring and Benchmarking Training-Deployment System
Inconsistency [55.49469003537601]
我々はSysNoiseを紹介した。SysNoiseは、頻繁に発生するが、ディープラーニングのトレーニング-デプロイサイクルでしばしば見過ごされるノイズである。
我々は,SysNoiseが20以上のモデル,画像分類,オブジェクト検出,インスタンスセグメンテーション,自然言語処理タスクに与える影響を測定する。
実験の結果、SysNoiseはさまざまなタスクにわたるモデルロバスト性に一定の影響をもたらし、データ強化や逆行訓練のような一般的な緩和効果は、それに対する限られた影響を示します。
論文 参考訳(メタデータ) (2023-07-01T09:22:54Z) - Interactive System-wise Anomaly Detection [66.3766756452743]
異常検出は様々なアプリケーションにおいて基本的な役割を果たす。
既存のメソッドでは、インスタンスがデータとして容易に観察できないシステムであるシナリオを扱うのが難しい。
システム埋め込みを学習するエンコーダデコーダモジュールを含むエンドツーエンドアプローチを開発する。
論文 参考訳(メタデータ) (2023-04-21T02:20:24Z) - Lifelong Bandit Optimization: No Prior and No Regret [70.94238868711952]
我々は,過去の経験から学習することで環境に適応するアルゴリズムであるLIBOを開発した。
カーネルが未知だが、すべてのタスク間で共有されるカーネル構造を仮定する。
我々のアルゴリズムは、任意のカーネル化または線形バンディットアルゴリズムと組み合わせて、最適な性能を保証できる。
論文 参考訳(メタデータ) (2022-10-27T14:48:49Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。