Im Kernel von Linux 5.4 wurden Patches zur EinschrÀnkung des Root-Zugriffs auf die Innereien des Kernels angenommen.

Linus Torvalds hat Die zukĂŒnftige Version des Linux-Kernels 5.4 enthĂ€lt das Patch-Set „lockdown«, vorgeschlagen David Howells (arbeitet bei Red Hat) und Matthew Garrett (Matthew Garrett, arbeitet bei Google) zur EinschrĂ€nkung des Zugriffs des Benutzers root auf den Kernel. Die damit verbundene „Lockdown“-FunktionalitĂ€t wurde in ein optional ladbares LSM-Modul (Linux Security Module) ausgelagert, das eine Barriere zwischen UID 0 und dem Kernel schafft und bestimmte niedrigstufige Funktionen einschrĂ€nkt.

Wenn ein Angreifer im Rahmen eines Angriffs die AusfĂŒhrung von Code mit Root-Rechten erreicht hat, kann er seinen Code auch auf Kernel-Ebene ausfĂŒhren, zum Beispiel durch den Austausch des Kernels mit kexec oder durch Lesen/Schreiben von Speicher ĂŒber /dev/kmem. Eine der offensichtlichsten Folgen solcher AktivitĂ€ten könnte sein, Umgehung von UEFI Secure Boot oder das Extrahieren sensibler Daten, die auf Kernel-Ebene gespeichert sind.

UrsprĂŒnglich wurden die Funktionen zur EinschrĂ€nkung von Root im Kontext der Verbesserung des Schutzes durch verifiziertes Booten entwickelt, und Distributionen verwenden bereits seit einiger Zeit externe Patches, um die Umgehung von UEFI Secure Boot zu blockieren. Diese EinschrĂ€nkungen wurden jedoch nicht in den Hauptkernel aufgenommen, da Unterschiede in ihrer Implementierung und Bedenken hinsichtlich der Störung bestehender Systeme bestanden. Das „Lockdown“-Modul bĂŒndelt bereits in Distributionen verwendete Patches, die in Form eines separaten Subsystems ĂŒberarbeitet wurden, das nicht an UEFI Secure Boot gebunden ist.

Im Lockdown-Modus wird der Zugriff auf /dev/mem, /dev/kmem, /dev/port, /proc/kcore, debugfs, den Debug-Modus von kprobes, mmiotrace, tracefs, BPF, PCMCIA CIS (Card Information Structure), einige ACPI-Schnittstellen und CPU-MSR-Register eingeschrĂ€nkt, die Aufrufe von kexec_file und kexec_load blockiert, der Übergang in den Ruhezustand verboten, die Verwendung von DMA fĂŒr PCI-GerĂ€te limitiert und der Import von ACPI-Code aus EFI-Variablen untersagt,
Manipulationen mit Ein- und Ausgabepunkten sind nicht erlaubt, einschließlich der Änderung der Interrupt-Nr. und des E/A-Ports fĂŒr serielle Ports.

StandardmĂ€ĂŸig ist das Lockdown-Modul nicht aktiviert, wird bei Angabe der OPTION SECURITY_LOCKDOWN_LSM in kconfig kompiliert und durch den Kernel-Parameter „lockdown=“, die Steuerdatei „/sys/kernel/security/lockdown“ oder Baueinstellungen aktiviert. LOCK_DOWN_KERNEL_FORCE_*, die die Werte „IntegritĂ€t“ und „Vertraulichkeit“ annehmen können. Im ersten Fall werden Möglichkeiten blockiert, die Änderungen am laufenden Kernel aus dem Benutzerspace ermöglichen, wĂ€hrend im zweiten Fall zusĂ€tzlich die FunktionalitĂ€t deaktiviert wird, die zum Extrahieren vertraulicher Informationen aus dem Kernel genutzt werden kann.

Es ist wichtig zu beachten, dass der Lockdown lediglich die regulĂ€ren Zugriffsrechte auf den Kernel einschrĂ€nkt, jedoch nicht vor Modifikationen durch die Ausnutzung von Schwachstellen schĂŒtzt. Um Änderungen am laufenden Kernel durch den Einsatz von Exploits zu blockieren, hat das Projekt Openwall entwickelt sich ein separates Modul LKRG (Linux Kernel Runtime Guard).

Quelle: opennet.ru

60GB SSD 8Gb DDR4