Linus Torvalds
Als een aanvaller code uitvoert met rootrechten, kan hij zijn code op kernelniveau uitvoeren, bijvoorbeeld door de kernel te vervangen met behulp van kexec of door geheugen te lezen/schrijven via /dev/kmem. Het meest voor de hand liggende gevolg van een dergelijke activiteit kan zijn
Aanvankelijk werden rootbeperkingsfuncties ontwikkeld in de context van het versterken van de bescherming van geverifieerd opstarten, en distributies maken al geruime tijd gebruik van patches van derden om het omzeilen van UEFI Secure Boot te blokkeren. Tegelijkertijd waren dergelijke beperkingen niet opgenomen in de hoofdsamenstelling van de kernel vanwege
De vergrendelingsmodus beperkt de toegang tot /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, kprobes debug-modus, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), sommige ACPI-interfaces en CPU MSR-registers, kexec_file en kexec_load-oproepen zijn geblokkeerd, de slaapmodus is verboden, het DMA-gebruik voor PCI-apparaten is beperkt, het importeren van ACPI-code uit EFI-variabelen is verboden,
Manipulaties met I/O-poorten zijn niet toegestaan, inclusief het wijzigen van het interruptnummer en de I/O-poort voor de seriële poort.
Standaard is de lockdown-module niet actief. Deze wordt gebouwd wanneer de SECURITY_LOCKDOWN_LSM optie is gespecificeerd in kconfig en wordt geactiveerd via de kernelparameter “lockdown=”, het controlebestand “/sys/kernel/security/lockdown” of assemblageopties
Het is belangrijk op te merken dat lockdown alleen de standaardtoegang tot de kernel beperkt, maar geen bescherming biedt tegen wijzigingen als gevolg van misbruik van kwetsbaarheden. Om wijzigingen aan de actieve kernel te blokkeren wanneer exploits worden gebruikt door het Openwall-project
Bron: opennet.ru