Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Der 6.1-Linux-Kernel in AL2 023 ist mit verschiedenen Hardening-Optionen und -Funktionen konfiguriert und gebaut.
Kernel-Hardening-Optionen (architekturunabhängig)
Erlaubt das Einfügen/Ersetzen von ACPI-Methoden zur Laufzeit (CONFIG_ACPI_CUSTOM_METHOD)
Diese Option ist in Amazon Linux deaktiviert, da sie root
-Benutzern erlaubt, in beliebigen Kernelspeicher zu schreiben.
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Verschiedene Binärformate (binfmt_misc
)
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen, 023 legt diese Konfigurationsoption jedoch nicht auf die von KSPP empfohlenen Einstellungen fest
BUG()
-Support
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
BUG()
wenn der Kernel bei der Gültigkeitspprüfung der Kernel-Speicherstrukturen auf beschädigte Daten stößt
Einige Teile des Linux-Kernels prüfen die interne Konsistenz von Datenstrukturen und können BUG()
, falls beschädigte Daten gefunden werden.
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
COMPAT_BRK
Wenn diese Option deaktiviert ist (dies ist die Kernelkonfiguration in Amazon Linux), wird die randomize_va_space
-sysctl
-Einstellung standardmäßig auf 2
gesetzt, wodurch zusätzlich eine Randomisierungen der mmap
-Basis-, -Stack- und -VDSO-Seite aktiviert wird.
Der Kernel bietet diese Option, um Kompatibilität mit einigen alten libc.so.5
-Binärdateien aus 1996 und früher zu gewährleisten.
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
COMPAT_VDSO
Diese Konfigurationsoption ist relevant für x86-64
und nicht aarch64
. Wenn Sie diese Option auf n
setzen, macht der Amazon Linux-Kernel kein virtuelles dynamisches Shared Object (VDSO) mit 32 Bit an einer vorhersehbaren Adresse sichtbar. Die jüngste glibc
, von der bekannt ist, dass sie durch die Festlegung dieser Option auf n
beschädigt wurde, ist glibc
2.3.3 aus dem Jahr 2004.
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
CONFIG_DEBUG
Gated Hardening
Die Konfigurationsoptionen des Linux-Kernels, von CONFIG_DEBUG
denen gesteuert wird, sind normalerweise für die Verwendung in Kerneln konzipiert, die für Debugging-Probleme gebaut wurden, und Dinge wie Leistung haben keine Priorität. AL2023 aktiviert die Härtungsoption. CONFIG_DEBUG_LIST
Deaktivieren von DMA für PCI-Geräte im EFI-Stub vor der IOMMU-Konfigurierung
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
-Hardening für Speicherkopierung zwischen Kernel und Userspace
Wenn der Kernel Speicher in den oder aus dem Userspace kopieren muss, aktiviert diese Option einige Prüfungen, die vor einigen Arten von Heap-Overflow-Problemen schützen können.
Die CONFIG_HARDENED_USERCOPY_FALLBACK
-Option war bereits in den Kerneln 4.16 bis 5.15 vorhanden, um Kernel-Entwicklern zu helfen, fehlende Allowlist-Einträge mithilfe von WARN()
aufzufinden. Da mit AL2 023 ein 6.1-Kernel ausgeliefert wird, ist diese Option für 023 nicht mehr relevant. AL2
Die CONFIG_HARDENED_USERCOPY_PAGESPAN
Option existierte in Kerneln hauptsächlich als Debugging-Option für Entwickler und gilt in 023 nicht mehr für den 6.1-Kernel. AL2
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Hibernation-Unterstützung
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Zufallszahlengenerierung
Der AL2 023-Kernel ist so konfiguriert, dass sichergestellt ist, dass eine angemessene Entropie für die Verwendung innerhalb des Kernels verfügbar ist. EC2
CONFIG_INET_DIAG
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Der gesamte Kernel-Page- und Slab-Allocator-Speicher wird bei Zuweisung und Freigabe auf Null gesetzt
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen EinstellungenCONFIG_INIT_ON_ALLOC_DEFAULT_ON
-Verhalten kann durch Hinzufügen von init_on_alloc=1
zur Kernel-Befehlszeile aktiviert werden, und das CONFIG_INIT_ON_FREE_DEFAULT_ON
-Verhalten kann durch Hinzufügen von init_on_free=1
aktiviert werden.
Alle Stack-Variablen als Null (CONFIG_INIT_STACK_ALL_ZERO
) initialisieren
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Signieren des Kernel-Moduls
AL2023 signiert und validiert die Signaturen von Kernelmodulen. Die CONFIG_MODULE_SIG_FORCE
-Option, nach der Module über eine gültige Signatur verfügen müssten, ist nicht aktiviert, um die Kompatibilität für Benutzer zu gewährleisten, die Module von Drittanbietern erstellen. Für Benutzer, die sicherstellen möchten, dass alle Kernelmodule signiert sind, kann Lockdown Linux Security Module (LSM) so konfiguriert werden, dass eine Verifizierung erzwungen wird.
kexec
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungenkdump
-Funktionalität genutzt werden kann.
IOMMU
-Unterstützung
AL2023 aktiviert die IOMMU-Unterstützung. Die CONFIG_IOMMU_DEFAULT_DMA_STRICT
-Option ist standardmäßig nicht aktiviert, aber diese Funktionalität kann durch eine Hinzufügung von iommu.passthrough=0 iommu.strict=1
zur Kernel-Befehlszeile konfiguriert werden.
kfence
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Legacy-pty
-Unterstützung
AL2023 verwendet die moderne PTY Schnittstelle (devpts
).
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Lockdown Linux Security Module (LSM)
AL2023 erstellt das lockdown
LSM, das den Kernel automatisch sperrt, wenn Secure Boot verwendet wird.
Die CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY
-Option ist nicht aktiviert. Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Page Poisoning
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Stack Protector
Der AL2 023-Kernel ist mit der Stack-Protector-Funktion von gebaut GCC aktiviert mit der Option. -fstack-protector-strong
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
seccomp BPF API
Das Tool seccomp Die Härtungsfunktion wird von Software wie systemd
Container-Runtimes verwendet, um Userspace-Anwendungen zu schützen.
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
panic()
timeout
Der AL2 023-Kernel ist so konfiguriert, dass dieser Wert auf gesetzt ist0
, was bedeutet, dass der Kernel nicht neu gestartet wird, wenn er in Panik gerät. Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungensysctl
/proc/sys/kernel/panic
oder über die Kernel-Befehlszeile konfiguriert werden.
Sicherheitsmodelle
AL2023 ist standardmäßig im Modus „Zulässig“ aktiviert SELinux . Weitere Informationen finden Sie unter SELinux Einstellmodi für AL2 023.
Die yama
- und Lockdown Linux Security Module (LSM) -Module sind ebenfalls aktiviert.
/proc/kcore
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Randomisierung des Kernel-Stack-Offsets bei Eingabe von „syscall“
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungenrandomize_kstack_offset=on
in der Kernel-Befehlszeile aktiviert werden.
Prüfungen zur Referenzzählung (CONFIG_REFCOUNT_FULL
)
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Scheduler ist sich bewusst für SMT Kerne () CONFIG_SCHED_CORE
Mit dem AL2 023-Kernel wurde gebautCONFIG_SCHED_CORE
, der die Verwendung von Userspace-Anwendungen ermöglicht. prctl(PR_SCHED_CORE)
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Stack-Fehlerprüfung bei Aufrufen von schedule()
(CONFIG_SCHED_STACK_END_CHECK
)
Der AL2 023-Kernel wurde mit aktivierter Option gebaut. CONFIG_SCHED_STACK_END_CHECK
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Memory Allocator Hardening
Der AL2 023-Kernel ermöglicht das Härten des Kernel-Speicherzuweisers mit den OptionenCONFIG_SHUFFLE_PAGE_ALLOCATOR
, undCONFIG_SLAB_FREELIST_HARDENED
. CONFIG_SLAB_FREELIST_RANDOM
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
SLUB Debugging-Unterstützung
Der AL2 023-Kernel wird aktiviert, CONFIG_SLUB_DEBUG
da diese Option optionale Debugging-Funktionen für den Allocator aktiviert, die in der Kernel-Befehlszeile aktiviert werden können. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
CONFIG_STATIC_USERMODEHELPER
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen EinstellungenCONFIG_STATIC_USERMODEHELPER
besonderen Support von der Distribution benötigt, der derzeit in Amazon Linux nicht verfügbar ist.
Schreibgeschützter Kerneltext und rodata (und) CONFIG_STRICT_KERNEL_RWX
CONFIG_STRICT_MODULE_RWX
Der AL2 023-Kernel ist so konfiguriert, dass er Kernel- und Kernelmodultext markiert und rodata Speicher als schreibgeschützt und Nicht-Text-Speicher als nicht ausführbar markiert. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
TCP Syncookie-Unterstützung () CONFIG_SYN_COOKIES
Der AL2 023-Kernel wurde mit Unterstützung für TCP-Syncookies gebaut. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Virtuell zugeordneter Stack mit Guard-Seiten (CONFIG_VMAP_STACK
)
Der AL2 023-Kernel ist mit CONFIG_VMAP_STACK
gebaut und ermöglicht virtuell zugeordnete Kernel-Stacks mit Schutzseiten. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Build mit Compiler-Warnungen als Fehler angezeigt (CONFIG_WERROR
)
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Nullstellung des Registers bei Funktionsbeendigung (CONFIG_ZERO_CALL_USED_REGS
)
Obwohl diese Option zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Mindestadresse für Userspace-Zuweisungen
Diese Hardening-Option kann die Auswirkungen von Kernel-NULL-Pointer-Bugs reduzieren. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
clang
spezifische Hardening-Optionen
Der 023-Kernel besteht aus AL2 GCC eher als clang, sodass die CONFIG_CFI_CLANG
Härtungsoption nicht aktiviert werden kann, was auch bedeutet, dass sie CONFIG_CFI_PERMISSIVE
nicht anwendbar ist. Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Spezifische Kernel-Hardening-Optionen für x86-64
CONFIG -Option |
AL2023/6.1/aarch64 | AL2023/6,1/x86_64 | AL2023/6.12/aarch64 | AL2023/6,12/x86_64 |
---|---|---|---|---|
CONFIG_AMD_IOMMU | N/A |
y
|
– |
y
|
CONFIG_AMD_IOMMU_V2 | – |
y
|
– | – |
CONFIG_IA32_EMULATION | – |
y
|
– |
y
|
CONFIG_INTEL_IOMMU | – |
y
|
– |
y
|
CONFIG_INTEL_IOMMU_DEFAULT_ON | – |
n
|
– |
n
|
CONFIG_INTEL_IOMMU_SVM | – |
n
|
– |
n
|
CONFIG_LEGACY_VSYSCALL_NONE | – |
n
|
– |
n
|
CONFIG_MODIFY_LDT_SYSCALL | – |
n
|
– |
n
|
CONFIG_PAGE_TABLE_ISOLATION | – |
y
|
– | – |
CONFIG_RANDOMIZE_MEMORY | – |
y
|
– |
y
|
CONFIG_X86_64 | – |
y
|
– |
y
|
CONFIG_X86_MSR | – |
y
|
– |
y
|
CONFIG_X86_VSYSCALL_EMULATION | – |
y
|
– |
y
|
CONFIG_X86_X32 | – | – | – | – |
CONFIG_X86_X32_ABI | – |
n
|
N/A |
n
|
x86-64-Unterstützung
Basis-Support für x86-64 umfasst die Unterstützung für Physical Address Extension (PAE) und No-Execute-Bits (NX). Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
AMD- und Intel-IOMMU-Support
Der AL2 023-Kernel wird mit Unterstützung für AMD und Intel gebaut IOMMUs. Diese Option ist eine der empfohlenen Einstellungen für das Kernel Self Protection Project
Die CONFIG_INTEL_IOMMU_DEFAULT_ON
-Option ist nicht gesetzt, kann aber durch Übergabe von intel_iommu=on
an die Kernel-Befehlszeile aktiviert werden. Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Die CONFIG_INTEL_IOMMU_SVM
Option ist derzeit in 023 nicht aktiviert. AL2 Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Support für 32-Bit-Userspace
Wichtig
Support für 32-Bit-x86-Userspace ist veraltet und Unterstützung für die Ausführung von 32-Bit-Userspace-Binärdateien wird möglicherweise in einer zukünftigen Hauptversion von Amazon Linux entfernt.
Anmerkung
AL2023 enthält zwar keine 32-Bit-Pakete mehr, aber der Kernel unterstützt weiterhin die Ausführung von 32-Bit-Benutzerbereichen. Weitere Informationen finden Sie unter 32-Bit x86-(i686)-Pakete.
Um die Ausführung von 32-Bit-Userspace-Anwendungen zu unterstützen, aktiviert AL2 023 die CONFIG_X86_VSYSCALL_EMULATION
Option nicht und aktiviert die Optionen, und. CONFIG_IA32_EMULATION
CONFIG_COMPAT
CONFIG_X86_VSYSCALL_EMULATION
Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
Das Tool x32 Das native 32-Bit-ABI für 64-Bit-Prozessoren ist nicht aktiviert (und). CONFIG_X86_X32
CONFIG_X86_X32_ABI
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Modellspezifisches x86-Register (MSR) Unterstützung
Die CONFIG_X86_MSR
-Option ist aktiviert, um Unterstützung für turbostat
zuzulassen. Diese Option gehört zwar zu den vom Kernel Self Protection Project (KSPP) empfohlenen Einstellungen
modify_ldt
-Syscall
AL2023 erlaubt Benutzerprogrammen nicht, die x86-Local Descriptor Table (LDT) mit dem Syscall zu ändern. modify_ldt
Dieser Aufruf ist erforderlich, um 16-Bit-Code oder segmentierten Code auszuführen, und sein Fehlen kann dazu führen, dass Software beschädigt wird, z. B. das Ausführen einiger Programme unter dosemu
WINEund einige sehr alte Threading-Bibliotheken. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Entfernen der Kernelzuordnung im Benutzermodus
AL2023 konfiguriert den Kernel so, dass die Mehrheit der Kerneladressen nicht dem Benutzerbereich zugeordnet wird. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Randomisieren von Kernel-Speicherbereichen
AL2023 konfiguriert den Kernel so, dass er die virtuellen Basisadressen der Kernel-Speicherbereiche nach dem Zufallsprinzip sortiert. Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
aarch64-spezifische Kernel-Hardening-Optionen
CONFIG -Option |
AL2023/6.1/aarch64 | AL2023/6,1/x86_64 | AL2023/6.12/aarch64 | AL2023/6,12/x86_64 |
---|---|---|---|---|
CONFIG_ARM64_BTI |
y
|
N/A |
y
|
– |
CONFIG_ARM64_BTI_KERNEL | – | – | – | – |
CONFIG_ARM64_PTR_AUTH |
y
|
– |
y
|
– |
CONFIG_ARM64_PTR_AUTH_KERNEL |
y
|
– |
y
|
– |
CONFIG_ARM64_SW_TTBR0_PAN |
y
|
– |
y
|
– |
CONFIG_UNMAP_KERNEL_AT_EL0 |
y
|
– |
y
|
N/A |
Identifizierung des -Abzweigungsziels
Der AL2 023-Kernel ermöglicht die Unterstützung von Branch Target Identification (). CONFIG_ARM64_BTI
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Die CONFIG_ARM64_BTI_KERNEL
Option ist in AL2 023 nicht aktiviert, da sie mit erstellt wurde GCC, und die Unterstützung für das Erstellen des Kernels mit dieser Option ist derzeit im Upstream-Kernel aufgrund eines GCC−Fehlers
Pointer-Authentifizierung (CONFIG_ARM64_PTR_AUTH
)
Der AL2 023-Kernel wurde mit Unterstützung für die Pointer Authentication-Erweiterung (Teil der ARMv8 3.3-Erweiterungen) entwickelt, die zur Abschwächung von Techniken der Return Oriented Programming (ROP) verwendet werden kann. Die erforderliche Hardwareunterstützung für Pointer-Authentifizierung unter Graviton
Die CONFIG_ARM64_PTR_AUTH
-Option ist aktiviert und unterstützt die Pointer-Authentifizierung für den Userspace. Da die CONFIG_ARM64_PTR_AUTH_KERNEL
Option ebenfalls aktiviert ist, kann der AL2 023-Kernel den Absenderadressschutz für sich selbst nutzen.
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Privilegierten Zugriff emulieren – Niemals TTBR0_EL1
-Switching verwenden
Diese Option verhindert direkten Kernel-Zugriff auf den Userspace-Speicher. TTBR0_EL1
wird von den Benutzerzugriffsroutinen nur vorübergehend auf einen gültigen Wert gesetzt.
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project
Entfernen der Kernel-Zuweisung bei Ausführung im Userspace
Der AL2 023-Kernel ist so konfiguriert, dass er die Zuordnung des Kernels aufhebt, wenn er in userspace () ausgeführt wird. CONFIG_UNMAP_KERNEL_AT_EL0
Diese Option ist eine der empfohlenen Einstellungen des Kernel Self Protection Project