

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# AL2023 カーネル強化
<a name="kernel-hardening"></a>

 AL2023 の 6.1 Linux カーネルは、いくつかの強化オプションと機能を使用して設定および構築されています。

## カーネル強化オプション (アーキテクチャに依存していません)
<a name="kernel-hardening-common"></a>


| `CONFIG` オプション | AL2023/6.1/aarch64 | AL2023/6.1/x86\_64 | AL2023/6.12/aarch64 | AL2023/6.12/x86\_64 | AL2023/6.18/aarch64 | AL2023/6.18/x86\_64 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  [`CONFIG_ACPI_CUSTOM_METHOD`](#CONFIG_ACPI_CUSTOM_METHOD)  |  n  |  n  | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_BINFMT_MISC`](#CONFIG_BINFMT_MISC)  |  m  |  m  |  m  |  m  |  m  |  m  | 
|  [`CONFIG_BUG`](#CONFIG_BUG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_BUG_ON_DATA_CORRUPTION`](#CONFIG_BUG_ON_DATA_CORRUPTION)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_CFI_CLANG`](#CONFIG_CFI_CLANG)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_CFI_PERMISSIVE`](#CONFIG_CFI_PERMISSIVE)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_COMPAT`](#CONFIG_COMPAT)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_COMPAT_BRK`](#CONFIG_COMPAT_BRK)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_COMPAT_VDSO`](#CONFIG_COMPAT_VDSO)  | 該当なし |  n  | 該当なし |  n  | 該当なし |  n  | 
|  [`CONFIG_DEBUG_CREDENTIALS`](#CONFIG_DEBUG_CREDENTIALS)  |  n  |  n  | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_DEBUG_LIST`](#CONFIG_DEBUG_LIST)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_DEBUG_NOTIFIERS`](#CONFIG_DEBUG_NOTIFIERS)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEBUG_SG`](#CONFIG_DEBUG_SG)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEBUG_VIRTUAL`](#CONFIG_DEBUG_VIRTUAL)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEBUG_WX`](#CONFIG_DEBUG_WX)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_DEFAULT_MMAP_MIN_ADDR`](#CONFIG_DEFAULT_MMAP_MIN_ADDR)  |  65536  |  65536  |  65536  |  65536  |  65536  |  65536  | 
|  [`CONFIG_DEVKMEM`](compare-with-al2-kernel.md#CONFIG_DEVKMEM)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_DEVMEM`](compare-with-al2-kernel.md#CONFIG_DEVMEM)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_EFI_DISABLE_PCI_DMA`](#CONFIG_EFI_DISABLE_PCI_DMA)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_FORTIFY_SOURCE`](compare-with-al2-kernel.md#CONFIG_FORTIFY_SOURCE)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_HARDENED_USERCOPY`](#CONFIG_HARDENED_USERCOPY)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_HARDENED_USERCOPY_FALLBACK`](#CONFIG_HARDENED_USERCOPY_FALLBACK)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_HARDENED_USERCOPY_PAGESPAN`](#CONFIG_HARDENED_USERCOPY_PAGESPAN)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_HIBERNATION`](#CONFIG_HIBERNATION)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_HW_RANDOM_TPM`](#CONFIG_HW_RANDOM_TPM)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_INET_DIAG`](#CONFIG_INET_DIAG)  |  m  |  m  |  m  |  m  |  m  |  m  | 
|  [`CONFIG_INIT_ON_ALLOC_DEFAULT_ON`](#CONFIG_INIT_ON_ALLOC_DEFAULT_ON)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_INIT_ON_FREE_DEFAULT_ON`](#CONFIG_INIT_ON_FREE_DEFAULT_ON)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_INIT_STACK_ALL_ZERO`](#CONFIG_INIT_STACK_ALL_ZERO)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_IOMMU_DEFAULT_DMA_STRICT`](#CONFIG_IOMMU_DEFAULT_DMA_STRICT)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_IOMMU_SUPPORT`](#CONFIG_IOMMU_SUPPORT)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_IO_STRICT_DEVMEM`](compare-with-al2-kernel.md#CONFIG_IO_STRICT_DEVMEM)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_KEXEC`](#CONFIG_KEXEC)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_KFENCE`](#CONFIG_KFENCE)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_LDISC_AUTOLOAD`](compare-with-al2-kernel.md#CONFIG_LDISC_AUTOLOAD)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_LEGACY_PTYS`](#CONFIG_LEGACY_PTYS)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY`](#CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_MODULES`](#CONFIG_MODULES)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_MODULE_SIG`](#CONFIG_MODULE_SIG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_MODULE_SIG_ALL`](#CONFIG_MODULE_SIG_ALL)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_MODULE_SIG_FORCE`](#CONFIG_MODULE_SIG_FORCE)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_MODULE_SIG_HASH`](#CONFIG_MODULE_SIG_HASH)  |  sha512  |  sha512  |  sha512  |  sha512  |  sha512  |  sha512  | 
|  [`CONFIG_MODULE_SIG_KEY`](#CONFIG_MODULE_SIG_KEY)  |  certs/signing\_key.pem  |  certs/signing\_key.pem  |  certs/signing\_key.pem  |  certs/signing\_key.pem  |  certs/signing\_key.pem  |  certs/signing\_key.pem  | 
|  [`CONFIG_MODULE_SIG_SHA512`](#CONFIG_MODULE_SIG_SHA512)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_PAGE_POISONING`](#CONFIG_PAGE_POISONING)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_PAGE_POISONING_NO_SANITY`](#CONFIG_PAGE_POISONING_NO_SANITY)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_PAGE_POISONING_ZERO`](#CONFIG_PAGE_POISONING_ZERO)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_PANIC_ON_OOPS`](compare-with-al2-kernel.md#CONFIG_PANIC_ON_OOPS)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_PANIC_TIMEOUT`](#CONFIG_PANIC_TIMEOUT)  |  0  |  0  |  0  |  0  |  0  |  0  | 
|  [`CONFIG_PROC_KCORE`](#CONFIG_PROC_KCORE)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT`](#CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_RANDOM_TRUST_BOOTLOADER`](#CONFIG_RANDOM_TRUST_BOOTLOADER)  |  y  |  y  | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_RANDOM_TRUST_CPU`](#CONFIG_RANDOM_TRUST_CPU)  |  y  |  y  | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_REFCOUNT_FULL`](#CONFIG_REFCOUNT_FULL)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_SCHED_CORE`](#CONFIG_SCHED_CORE)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_SCHED_STACK_END_CHECK`](#CONFIG_SCHED_STACK_END_CHECK)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECCOMP`](#CONFIG_SECCOMP)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECCOMP_FILTER`](#CONFIG_SECCOMP_FILTER)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY`](#CONFIG_SECURITY)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_DMESG_RESTRICT`](compare-with-al2-kernel.md#CONFIG_SECURITY_DMESG_RESTRICT)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_LANDLOCK`](#CONFIG_SECURITY_LANDLOCK)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_LOCKDOWN_LSM`](#CONFIG_SECURITY_LOCKDOWN_LSM)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_LOCKDOWN_LSM_EARLY`](#CONFIG_SECURITY_LOCKDOWN_LSM_EARLY)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_SELINUX_BOOTPARAM`](#CONFIG_SECURITY_SELINUX_BOOTPARAM)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_SELINUX_DEVELOP`](#CONFIG_SECURITY_SELINUX_DEVELOP)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SECURITY_SELINUX_DISABLE`](compare-with-al2-kernel.md#CONFIG_SECURITY_SELINUX_DISABLE)  |  n  |  n  | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_SECURITY_WRITABLE_HOOKS`](#CONFIG_SECURITY_WRITABLE_HOOKS)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_SECURITY_YAMA`](#CONFIG_SECURITY_YAMA)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SHUFFLE_PAGE_ALLOCATOR`](#CONFIG_SHUFFLE_PAGE_ALLOCATOR)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SLAB_FREELIST_HARDENED`](#CONFIG_SLAB_FREELIST_HARDENED)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SLAB_FREELIST_RANDOM`](#CONFIG_SLAB_FREELIST_RANDOM)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SLUB_DEBUG`](#CONFIG_SLUB_DEBUG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STACKPROTECTOR`](#CONFIG_STACKPROTECTOR)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STACKPROTECTOR_STRONG`](#CONFIG_STACKPROTECTOR_STRONG)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STATIC_USERMODEHELPER`](#CONFIG_STATIC_USERMODEHELPER)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_STRICT_DEVMEM`](compare-with-al2-kernel.md#CONFIG_STRICT_DEVMEM)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_STRICT_KERNEL_RWX`](#CONFIG_STRICT_KERNEL_RWX)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_STRICT_MODULE_RWX`](#CONFIG_STRICT_MODULE_RWX)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_SYN_COOKIES`](#CONFIG_SYN_COOKIES)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_VMAP_STACK`](#CONFIG_VMAP_STACK)  |  y  |  y  |  y  |  y  |  y  |  y  | 
|  [`CONFIG_WERROR`](#CONFIG_WERROR)  |  n  |  n  |  n  |  n  |  n  |  n  | 
|  [`CONFIG_ZERO_CALL_USED_REGS`](#CONFIG_ZERO_CALL_USED_REGS)  |  n  |  n  |  n  |  n  |  n  |  n  | 

### ACPI メソッドをランタイムに挿入/置換できるようにする (CONFIG\_ACPI\_CUSTOM\_METHOD)
<a name="CONFIG_ACPI_CUSTOM_METHOD"></a>

Amazon Linux では、`root` ユーザーが任意のカーネルメモリに書き込むことができるため、このオプションは無効になっています。

このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### その他のバイナリフォーマット (`binfmt_misc`)
<a name="CONFIG_BINFMT_MISC"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。AL2023 では、この機能はオプションで、カーネルモジュールとして構築されています。

### `BUG()` サポート
<a name="CONFIG_BUG"></a>

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### カーネルメモリ構造の有効性をチェックしているときに、カーネルがデータ破損に遭遇した場合の `BUG()`
<a name="CONFIG_BUG_ON_DATA_CORRUPTION"></a>

 Linux カーネルの一部は、データ構造の内部整合性をチェックし、データ破損を検出した場合は `BUG()` できます。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### `COMPAT_BRK`
<a name="CONFIG_COMPAT_BRK"></a>

 このオプションを無効にすると (Amazon Linux がカーネルを設定する方法)、`randomize_va_space` `sysctl` 設定はデフォルトで `2` になり、`mmap` ベース、スタック、VDSO ページのランダム化に加えてヒープのランダム化も有効になります。

 1996 年以前の古い `libc.so.5` バイナリとの互換性を保つため、このオプションはカーネルに組み込まれています。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### `COMPAT_VDSO`
<a name="CONFIG_COMPAT_VDSO"></a>

 この設定オプションは `x86-64` に関連しますが、`aarch64` とは関係ありません。これを `n` に設定すると、Amazon Linux カーネルは 32 ビットの仮想化動的共有オブジェクト (VDSO) を予測可能なアドレスに表示しなくなります。このオプションを `n` に設定したことで障害が発生することがわかっている最新の `glibc` は 2004 年の `glibc` 2.3.3です。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### `CONFIG_DEBUG` ゲート強化
<a name="CONFIG_DEBUG_KERNEL"></a>

 `CONFIG_DEBUG` ゲートの Linux カーネル設定オプションは通常、デバッグ用の問題を想定して構築されたカーネルで使用するように設計されており、パフォーマンスなどは優先されません。AL2023 は`CONFIG_DEBUG_LIST` 強化オプションを有効にします。

### IOMMU を設定する前に EFI スタブで PCI デバイスの DMA を無効にする
<a name="CONFIG_EFI_DISABLE_PCI_DMA"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### カーネルとユーザースペース間のメモリコピーの強化
<a name="CONFIG_HARDENED_USERCOPY"></a>

 カーネルがユーザーすペースにメモリーをコピーしたり、ユーザー空間からメモリーをコピーしたりする必要がある場合、このオプションはいくつかのチェックを有効にすることで、ある種のヒープオーバーフローの問題を防ぐことができます。

 `CONFIG_HARDENED_USERCOPY_FALLBACK` オプションはカーネル 4.16 から 5.15 までにあって、カーネルデベロッパーが不足している許可リストエントリを `WARN()` 経由で見つけやすくするためのものです。AL2023 には 6.1 カーネルが含まれているため、このオプションは AL2023 には関係ありません。

 `CONFIG_HARDENED_USERCOPY_PAGESPAN` オプションは主にデベロッパー向けのデバッグオプションとしてカーネルに存在していましたが、AL2023 の 6.1 カーネルには適用されなくなりました。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### 休止のサポート
<a name="CONFIG_HIBERNATION"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。[オンデマンドインスタンスを休止状態にしたり](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html)、[中断されたスポットインスタンスを休止状態にしたりする](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernate-spot-instances.html)には、このオプションを有効にする必要があります。

### 乱数の生成
<a name="kernel-rng"></a>

 AL2023 カーネルは、EC2 内で適切なエントロピーが使用できるように設定されています。

### `CONFIG_INET_DIAG`
<a name="CONFIG_INET_DIAG"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。AL2023 では、この機能はオプションで、カーネルモジュールとして構築されています。

### 割り当てと割り当て解除時にすべてのカーネルページとスラブアロケーターメモリをゼロにする
<a name="kernel-init-on-alloc-free"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。これらのオプションは、この機能をデフォルトで有効にするとパフォーマンスに影響する可能性があるため、AL2023 では無効になっています。`CONFIG_INIT_ON_ALLOC_DEFAULT_ON``init_on_alloc=1` 動作はカーネルコマンドラインに追加することで有効にでき、`CONFIG_INIT_ON_FREE_DEFAULT_ON` 動作は `init_on_free=1` に追加することで有効にできます。

### すべてのスタック変数をゼロ (`CONFIG_INIT_STACK_ALL_ZERO`) に初期化する
<a name="CONFIG_INIT_STACK_ALL_ZERO"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。このオプションには GCC 12 以上が必要ですが、AL2023 には GCC 11 が含まれています。

### カーネルモジュールの署名
<a name="kernel-config-modules"></a>

 AL2023 はカーネルモジュールの署名および署名の検証を行います。サードパーティモジュールを構築するユーザーの互換性を保つため、モジュールに有効な署名を要求する `CONFIG_MODULE_SIG_FORCE` オプションは有効化されていません。すべてのカーネルモジュールが署名されていることを確認したいユーザは、これを強制するように [  Linux セキュリティモジュール (LSM) のロックダウン](#CONFIG_SECURITY_LOCKDOWN_LSM) を設定できます。

### `kexec`
<a name="CONFIG_KEXEC"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。このオプションは `kdump` 機能を使用できるように有効になっています。

### `IOMMU` サポート
<a name="CONFIG_IOMMU_SUPPORT"></a>

 AL2023 は IOMMU サポートを有効にします。`CONFIG_IOMMU_DEFAULT_DMA_STRICT` オプションはデフォルトでは有効になっていませんが、この機能はカーネルコマンドラインに `iommu.passthrough=0 iommu.strict=1` を追加することで設定できます。

### `kfence`
<a name="CONFIG_KFENCE"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### 従来の `pty` のサポート
<a name="CONFIG_LEGACY_PTYS"></a>

 AL2023 は最新の PTY インターフェイス (`devpts`) を使用します。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### Linux セキュリティモジュール (LSM) のロックダウン
<a name="CONFIG_SECURITY_LOCKDOWN_LSM"></a>

 AL2023 は `lockdown` LSM をビルドします。これにより、セキュアブートを使用するとカーネルが自動的にロックダウンされます。

 `CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY` オプションは有効になっていません。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。セキュアブートを使用しない場合は、必要に応じてロックダウン LSM を有効に設定できます。

### ページポイズニング
<a name="CONFIG_PAGE_POISONING"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。[  割り当てと割り当て解除時にすべてのカーネルページとスラブアロケーターメモリをゼロにする](#kernel-init-on-alloc-free) と同様に、AL2023 カーネルではパフォーマンスに影響する可能性があるため、このオプションは無効になっています。

### スタックプロテクター
<a name="CONFIG_STACKPROTECTOR"></a>

 AL2023 カーネルは、`-fstack-protector-strong` オプションで有効になっている GCC のスタックプロテクター機能を搭載して構築されています。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### seccomp BPF API
<a name="CONFIG_SECCOMP"></a>

 seccomp 強化機能は、`systemd` およびコンテナランタイムなどのソフトウェアがユーザースペースアプリケーションを強化するために使用されます。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### `panic()` タイムアウト
<a name="CONFIG_PANIC_TIMEOUT"></a>

 AL2023 カーネルは、この値が `0` に設定された状態で設定されています。つまり、パニックが発生してもカーネルは再起動しません。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。これは `sysctl`、`/proc/sys/kernel/panic`、およびカーネルコマンドラインで設定できます。

### セキュリティモデル
<a name="CONFIG_SECURITY"></a>

 AL2023 ではデフォルトで許可モードの SELinux が有効になっています。詳細については、「[AL2023 の SELinux モードの設定](selinux-modes.md)」を参照してください。

 [  Linux セキュリティモジュール (LSM) のロックダウン](#CONFIG_SECURITY_LOCKDOWN_LSM) および `yama` モジュールも有効になっています。

### `/proc/kcore`
<a name="CONFIG_PROC_KCORE"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### システムコールエントリでのカーネルスタックオフセットのランダム化
<a name="CONFIG_RANDOMIZE_KSTACK_OFFSET_DEFAULT"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。これはカーネルコマンドラインで `randomize_kstack_offset=on` を設定することで有効にできます。

### 参照カウントチェック (`CONFIG_REFCOUNT_FULL`)
<a name="CONFIG_REFCOUNT_FULL"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。このオプションはパフォーマンスに影響する可能性があるため、現時点では有効になっていません。

### スケジューラーによる SMT コアの認識 (`CONFIG_SCHED_CORE`)
<a name="CONFIG_SCHED_CORE"></a>

 AL2023 カーネルは `CONFIG_SCHED_CORE` を使用して構築されているため、ユーザースペースのアプリケーションで `prctl(PR_SCHED_CORE)` を使用できます。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### `schedule()`(`CONFIG_SCHED_STACK_END_CHECK`) 呼び出しでスタックに問題がないか確認する
<a name="CONFIG_SCHED_STACK_END_CHECK"></a>

 AL2023 カーネルは `CONFIG_SCHED_STACK_END_CHECK` が有効になっている状態で構築されています。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### メモリアロケーターの強化
<a name="kernel-allocator-hardening"></a>

 AL2023 カーネルでは、`CONFIG_SHUFFLE_PAGE_ALLOCATOR`、`CONFIG_SLAB_FREELIST_HARDENED`、および `CONFIG_SLAB_FREELIST_RANDOM` オプションを使用してカーネルメモリアロケータを強化できます。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### SLUB デバッグのサポート
<a name="CONFIG_SLUB_DEBUG"></a>

 AL2023 カーネルは、このオプションによってカーネルコマンドラインで有効にできるアロケータのオプションのデバッグ機能を `CONFIG_SLUB_DEBUG` で有効にします。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### CONFIG\_STATIC\_USER\_MODE\_HELPER
<a name="CONFIG_STATIC_USERMODEHELPER"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。これは、現在 Amazon Linux にはない配布からの特別なサポートが`CONFIG_STATIC_USERMODEHELPER` で必要なためです。

### 読み取り専用カーネルテキストおよび rodata (`CONFIG_STRICT_KERNEL_RWX` および `CONFIG_STRICT_MODULE_RWX`)
<a name="CONFIG_STRICT_KERNEL_RWX"></a>

 AL2023 カーネルは、カーネルとカーネルモジュールのテキストと rodata メモリを読み取り専用としてマークし、テキスト以外のメモリは実行不可としてマークするように設定されています。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### TCP syncookie のサポート (`CONFIG_SYN_COOKIES`)
<a name="CONFIG_SYN_COOKIES"></a>

 AL2023 カーネルは TCP syncookie をサポートするように構築されています。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### ガードページ (`CONFIG_VMAP_STACK`) 付きの仮想化マップスタック
<a name="CONFIG_VMAP_STACK"></a>

 AL2023 カーネルは `CONFIG_VMAP_STACK` で構築されているため、ガードページ付きの仮想化マッピングカーネルスタックが可能になります。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### コンパイラ警告をエラー (`CONFIG_WERROR`) として構築する
<a name="CONFIG_WERROR"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### 関数 exit (`CONFIG_ZERO_CALL_USED_REGS`) 時にレジスタをゼロにする
<a name="CONFIG_ZERO_CALL_USED_REGS"></a>

 このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### ユーザースペース割り当ての最小アドレス
<a name="CONFIG_DEFAULT_MMAP_MIN_ADDR"></a>

 この強化オプションは、カーネル NULL ポインターのバグの影響を軽減するのに役立ちます。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### `clang` 特定の強化オプション
<a name="kernel-hardening-clang"></a>

 AL2023 カーネルは clang ではなく GCC で構築されているため、`CONFIG_CFI_CLANG` 強化オプションを有効にすることはできません。`CONFIG_CFI_PERMISSIVE` も適用されません。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

## x86-64 固有のカーネル強化オプション
<a name="kernel-hardening-x86-64"></a>


| `CONFIG` オプション | AL2023/6.1/aarch64 | AL2023/6.1/x86\_64 | AL2023/6.12/aarch64 | AL2023/6.12/x86\_64 | AL2023/6.18/aarch64 | AL2023/6.18/x86\_64 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  [`CONFIG_AMD_IOMMU`](#CONFIG_AMD_IOMMU)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_AMD_IOMMU_V2`](#CONFIG_AMD_IOMMU_V2)  | 該当なし |  y  | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_IA32_EMULATION`](#CONFIG_IA32_EMULATION)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_INTEL_IOMMU`](#CONFIG_INTEL_IOMMU)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_INTEL_IOMMU_DEFAULT_ON`](#CONFIG_INTEL_IOMMU_DEFAULT_ON)  | 該当なし |  n  | 該当なし |  n  | 該当なし |  n  | 
|  [`CONFIG_INTEL_IOMMU_SVM`](#CONFIG_INTEL_IOMMU_SVM)  | 該当なし |  n  | 該当なし |  n  | 該当なし |  n  | 
|  [`CONFIG_LEGACY_VSYSCALL_NONE`](#CONFIG_LEGACY_VSYSCALL_NONE)  | 該当なし |  n  | 該当なし |  n  | 該当なし |  n  | 
|  [`CONFIG_MODIFY_LDT_SYSCALL`](#CONFIG_MODIFY_LDT_SYSCALL)  | 該当なし |  n  | 該当なし |  n  | 該当なし |  n  | 
|  [`CONFIG_PAGE_TABLE_ISOLATION`](#CONFIG_PAGE_TABLE_ISOLATION)  | 該当なし |  y  | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_RANDOMIZE_MEMORY`](#CONFIG_RANDOMIZE_MEMORY)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_X86_64`](#CONFIG_X86_64)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_X86_MSR`](#CONFIG_X86_MSR)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_X86_VSYSCALL_EMULATION`](#CONFIG_X86_VSYSCALL_EMULATION)  | 該当なし |  y  | 該当なし |  y  | 該当なし |  y  | 
|  [`CONFIG_X86_X32`](#CONFIG_X86_X32)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_X86_X32_ABI`](#CONFIG_X86_X32_ABI)  | 該当なし |  n  | 該当なし |  n  | 該当なし |  n  | 

### x86-64 サポート
<a name="CONFIG_X86_64"></a>

 基本的な x86-64 サポートには、物理アドレス拡張 (PAE) と実行なし (NX) ビットのサポートが含まれます。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### AMD と Intel IOMMU のサポート
<a name="kernel-x86-64-iommu"></a>

 AL2023 カーネルは AMD と Intel IOMMUsをサポートするように構築されています。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

 `CONFIG_INTEL_IOMMU_DEFAULT_ON` オプションは設定されていませんが、カーネルコマンドラインに `intel_iommu=on` を渡すことで有効にできます。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

 `CONFIG_INTEL_IOMMU_SVM` オプションは現在 AL2023 では有効化されていません。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### 32 ビットユーザースペースのサポート
<a name="kernel-hardening-32bit-support"></a>

**重要**  
 32 ビット x86 ユーザースペースのサポートは廃止され、32 ビットユーザースペースバイナリの実行のサポートは Amazon Linux の今後のメジャーバージョンで削除される可能性があります。

**注記**  
 AL2023 には 32 ビットパッケージは含まれなくなりましたが、カーネルは 32 ビットユーザースペースの実行を引き続きサポートします。詳細については「[32 ビット x86 (i686) パッケージ](compare-with-al2.md#i686)」を参照してください。

 32 ビットユーザースペースアプリケーションの実行をサポートするため、AL2023 では `CONFIG_X86_VSYSCALL_EMULATION` オプションは有効にせず、`CONFIG_IA32_EMULATION`、`CONFIG_COMPAT`、`CONFIG_X86_VSYSCALL_EMULATION` オプションを有効にします。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

 64 ビットプロセッサ用の x32 ネイティブ 32 ビット ABI は有効になっていません (`CONFIG_X86_X32` および `CONFIG_X86_X32_ABI`)。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### x86 モデル固有レジスタ (MSR) のサポート
<a name="CONFIG_X86_MSR"></a>

 `turbostat` をサポートするため `CONFIG_X86_MSR` オプションは有効になっています。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### `modify_ldt` システムコール
<a name="CONFIG_MODIFY_LDT_SYSCALL"></a>

 AL2023 では、ユーザープログラムが `modify_ldt` システムコールを使用して x86 ローカル記述子テーブル (LDT) を変更することはできません。この呼び出しは 16 ビットコードまたはセグメント化されたコードを実行するために必要です。この呼び出しがないと、WINE でプログラムを実行したり、非常に古いスレッドライブラリを実行したりする場合など、`dosemu` などのソフトウェアが動作しなくなる可能性があります。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### ユーザーモードでカーネルマッピングを削除する
<a name="CONFIG_PAGE_TABLE_ISOLATION"></a>

 AL2023 は、カーネルアドレスの大部分がユーザースペースにマップされないようにカーネルを設定します。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### カーネルメモリセクションをランダム化する
<a name="CONFIG_RANDOMIZE_MEMORY"></a>

 AL2023 は、カーネルメモリセクションのベース仮想化アドレスをランダム化するようにカーネルを設定します。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

## aarch64 固有のカーネル強化オプション
<a name="kernel-hardening-aarch64"></a>


| `CONFIG` オプション | AL2023/6.1/aarch64 | AL2023/6.1/x86\_64 | AL2023/6.12/aarch64 | AL2023/6.12/x86\_64 | AL2023/6.18/aarch64 | AL2023/6.18/x86\_64 | 
| --- | --- | --- | --- | --- | --- | --- | 
|  [`CONFIG_ARM64_BTI`](#CONFIG_ARM64_BTI)  |  y  | 該当なし |  y  | 該当なし |  y  | 該当なし | 
|  [`CONFIG_ARM64_BTI_KERNEL`](#CONFIG_ARM64_BTI_KERNEL)  | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 該当なし | 
|  [`CONFIG_ARM64_PTR_AUTH`](#CONFIG_ARM64_PTR_AUTH)  |  y  | 該当なし |  y  | 該当なし |  y  | 該当なし | 
|  [`CONFIG_ARM64_PTR_AUTH_KERNEL`](#CONFIG_ARM64_PTR_AUTH_KERNEL)  |  y  | 該当なし |  y  | 該当なし |  y  | 該当なし | 
|  [`CONFIG_ARM64_SW_TTBR0_PAN`](#CONFIG_ARM64_SW_TTBR0_PAN)  |  y  | 該当なし |  y  | 該当なし |  y  | 該当なし | 
|  [`CONFIG_UNMAP_KERNEL_AT_EL0`](#CONFIG_UNMAP_KERNEL_AT_EL0)  |  y  | 該当なし |  y  | 該当なし |  y  | 該当なし | 

### ブランチターゲット識別
<a name="CONFIG_ARM64_BTI"></a>

 AL2023 カーネルでは、ブランチターゲット識別 (`CONFIG_ARM64_BTI`) がサポートされます。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

 AL2023 で GCC を使用して構築された `CONFIG_ARM64_BTI_KERNEL` オプションは有効になっていません。また、[gcc のバグ](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106671)により、このオプションを使ったカーネル構築のサポートは、[アップストリームのカーネルでは現在無効になっています](https://github.com/torvalds/linux/commit/c0a454b9044fdc99486853aa424e5b3be2107078)。このオプションは[カーネルセルフプロテクションプロジェクト (KSPP) の推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つですが、AL2023 ではこの設定オプションを KSPP が推奨するものに設定していません。

### ポインター認証 (`CONFIG_ARM64_PTR_AUTH`)
<a name="CONFIG_ARM64_PTR_AUTH"></a>

 AL2023 カーネルは、リターン指向プログラミング (ROP) 手法の軽減に役立つポインター認証拡張機能 (ARMv8.3 拡張機能の一部) をサポートするように構築されています。[Graviton](https://aws.amazon.com/ec2/graviton) でのポインター認証に必要なハードウェアサポートは Graviton 3 で導入されました。

 `CONFIG_ARM64_PTR_AUTH` オプションは有効になっており、ユーザースペースのポインター認証をサポートします。`CONFIG_ARM64_PTR_AUTH_KERNEL` オプションも有効になっているため、AL2023 カーネルはリターンアドレス保護を自分で使うことができます。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### `TTBR0_EL1` 切り替えを決してしない特権アクセスをエミュレートする
<a name="CONFIG_ARM64_SW_TTBR0_PAN"></a>

 このオプションは、ユーザーアクセスルーチンによって一時的にのみ有効な値に設定される `TTBR0_EL1` で、カーネルがユーザー空間のメモリに直接アクセスすることを防ぎます。

 このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。

### ユーザースペースでの実行時にカーネルをアンマップする
<a name="CONFIG_UNMAP_KERNEL_AT_EL0"></a>

 AL2023 カーネルは、ユーザースペース (`CONFIG_UNMAP_KERNEL_AT_EL0`) での実行時にカーネルをアンマップするように設定されています。このオプションは、[カーネルセルフプロテクションプロジェクト推奨設定](https://kernsec.org/wiki/index.php/Kernel_Self_Protection_Project/Recommended_Settings)の 1 つです。