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

Das Openwall-Projekt hat die Veröffentlichung des Kernelmoduls LKRG 0.9.0 (Linux Kernel Runtime Guard) veröffentlicht, das Angriffe und Verletzungen der Integrität von Kernelstrukturen erkennen und blockieren soll. Das Modul kann beispielsweise vor unbefugten Änderungen am laufenden Kernel schützen und versucht, die Berechtigungen von Benutzerprozessen zu ändern (Erkennung der Verwendung von Exploits). Das Modul eignet sich sowohl für die Organisation des Schutzes vor Exploits bereits bekannter Linux-Kernel-Schwachstellen (z. B. in Situationen, in denen es schwierig ist, den Kernel im System zu aktualisieren) als auch für die Abwehr von Exploits für noch unbekannte Schwachstellen. Der Projektcode wird unter der GPLv2-Lizenz vertrieben.

Zu den Änderungen in der neuen Version:

  • Die Kompatibilität ist mit Linux-Kerneln von 5.8 bis 5.12 sowie mit stabilen Kerneln 5.4.87 und höher (einschließlich Neuerungen aus Kerneln 5.8 und höher) und mit Kerneln von RHEL-Versionen bis 8.4 gewährleistet, während die Unterstützung für alle zuvor unterstützten Versionen von erhalten bleibt Kernel, beispielsweise Kernel von RHEL 7;
  • Es wurde die Möglichkeit hinzugefügt, LKRG nicht nur als externes Modul, sondern auch als Teil des Linux-Kernelbaums zu erstellen, einschließlich seiner Einbindung in das Kernel-Image;
  • Unterstützung für viele zusätzliche Kernel- und Systemkonfigurationen hinzugefügt;
  • Mehrere erhebliche Fehler und Mängel in LKRG behoben;
  • Die Implementierung einiger LKRG-Komponenten wurde erheblich vereinfacht;
  • Es wurden Änderungen vorgenommen, um die weitere Unterstützung und Fehlerbehebung von LKRG zu vereinfachen.
  • Zum Testen von LKRG wurde die Integration mit Out-of-Tree und mkosi hinzugefügt;
  • Das Projekt-Repository wurde von BitBucket nach GitHub verschoben und eine kontinuierliche Integration wurde mithilfe von GitHub Actions und mkosi hinzugefügt, einschließlich der Überprüfung des Builds und des Ladens von LKRG in Ubuntu-Release-Kernel sowie in die täglichen Builds der neuesten Mainline-Kernel, die von bereitgestellt werden Ubuntu-Projekt.

Mehrere Entwickler, die zuvor nicht an dem Projekt beteiligt waren, haben direkte Beiträge zu dieser Version von LKRG geleistet (über Pull-Requests auf GitHub). Insbesondere Boris Lukashev fügte die Möglichkeit hinzu, als Teil des Linux-Kernelbaums zu erstellen, und Vitaly Chikunov von ALT Linux fügte die Integration mit mkosi und GitHub Actions hinzu.

Insgesamt wurde die Anzahl der LKRG-Codezeilen trotz erheblicher Ergänzungen zum zweiten Mal in Folge leicht reduziert (zuvor war sie auch zwischen den Versionen 0.8 und 0.8.1 reduziert).

Derzeit wurde das LKRG-Paket auf Arch Linux bereits auf Version 0.9.0 aktualisiert, und eine Reihe anderer Pakete verwenden aktuelle Git-Versionen von LKRG und werden wahrscheinlich bald auf Version 0.9.0 und höher aktualisiert.

Darüber hinaus können wir eine aktuelle Veröffentlichung der Entwickler von Aurora OS (russische Modifikation von Sailfish OS) über die mögliche Stärkung von LKRG durch ARM TrustZone zur Kenntnis nehmen.

Weitere Informationen zu LKRG finden Sie in der Ankündigung der Version 0.8 und der damals stattgefundenen Diskussion.

Source: opennet.ru

Kommentar hinzufügen