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 nella versione AL2 023 è 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), AL2 023 non imposta questa opzione di configurazione secondo quanto consigliato
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_PAGESPANopzione 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 l'interfaccia moderna (). PTY devpts
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
Modulo di sicurezza Linux (LSM) Lockdown
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), 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 è compilato con la funzionalità di protezione dello stack abilitata con l'opzione. GCC -fstack-protector-strong
Questa opzione è una delle impostazioni consigliate per Kernel Self Protection Project
API seccomp BPF
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 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 dal 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
Consapevolezza del pianificatore dei core SMT (CONFIG_SCHED_CORE)
Il kernel AL2 023 è costruito conCONFIG_SCHED_CORE, il che consente l'uso 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
Supporto per il debug SLUB
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 (CONFIG_STRICT_KERNEL_RWX e CONFIG_STRICT_MODULE_RWX)
Il kernel AL2 023 è 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 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 AL2 023 è compilato con GCC anziché conclang, quindi l'opzione di protezione CONFIG_CFI_CLANG avanzata non può essere abilitata, il che rende inoltre non applicabile. CONFIG_CFI_PERMISSIVE 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 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), AL2 023 non imposta questa opzione di configurazione in base a quanto consigliato
L'CONFIG_INTEL_IOMMU_SVMopzione 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_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), AL2 023 non imposta questa opzione di configurazione in base a quanto consigliato
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 del 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 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 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_KERNELopzione non è abilitata in AL2 023 in quanto è stata compilata conGCC, e il supporto per la compilazione del kernel con questa opzione è attualmente disabilitato nel kernel upstream a causa di un bug di gcc
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_KERNELopzione è 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