Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Il kernel Linux 6.1 nella versione AL2 023 è configurato e costruito con diverse opzioni e funzionalità di rafforzamento.
Opzioni di rafforzamento del kernel (indipendenti dall'architettura)
Consenti l'inserimento/sostituzione dei metodi ACPI in fase di esecuzione (CONFIG_ACPI_CUSTOM_METHOD)
Amazon Linux disabilita questa opzione in quanto consente agli utenti root
di scrivere nella memoria kernel arbitraria.
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Formati binari vari (binfmt_misc
)
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), 023 non imposta questa opzione di configurazione secondo quanto consigliato da KSPP
Supporto di BUG()
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
BUG()
se il kernel riscontra un danneggiamento dei dati durante la verifica della validità delle strutture di memoria del kernel
Alcune parti del kernel Linux controllano la coerenza interna delle strutture di dati e possono eseguire BUG()
quando rilevano un danneggiamento dei dati.
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
COMPAT_BRK
Con questa opzione disabilitata (che è il modo in cui Amazon Linux configura il kernel), l'impostazione predefinita per randomize_va_space
sysctl
è 2
, che abilita anche la randomizzazione degli heap sulla base mmap
, sullo stack e sulla randomizzazione delle pagine VDSO.
Questa opzione esiste nel kernel per garantire la compatibilità con alcuni file binari libc.so.5
obsoleti del 1996 e precedenti.
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
COMPAT_VDSO
Questa opzione di configurazione è rilevante per x86-64
e non per aarch64
. Impostandola su n
, il kernel di Amazon Linux non rende visibile un Virtual Dynamic Shared Object (VDSO) a 32 bit a un indirizzo prevedibile. La più recente libreria glibc
nota per essere danneggiata dall'impostazione di questa opzione su n
è glibc
2.3.3, del 2004.
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Rafforzamento riservato CONFIG_DEBUG
Le opzioni di configurazione del kernel Linux gated by CONFIG_DEBUG
sono in genere progettate per l'uso in kernel creati per problemi di debug e cose come le prestazioni non sono una priorità. AL2023 abilita l'opzione di rafforzamento. CONFIG_DEBUG_LIST
Disabilitazione di DMA per i dispositivi PCI nello stub EFI prima della configurazione di IOMMU
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Rafforzamento per la copia della memoria tra kernel e spazio utente
Quando il kernel deve copiare la memoria da o verso lo spazio utente, questa opzione abilita alcuni controlli che possono proteggere da alcune classi di problemi di overflow dell'heap.
L'opzione CONFIG_HARDENED_USERCOPY_FALLBACK
esisteva nei kernel da 4.16 a 5.15 per aiutare gli sviluppatori del kernel a scoprire eventuali voci mancanti dell'elenco degli indirizzi consentiti tramite un WARN()
. Poiché AL2 023 fornisce un kernel 6.1, questa opzione non è più rilevante per 023. AL2
L'CONFIG_HARDENED_USERCOPY_PAGESPAN
opzione esisteva nei kernel principalmente come opzione di debug per gli sviluppatori e non si applica più al kernel 6.1 nella versione 023. AL2
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Supporto per l'ibernazione
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Generazione di numeri casuali
Il kernel AL2 023 è configurato per garantire che sia disponibile un'entropia adeguata per l'utilizzo all'interno. EC2
CONFIG_INET_DIAG
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Azzeramento di tutta la memoria dell'allocatore di pagine e slab a livello kernel durante l'allocazione e la deallocazione
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliatoCONFIG_INIT_ON_ALLOC_DEFAULT_ON
può essere abilitato aggiungendolo init_on_alloc=1
alla riga di comando del kernel e il comportamento CONFIG_INIT_ON_FREE_DEFAULT_ON
può essere abilitato aggiungendo init_on_free=1
.
Inizializzazione di tutte le variabili dello stack su zero (CONFIG_INIT_STACK_ALL_ZERO
)
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Firma del modulo del kernel
AL2023 firma e convalida le firme dei moduli del kernel. L'opzione CONFIG_MODULE_SIG_FORCE
, che richiederebbe ai moduli di avere una firma valida, non è abilitata per preservare la compatibilità per gli utenti che creano moduli di terze parti. Per gli utenti che vogliono assicurarsi che tutti i moduli del kernel siano firmati, Modulo di sicurezza Linux (LSM) Lockdown può essere configurato in modo da imporre questa condizione.
kexec
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione in base a quanto consigliatokdump
.
Supporto IOMMU
AL2023 abilita il supporto IOMMU. L'opzione CONFIG_IOMMU_DEFAULT_DMA_STRICT
non è abilitata per impostazione predefinita, ma questa funzionalità può essere configurata aggiungendo iommu.passthrough=0 iommu.strict=1
alla riga di comando del kernel.
kfence
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Supporto per pty
legacy
AL2023 utilizza il moderno PTY interfaccia (devpts
).
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Modulo di sicurezza Linux (LSM) Lockdown
AL2023 crea l'lockdown
LSM, che bloccherà automaticamente il kernel quando si usa Secure Boot.
L'opzione CONFIG_LOCK_DOWN_KERNEL_FORCE_CONFIDENTIALITY
non è abilitata. Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Poisoning delle pagine
Sebbene questa opzione sia una delle impostazioni consigliate del Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione su quella consigliata
Stack Protector
Il kernel AL2 023 è costruito con la funzionalità di protezione dello stack di GCC abilitato con l'opzione. -fstack-protector-strong
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
seccomp BPF API
Il seccomp la funzionalità di rafforzamento viene utilizzata da software come systemd
i runtime dei container per rafforzare le applicazioni dello spazio utente.
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Timeout panic()
Il kernel AL2 023 è configurato con questo valore impostato su0
, il che significa che il kernel non si riavvierà in caso di panico. Sebbene questa opzione sia una delle impostazioni consigliate del Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliatosysctl
, /proc/sys/kernel/panic
e sulla riga di comando del kernel.
Modelli di sicurezza
AL2Per impostazione predefinita, 023 è abilitato in modalità Permissiva. SELinux Per ulteriori informazioni, consulta Impostazione SELinux delle modalità per AL2 023.
Anche i moduli Modulo di sicurezza Linux (LSM) Lockdown e yama
sono abilitati.
/proc/kcore
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Randomizzazione dell'offset dello stack del kernel all'inserimento di syscall
Sebbene questa opzione sia una delle impostazioni consigliate del Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione su quella consigliatarandomize_kstack_offset=on
sulla riga di comando del kernel.
Controlli di conteggio dei riferimenti (CONFIG_REFCOUNT_FULL
)
Sebbene questa opzione sia una delle impostazioni consigliate del Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione su quella consigliata
Conoscenza da parte dello scheduler di SMT nuclei () CONFIG_SCHED_CORE
Il kernel AL2 023 è compilato conCONFIG_SCHED_CORE
, il che consente l'utilizzo da parte delle applicazioni userspace. prctl(PR_SCHED_CORE)
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Verifica della presenza di danneggiamento dello stack durante le chiamate a schedule()
(CONFIG_SCHED_STACK_END_CHECK
)
Il kernel AL2 023 è compilato con enabled. CONFIG_SCHED_STACK_END_CHECK
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Rafforzamento dell'allocatore di memoria
Il kernel AL2 023 abilita il rafforzamento dell'allocatore di memoria del kernel con le opzioni,, and. CONFIG_SHUFFLE_PAGE_ALLOCATOR
CONFIG_SLAB_FREELIST_HARDENED
CONFIG_SLAB_FREELIST_RANDOM
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
SLUB supporto per il debug
Il kernel AL2 023 abilita CONFIG_SLUB_DEBUG
poiché questa opzione abilita funzionalità di debug opzionali per l'allocatore che possono essere abilitate sulla riga di comando del kernel. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
CONFIG_STATIC_USERMODEHELPER
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliatoCONFIG_STATIC_USERMODEHELPER
richiede un supporto speciale da parte della distribuzione, che attualmente non è presente in Amazon Linux.
Testo del kernel di sola lettura e rodata (e) CONFIG_STRICT_KERNEL_RWX
CONFIG_STRICT_MODULE_RWX
Il kernel AL2 023 è configurato per contrassegnare il testo del kernel e del modulo kernel e rodata la memoria come di sola lettura e la memoria non testuale contrassegnata come non eseguibile. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
TCP supporto syncookie () CONFIG_SYN_COOKIES
Il kernel AL2 023 è compilato con il supporto per i syncookie TCP. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Stack mappato virtualmente con pagine guard (CONFIG_VMAP_STACK
)
Il kernel AL2 023 è compilato conCONFIG_VMAP_STACK
, abilita stack di kernel mappati virtualmente con pagine guard. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Compilazione tramite avvisi del compilatore come errori (CONFIG_WERROR
)
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Registrazione dell'azzeramento sulla funzione exit (CONFIG_ZERO_CALL_USED_REGS
)
Sebbene questa opzione sia una delle impostazioni consigliate del Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione su quella consigliata
Indirizzo minimo per l'allocazione dello spazio utente
Questa opzione di rafforzamento può aiutare a ridurre l'impatto dei bug dei puntatori NULL del kernel. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Opzioni di rafforzamento specifiche clang
Il kernel 023 è compilato con AL2 GCC piuttosto che clang, quindi l'opzione di CONFIG_CFI_CLANG
rafforzamento non può essere abilitata, il che rende inoltre CONFIG_CFI_PERMISSIVE
non applicabile. Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Opzioni di rafforzamento del kernel specifiche di x86-64
Opzione CONFIG |
AL2023/6.1/aarch64 | AL2023/6.1/x86_64 | AL2023/6.12/aarch64 | AL2023/6.12/x86_64 |
---|---|---|---|---|
CONFIG_AMD_IOMMU | N/D |
y
|
N/D |
y
|
CONFIG_AMD_IOMMU_V2 | N/D |
y
|
N/D | N/D |
CONFIG_IA32_EMULATION | N/D |
y
|
N/D |
y
|
CONFIG_INTEL_IOMMU | N/D |
y
|
N/D |
y
|
CONFIG_INTEL_IOMMU_DEFAULT_ON | N/D |
n
|
N/D |
n
|
CONFIG_INTEL_IOMMU_SVM | N/D |
n
|
N/D |
n
|
CONFIG_LEGACY_VSYSCALL_NONE | N/D |
n
|
N/D |
n
|
CONFIG_MODIFY_LDT_SYSCALL | N/D |
n
|
N/D |
n
|
CONFIG_PAGE_TABLE_ISOLATION | N/D |
y
|
N/D | N/D |
CONFIG_RANDOMIZE_MEMORY | N/D |
y
|
N/D |
y
|
CONFIG_X86_64 | N/D |
y
|
N/D |
y
|
CONFIG_X86_MSR | N/D |
y
|
N/D |
y
|
CONFIG_X86_VSYSCALL_EMULATION | N/D |
y
|
N/D |
y
|
CONFIG_X86_X32 | N/D | N/D | N/D | N/D |
CONFIG_X86_X32_ABI | N/D |
n
|
N/D |
n
|
Supporto per x86-64
Il supporto base per x86-64 include il supporto per i bit Physical Address Extension (PAE) e No eXecute (NX). Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Supporto per IOMMU AMD e Intel
Il kernel AL2 023 viene compilato con il supporto per AMD e Intel IOMMUs. Questa opzione è una delle impostazioni consigliate del Kernel Self Protection Project
L'opzione CONFIG_INTEL_IOMMU_DEFAULT_ON
non è impostata, ma può essere abilitata passando intel_iommu=on
alla riga di comando del kernel. Sebbene questa opzione sia una delle impostazioni consigliate del Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
L'CONFIG_INTEL_IOMMU_SVM
opzione non è attualmente abilitata in 023. AL2 Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
Supporto per lo spazio utente a 32 bit
Importante
Il supporto per lo spazio utente x86 a 32 bit è obsoleto e il supporto per l'esecuzione di file binari dello spazio utente a 32 bit potrebbe essere rimosso in una futura versione principale di Amazon Linux.
Nota
Sebbene AL2 023 non includa più pacchetti a 32 bit, il kernel supporterà comunque l'esecuzione di uno spazio utente a 32 bit. Per ulteriori informazioni, consulta Pacchetti x86 (i686) a 32 bit.
Per supportare l'esecuzione di applicazioni userspace a 32 bit, AL2 023 non abilita l'CONFIG_X86_VSYSCALL_EMULATION
opzione e abilita le opzioni, and. CONFIG_IA32_EMULATION
CONFIG_COMPAT
CONFIG_X86_VSYSCALL_EMULATION
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione in base a quanto consigliato
Il x32 L'ABI nativo a 32 bit per processori a 64 bit non è abilitato (e). CONFIG_X86_X32
CONFIG_X86_X32_ABI
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Registro specifico del modello x86 (MSR) supporto
L'opzione CONFIG_X86_MSR
è abilitata per supportare turbostat
. Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2 023 non imposta questa opzione di configurazione su quella consigliata
syscall modify_ldt
AL2023 non consente ai programmi utente di modificare la Local Descriptor Table (LDT) x86 con syscall. modify_ldt
Questa chiamata è necessaria per eseguire codice a 16 bit o segmentato e la sua assenza può compromettere l'esecuzione di software come l'esecuzione di alcuni programmi con dosemu
WINEe alcune librerie di threading molto vecchie. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Rimozione della mappatura del kernel in modalità utente
AL2023 configura il kernel in modo che la maggior parte degli indirizzi del kernel non sia mappata nello spazio utente. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Randomizzazione delle sezioni di memoria del kernel
AL2023 configura il kernel per randomizzare gli indirizzi virtuali di base delle sezioni di memoria del kernel. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Opzioni di rafforzamento del kernel specifiche di aarch64
Opzione CONFIG |
AL2023/6.1/aarch64 | AL2023/6.1/x86_64 | AL2023/6.12/aarch64 | AL2023/6.12/x86_64 |
---|---|---|---|---|
CONFIG_ARM64_BTI |
y
|
N/D |
y
|
N/D |
CONFIG_ARM64_BTI_KERNEL | N/D | N/D | N/D | N/D |
CONFIG_ARM64_PTR_AUTH |
y
|
N/D |
y
|
N/D |
CONFIG_ARM64_PTR_AUTH_KERNEL |
y
|
N/D |
y
|
N/D |
CONFIG_ARM64_SW_TTBR0_PAN |
y
|
N/D |
y
|
N/D |
CONFIG_UNMAP_KERNEL_AT_EL0 |
y
|
N/D |
y
|
N/D |
Identificazione dei target di ramo
Il kernel AL2 023 abilita il supporto per Branch Target Identification (). CONFIG_ARM64_BTI
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
L'CONFIG_ARM64_BTI_KERNEL
opzione non è abilitata in AL2 023 poiché è stata creata con GCC, e il supporto per la compilazione del kernel con questa opzione è attualmente disabilitato nel kernel upstream
Autenticazione dei puntatori (CONFIG_ARM64_PTR_AUTH
)
Il kernel AL2 023 è costruito con il supporto per l'estensione Pointer Authentication (parte delle estensioni ARMv8 .3), che può essere utilizzata per aiutare a mitigare le tecniche ROP (Return Oriented Programming). Il supporto hardware richiesto per l'autenticazione dei puntatori su Graviton
L'opzione CONFIG_ARM64_PTR_AUTH
è abilitata e fornisce supporto per l'autenticazione dei puntatori per lo spazio utente. Poiché anche l'CONFIG_ARM64_PTR_AUTH_KERNEL
opzione è abilitata, il kernel AL2 023 è in grado di utilizzare autonomamente la protezione dell'indirizzo di ritorno.
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Emulazione dell'accesso con privilegi che non usa mai lo switching TTBR0_EL1
Questa opzione impedisce al kernel di accedere direttamente alla memoria dello spazio utente, con TTBR0_EL1
che viene impostato solo temporaneamente su un valore valido dalle routine di accesso utente.
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Annullamento della mappatura del kernel durante l'esecuzione nello spazio utente
Il kernel AL2 023 è configurato per demappare il kernel quando viene eseguito in userspace (). CONFIG_UNMAP_KERNEL_AT_EL0
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project