何年も前に、Linux x86_64 カーネルを Position Independent Executable (PIE) コードとしてビルドして、システムのセキュリティをさらに強化できるようにするためのパッチがありました。 Antgroup のエンジニアは最近、Linux x86_64 PIE サポートに取り組んでおり、先週、新しいパッチ シリーズを送信しました。
数年前の Linux PIE パッチに基づいて、Antgroup の Hou Wenlong が、Linux x86_64 PIE ビルドを許可するための更新されたパッチを送信しました:
“これらのパッチは、ビルドに必要な変更を行います。カーネルを x86_64 上の Position Independent Executable (PIE) として. PIE カーネルは仮想アドレス空間の上位 2G より下に再配置できます. そしてこのパッチセットはカーネルイメージをアドレス空間の上位 512G に再配置できるようにする例を提供します.
PIE カーネルの最終的な目的は、カーネルのセキュリティを向上させることと、カーネル イメージの仮想アドレスの [柔軟性] を高めることです。
パッチセットは、Thomas Garnier の X86 PIE パッチセット v6 および v11 に基づいています。ただし、いくつかの設計変更が行われ、いくつかのバグは、さまざまな構成とコンパイラでテストすることによって修正されています。”
Linux を作成しながら位置に依存しない実行可能カーネルを使用すると、システムのセキュリティが強化されます。欠点は、カーネル イメージが大きくなり、命令数がわずかに多くなり、パフォーマンスに影響を与える可能性があることです。
Linux x86_64 PIE サポートのこの斬新な取り組みについて詳しく知りたい方は、このパッチ シリーズには、現在「コメント募集」タグが付いています。