将来のApple Silicon Macでは、カーネル拡張機能はサポートされない
Appleは、自社製チップを搭載した将来のMacコンピュータがカーネル拡張機能をまったくサポートしないことを認めています、これにより、macOSのセキュリティがさらに強化され、安定性が向上することになります
カーネル拡張はセキュリティに悪い
これは、iOS 14、iPadOS 14、macOS Big Sur、tvOS 14、およびwatchOS 7の最新のセキュリティ機能を詳述した「Apple Platform Security Guid February 2021」のアップデート版で明らかにされており、サードパーティ製カーネル拡張がセキュリティの観点から悪いことを認めています
Apple Platform Security February 2021 P.32
In addition to enabling users to run older versions of macOS, Reduced Security is required
for other actions that can put a user’s system security at risk, such as introducing thirdparty kernel extensions
『ユーザーが古いバージョンのmacOSを実行できるようにすることに加えて、サードパーティ製のカーネル拡張機能を導入するなど、ユーザーのシステムセキュリティを危険にさらす可能性のある他の行為に対しても、セキュリティの軽減が必要です』
Apple Supportから入手でき、PDF文書としても入手できる196ページの文書『Apple Platform Security』には、サードパーティ製のカーネル拡張がmacOSカーネルと同じ権限を持つと説明されています、その結果、カーネルの拡張機能に脆弱性が見つかった場合には、オペレーティング・システムが完全に危険にさらされる可能性があります
This
is why developers are being strongly encouraged to adopt system extensions before kext support is removed from macOS for future Mac computers with Apple silicon.
『このため、Apple Siliconを搭載した将来のMacコンピュータでは、カーネル拡張機能のサポートがmacOSから削除される前に、開発者はシステム拡張機能を採用することが強く推奨されています』
また、macOSにはSystem Integrity Protectionと呼ばれる機能が搭載されており、システムの一部が変更されないように積極的に保護したり、安全ではない拡張機能のインストールをブロックしたりします
macOSカーネル拡張機能について
多くのオペレーティングシステムでは、カーネルはすべてのシステムリソースを完全に制御する中心的なコンポーネントです
カーネルは常にメモリ内に常駐し、メモリ割り当て、周辺機器へのアクセス、I/O要求などの重要な低レベルの操作を処理します、これは、Macの電源を入れると最初にロードされるソフトウェアコンポーネントの1つです
カーネル拡張は、開発者がmacOSカーネルにカスタムコードを注入することを可能にし、通常は特定の周辺機器との互換性を有効にしたり、非常に高度なアプリケーションを作成したりします、しかし、AppleはmacOSカーネル拡張の使用を推奨していません
2年以上前にリリースされたmacOS Catalinaは、カーネル拡張をサポートする最後のバージョンのMac OSでした、Appleは現在、セキュリティを犠牲にすることなくmacOSの機能を拡張する方法として、システム拡張を提供しています
カーネル拡張とは異なり、システム拡張はカーネルレベルではなくユーザー空間で保護されます、システム拡張はユーザ空間で実行されるため、特権が制限されます
macOSシステム拡張について
Appleのサポート文書『システム機能拡張と macOS について』では、macOSシステム拡張について次のように説明しています
システム機能拡張はバックグラウンドで働き、Mac の機能を拡張してくれます。一部の App はカーネル機能拡張 (kext) をインストールします。kext は一種のシステム機能拡張ですが、比較的古い (最近の技術と比べれば安全性も信頼性も劣る) 手法を用いて機能します。Mac は、これらをレガシーのシステム機能拡張として区別します
システム拡張は、ロードされる前にユーザの許可を求めることができます。この場合、ユーザーは「システム環境設定」>「セキュリティとプライバシー」で拡張を許可するよう求められます
Apple シリコン搭載の Mac では、場合によっては先に起動セキュリティユーティリティを使い、セキュリティポリシーを「低セキュリティ」に設定して、「確認済みの開発元から提供されたカーネル機能拡張のユーザ管理を許可」チェックボックスを選択しておく必要があります
Macが古いサードパーティ製の拡張機能を使用している場合は、システムアラートが表示されることがあります
このような古い拡張モジュールは更新する必要があるか、将来のバージョンのmacOSと互換性がなくなります
LEAVE A REPLY