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à.
AL2023 Indurimento del kernel
Il kernel Linux 6.1 AL2023 è configurato e costruito con diverse opzioni e funzionalità di rafforzamento.
Opzioni di rafforzamento del kernel (indipendenti dall'architettura)
Consenti ai metodi ACPI di essere in fase di esecuzione (CONFIG_ACPI_CUSTOM_METHOD) inserted/replaced
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), AL2023 non imposta questa opzione di configurazione come consigliata 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
CONFIG_DEBUGindurimento recintato
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), AL2023 non imposta questa opzione di configurazione su quella consigliata
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é AL2023 viene fornito un kernel 6.1, questa opzione non è più rilevante per. AL2023
L'CONFIG_HARDENED_USERCOPY_PAGESPANopzione esisteva nei kernel principalmente come opzione di debug per gli sviluppatori e non si applica più al kernel 6.1 in. AL2023
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), AL2023 non imposta questa opzione di configurazione secondo quanto consigliato
Generazione di numeri casuali
Il kernel AL2023 è configurato per garantire che sia disponibile un'entropia adeguata per l'utilizzo all'interno di EC2.
CONFIG_INET_DIAG
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione secondo quanto consigliato
Azzera tutta la memoria del kernel, delle pagine e degli allocatori di slab durante l'allocazione e la deallocazione
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione su quella consigliataCONFIG_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), AL2023 non imposta questa opzione di configurazione su quella consigliata
Firma del modulo 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 Lockdown (LSM) può essere configurato in modo da imporre questa condizione.
kexec
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione secondo quanto consigliatokdump.
IOMMUSupport
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), AL2023 non imposta questa opzione di configurazione su quella consigliata
Supporto per pty legacy
AL2023 utilizza l'interfaccia moderna (). PTY devpts
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Modulo di sicurezza Linux Lockdown (LSM)
AL2023 crea l'lockdownLSM, 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), AL2023 non imposta questa opzione di configurazione secondo quanto consigliato
Avvelenamento delle pagine
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione su quella consigliata
Stack Protector
Il AL2023 kernel è compilato con la funzionalità stack-protector abilitata con l'GCCopzione. -fstack-protector-strong
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
seccomp BPF API
La funzionalità di rafforzamento seccomp viene utilizzata da software come systemd e 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 AL2023 kernel è 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 dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione su quella consigliatasysctl, /proc/sys/kernel/panic e sulla riga di comando del kernel.
Modelli di sicurezza
AL2023 abilita SELinux in modalità Permissiva per impostazione predefinita. Per ulteriori informazioni, consulta Impostazione SELinux delle modalità per AL2 023.
Anche i moduli Modulo di sicurezza Linux Lockdown (LSM) e yama sono abilitati.
/proc/kcore
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione su quella consigliata
Randomizzazione dell'offset dello stack del kernel all'inserimento di syscall
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione secondo quanto consigliatorandomize_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 dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione secondo quanto consigliato
Consapevolezza del pianificatore dei core SMT (CONFIG_SCHED_CORE)
Il AL2023 kernel è costruito con, il che consente l'utilizzo da parte delle applicazioni dello CONFIG_SCHED_CORE spazio utente. 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 AL2023 kernel è 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 AL2023 kernel 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
Supporto per il debug SLUB
Il AL2023 kernel 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), AL2023 non imposta questa opzione di configurazione in base a 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 (CONFIG_STRICT_KERNEL_RWX e CONFIG_STRICT_MODULE_RWX)
Il AL2023 kernel è configurato per contrassegnare il testo e la memoria del kernel e dei moduli del kernel come di sola lettura e la rodata memoria non testuale contrassegnata come non eseguibile. Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Supporto per TCP syncookie (CONFIG_SYN_COOKIES)
Il AL2023 kernel è costruito 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 AL2023 kernel è costruito 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), AL2023 non imposta questa opzione di configurazione come consigliata
Registrazione dell'azzeramento sulla funzione exit (CONFIG_ZERO_CALL_USED_REGS)
Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione secondo quanto consigliato
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
clangopzioni di indurimento specifiche
Il AL2023 kernel è compilato con GCC invece diclang, quindi l'opzione di CONFIG_CFI_CLANG rafforzamento non può essere abilitata, il che rende CONFIG_CFI_PERMISSIVE inoltre non applicabile. Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione su quella consigliata
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 AMD e Intel IOMMU
Il AL2023 kernel viene compilato con il supporto per AMD e Intel. IOMMUs Questa opzione è una delle impostazioni consigliate per 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 dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione secondo quanto consigliato
L'CONFIG_INTEL_IOMMU_SVMopzione non è attualmente abilitata in. AL2023 Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione su quella consigliata
Support 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 AL2023 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, AL2023 non abilita l'CONFIG_X86_VSYSCALL_EMULATIONopzione 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), AL2023 non imposta questa opzione di configurazione su quella consigliata
L'ABI x32 nativo a 32 bit per processori a 64 bit non è abilitato (CONFIG_X86_X32 e CONFIG_X86_X32_ABI). Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Supporto per Model Specific Register x86 (MSR)
L'opzione CONFIG_X86_MSR è abilitata per supportare turbostat. Sebbene questa opzione sia una delle impostazioni consigliate dal Kernel Self Protection Project (KSPP), AL2023 non imposta questa opzione di configurazione secondo quanto consigliato
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 software come dosemu, l'esecuzione di alcuni programmi in WINE e 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 AL2023 kernel 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_KERNELopzione non è abilitata in AL2023 quanto è stata compilata conGCC, e il supporto per la compilazione del kernel con questa opzione è attualmente disabilitato nel kernel upstream
Autenticazione dei puntatori (CONFIG_ARM64_PTR_AUTH)
Il AL2023 kernel è 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_KERNELopzione è abilitata, il AL2023 kernel è 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 AL2023 kernel è 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