プロセスメモリをさらに保護するために OpenBSD に加えられた変更

Theo de Raadt は、ユーザー空間のプロセス メモリをさらに保護するために、OpenBSD コードベースに一連のパッチを追加しました。 開発者には、新しいシステム コールと、メモリ (メモリ マッピング) に反映するときにアクセス権を修正できる、同じ名前の関連ライブラリ関数 mimmutable が提供されます。 コミット後、メモリ領域に設定された権限 (書き込みや実行の禁止など) は、その後 mmap()、mprotect()、および munmap() 関数を呼び出して変更することはできません。変更しようとすると EPERM エラーが生成されます。変えること。

オブジェクト ファイルのリフレクト メモリの権限を変更する機能を制御するために、新しい Mutable BSS セクション (.openbsd.mutable、Mutable Block starting Symbol) が提案され、新しいフラグ PF_MUTABLE および UVM_ET_IMMUTABLE が追加されました。 「openbsd.mutable」セクションを定義し、メモリ ページ境界に合わせて BSS 内の別の領域に配置するためのサポートがリンカーに追加されました。 mimmutable 関数を呼び出すことにより、「openbsd.mutable」とマークされたセクションを除くすべてのミラー領域を不変としてマークすることができます。 この新機能は、OpenBSD 7.3 リリースでユーザーに展開される予定です。

出所: オープンネット.ru

コメントを追加します