In de Linux-kernel 5.4 zijn patches aangenomen om de toegang van root tot de interne delen van de kernel te beperken.

Linus Torvalds heeft aan de toekomstige release van de Linux-kernel 5.4 een set patches "lockdown«, aangeboden door David Howell (werkt bij Red Hat) en Matthew Garrett (Matthew Garrett, werkt bij Google) om de toegang van de gebruiker root tot de kernel te beperken. De functionaliteit gerelateerd aan "lockdown" is verplaatst naar een optioneel in te laden LSM-module (Linux Security Module), die een barrière instelt tussen UID 0 en de kernel, beperking van bepaalde low-level functionaliteit.

Als een aanvaller erin slaagt om code met root-rechten uit te voeren als gevolg van een aanval, kan hij zijn code ook op het niveau van de kernel uitvoeren, bijvoorbeeld door het kernel te vervangen met behulp van kexec of door geheugen te lezen/schrijven via /dev/kmem. De meest voor de hand liggende consequentie van dergelijke activiteiten kan zijn omzeiling van UEFI Secure Boot of het extraheren van gevoelige gegevens die op kernel-niveau zijn opgeslagen.

Aanvankelijk werden functies voor het limiteren van root ontwikkeld in de context van het versterken van de beveiliging van de geverifieerde opstart en distributies gebruiken al geruime tijd externe patches om omzeiling van UEFI Secure Boot te blokkeren. Tegelijkertijd werden dergelijke beperkingen niet opgenomen in de hoofdversie van de kernel vanwege controverses over hun implementatie en zorgen over het verstoren van bestaande systemen. De "lockdown"-module heeft bestaande patches die al in distributies worden gebruikt samengevoegd, en is herschreven in de vorm van een afzonderlijk subsysteem dat niet aan UEFI Secure Boot is verbonden.

In lockdown-modus wordt de toegang tot /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, de debugmodus van kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), enkele ACPI-interfaces en CPU MSR-registers beperkt, worden kexec_file- en kexec_load-aanroepen geblokkeerd, wordt de overgang naar slaapmodus verboden, wordt het gebruik van DMA voor PCI-apparaten beperkt, en is het importeren van ACPI-code uit EFI-variabelen niet toegestaan.
Manipulaties met invoer/uitvoerpoorten zijn ook niet toegestaan, waaronder het wijzigen van de interruptnummer en invoer/uitvoerpoort voor de seriële poort.

Standaard is de lockdown-module niet actief, wordt deze verzameld door de SECURITY_LOCKDOWN_LSM-optie in kconfig op te geven en wordt deze geactiveerd via de kernelparameter "lockdown=", het beheersbestand "/sys/kernel/security/lockdown" of bouwopties LOCK_DOWN_KERNEL_FORCE_*, die waarden als «integriteit» en «vertrouwelijkheid» kunnen aannemen. In het eerste geval worden de mogelijkheden geblokkeerd die wijzigingen in de actieve kernel vanuit de gebruikersruimte mogelijk maken, en in het tweede geval wordt, naast dit, de functionaliteit uitgeschakeld die kan worden gebruikt om vertrouwelijke informatie uit de kernel te extraheren.

Het is belangrijk op te merken dat lockdown alleen de standaard toegangsmogelijkheden tot de kernel beperkt, maar niet beschermt tegen modificaties als gevolg van het exploiteren van kwetsbaarheden. Om wijzigingen in de actieve kernel te blokkeren bij het gebruik van exploits, heeft het Openwall-project een vrij alternatief voor XenServer wordt ontwikkeld, waarin functies zijn teruggebracht die uit de gratis versie van XenServer zijn verwijderd. een afzonderlijke module LKRG (Linux Kernel Runtime Guard).

Bron: opennet.ru

Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers 🔥 Koop betrouwbare webhosting met bescherming tegen DDoS, VPS VDS servers | ProHoster