論文の概要: Friend or Foe Inside? Exploring In-Process Isolation to Maintain Memory Safety for Unsafe Rust
- arxiv url: http://arxiv.org/abs/2306.08127v2
- Date: Wed, 08 Oct 2025 07:10:47 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-10-09 23:39:13.985688
- Title: Friend or Foe Inside? Exploring In-Process Isolation to Maintain Memory Safety for Unsafe Rust
- Title(参考訳): フレンドかフォアか? 安全でないRustのメモリ安全性を維持するために、インプロシージャの分離を探る
- Authors: Merve Gülmez, Thomas Nyman, Christoph Baumann, Jan Tobias Mühlberg,
- Abstract要約: Rustはインフンセーフな言語機能を提供し、メモリ安全性を開発者に保証する責任をシフトさせる。
本研究では,安全なプログラムセクションを安全違反から保護するためのメカニズムとして,メモリ保護キーを用いたプロセス内分離について検討する。
- 参考スコア(独自算出の注目度): 3.284045052514266
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Rust is a popular memory-safe systems programming language. In order to interact with hardware or call into non-Rust libraries, Rust provides \emph{unsafe} language features that shift responsibility for ensuring memory safety to the developer. Failing to do so, may lead to memory safety violations in unsafe code which can violate safety of the entire application. In this work we explore in-process isolation with Memory Protection Keys as a mechanism to shield safe program sections from safety violations that may happen in unsafe sections. Our approach is easy to use and comprehensive as it prevents heap and stack-based violations. We further compare process-based and in-process isolation mechanisms and the necessary requirements for data serialization, communication, and context switching. Our results show that in-process isolation can be effective and efficient, permits for a high degree of automation, and also enables a notion of application rewinding where the safe program section may detect and safely handle violations in unsafe code.
- Abstract(参考訳): Rustは、メモリセーフなシステムプログラミング言語として人気がある。
ハードウェアとのインタラクションや非Rustライブラリへの呼び出しのために、Rustは、メモリ安全性を保証する責任を開発者にシフトする‘emph{unsafe}言語機能を提供している。
失敗すると、安全でないコードのメモリの安全性が侵害され、アプリケーション全体の安全性を侵害する可能性がある。
本研究では,安全なプログラムセクションを安全でないセクションで発生する可能性のある安全違反から保護するためのメカニズムとして,メモリ保護キーを用いたプロセス内分離について検討する。
当社のアプローチは,ヒープやスタックベースの違反を防止するため,使いやすく,包括的です。
さらに、プロセスベースおよびプロセス内分離機構と、データシリアライゼーション、通信、コンテキストスイッチングに必要な要件を比較する。
この結果から,プロセス内分離は効率的かつ効果的であり,高度の自動化が可能であり,また,安全なプログラム部が安全でないコードの違反を検出し,安全に処理できるアプリケーション再巻き戻しの概念も可能であった。
関連論文リスト
- SandCell: Sandboxing Rust Beyond Unsafe Code [14.279471205248532]
Rustは、コンパイル時にオーナシップを強制し、ルールを借用することによって、メモリ安全性を保証するモダンなシステムプログラミング言語である。
Rustを脆弱性から保護するために、安全でないコードを分離するためのさまざまなアプローチが提案されている。
本論文では,既存の構文境界を利用して,Rustのフレキシブルかつ軽量な分離を実現するためのSandCellを提案する。
論文 参考訳(メタデータ) (2025-09-28T19:01:51Z) - CRUST-Bench: A Comprehensive Benchmark for C-to-safe-Rust Transpilation [51.18863297461463]
CRUST-Benchは100のCリポジトリのデータセットで、それぞれが安全なRustとテストケースで手書きのインターフェースとペアリングされている。
我々は、このタスクで最先端の大規模言語モデル(LLM)を評価し、安全で慣用的なRust生成が依然として難しい問題であることを確認した。
最高のパフォーマンスモデルであるOpenAI o1は、ワンショット設定で15タスクしか解決できない。
論文 参考訳(メタデータ) (2025-04-21T17:33:33Z) - SafeSwitch: Steering Unsafe LLM Behavior via Internal Activation Signals [51.49737867797442]
大規模言語モデル(LLM)は、様々なタスクにまたがる例外的な能力を示すが、有害なコンテンツを生成することでリスクを引き起こす。
LLMは、内部状態の安全性に関する内部評価を同様に行うことができることを示す。
本稿では,プロバーをベースとした内部状態モニタを用いて,安全でない出力を規制するSafeSwitchを提案する。
論文 参考訳(メタデータ) (2025-02-03T04:23:33Z) - Characterizing Unsafe Code Encapsulation In Real-world Rust Systems [2.285834282327349]
内部アンセーフは、システムソフトウェア開発においてRustコミュニティによって提唱される重要な設計パラダイムである。
Rustコンパイラは、安全でないコードを含む安全な関数の健全性を検証することができない。
安全でないコードの本質的な使用法とカプセル化をモデル化するための,新しいアンセーフティアイソレーショングラフを提案する。
論文 参考訳(メタデータ) (2024-06-12T06:59:51Z) - Fast Summary-based Whole-program Analysis to Identify Unsafe Memory Accesses in Rust [23.0568924498396]
Rustは40年以上にわたって低レベルのソフトウェアに悩まされてきたメモリ安全性問題を解決する最も有望なシステムプログラミング言語の1つである。
アンセーフなRustコードと直接リンクされたアンセーフな外部ライブラリは、メモリ安全違反自体を導入するだけでなく、セーフなRustと同じモノリシックなアドレス空間で実行されるプログラム全体を侵害する可能性がある。
我々は、安全でないヒープの割り当てと、それらの安全でないヒープオブジェクトへのメモリアクセスの両方を識別するためのプログラム全体をプロトタイプ化した。
論文 参考訳(メタデータ) (2023-10-16T11:34:21Z) - Unsafe's Betrayal: Abusing Unsafe Rust in Binary Reverse Engineering
toward Finding Memory-safety Bugs via Machine Learning [20.68333298047064]
Rustは、プログラミングにおけるメモリセーフなバグを避けるために、メモリセーフなメカニズムを提供する。
Rustのユーザビリティを高めるアンセーフコードは、メモリセーフなバグを見つけるための明確な場所を提供する。
これらの安全でないスポットは、マシンラーニングを介してRustバイナリコードで識別可能である、と私たちは主張しています。
論文 参考訳(メタデータ) (2022-10-31T19:32:18Z) - Recursively Feasible Probabilistic Safe Online Learning with Control Barrier Functions [60.26921219698514]
CBFをベースとした安全クリティカルコントローラのモデル不確実性を考慮した再構成を提案する。
次に、結果の安全制御器のポイントワイズ実現可能性条件を示す。
これらの条件を利用して、イベントトリガーによるオンラインデータ収集戦略を考案する。
論文 参考訳(メタデータ) (2022-08-23T05:02:09Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。