Veröffentlichung des LKRG 0.7-Moduls zum Schutz vor der Ausnutzung von Schwachstellen im Linux-Kernel

Openwall-Projekt опубликовал Kernel-Modul-Release LKRG 0.7 (Linux Kernel Runtime Guard), der die Erkennung nicht autorisierter Änderungen am laufenden Kernel sicherstellt (Integritätsprüfung) oder versucht, die Berechtigungen von Benutzerprozessen zu ändern (Erkennung der Verwendung von Exploits). Das Modul eignet sich sowohl zur Organisation des Schutzes vor bereits bekannten Exploits für den Linux-Kernel (z. B. in Situationen, in denen es schwierig ist, den Kernel im System zu aktualisieren) als auch zur Abwehr von Exploits für noch unbekannte Schwachstellen. Informationen zu den Funktionen von LKRG finden Sie in erste Ankündigung des Projekts.

Zu den Änderungen in der neuen Version:

  • Der Code wurde überarbeitet, um Unterstützung für verschiedene CPU-Architekturen bereitzustellen. Erste Unterstützung für die ARM64-Architektur hinzugefügt;
  • Die Kompatibilität ist mit den Linux-Kerneln 5.1 und 5.2 sowie mit Kerneln gewährleistet, die ohne Einbeziehung der CONFIG_DYNAMIC_DEBUG-Optionen beim Erstellen des Kernels erstellt wurden.
    CONFIG_ACPI und CONFIG_STACKTRACE sowie mit Kerneln, die mit der Option CONFIG_STATIC_USERMODEHELPER erstellt wurden. Experimentelle Unterstützung für Kernel aus dem grsecurity-Projekt hinzugefügt;

  • Die Initialisierungslogik wurde erheblich geändert;
  • Der Integritätsprüfer hat das Selbst-Hashing wieder aktiviert und eine Race-Bedingung in der Jump-Label-Engine (*_JUMP_LABEL) behoben, die bei der Initialisierung gleichzeitig mit Lade- oder Entladeereignissen anderer Module zu einem Deadlock führt.
  • Im Exploit-Erkennungscode wurden die neuen sysctl lkrg.smep_panic (standardmäßig aktiviert) und lkrg.umh_lock (standardmäßig deaktiviert) sowie zusätzliche Prüfungen für das SMEP/WP-Bit hinzugefügt, die Logik zur Verfolgung neuer Aufgaben im System wurde geändert, die interne Logik der Synchronisierung mit Aufgabenressourcen wurde neu gestaltet, Unterstützung für OverlayFS hinzugefügt und in die Ubuntu Apport-Whitelist aufgenommen.

Source: opennet.ru

Kommentar hinzufügen