Der UEFI-Bootkit Bootkitty wurde entdeckt, der bösartigen Code in den zu ladenden Linux-Kernel einfügt.

Forscher von ESET haben einen neuen Bootkit namens „Bootkitty“ entdeckt, der nach einem Systemangriff anstelle des GRUB-Bootloaders installiert wird und dazu dient, bösartige Komponenten in den Linux-Kernel einzuschleusen, die es dem Angreifer ermöglichen, das System heimlich zu kontrollieren und seine Aktionen auszuführen. Es wird behauptet, dass dies das erste UEFI-Bootkit ist, das auf die Beeinträchtigung von Linux-Systemen abzielt.

Bootkitty wird in der Datei grubx64.efi im EFI-Systempartition (EFI system partition, /boot/efi/EFI/ubuntu) anstelle des standardmäßigen GRUB-Bootloaders abgelegt. Nach der Aktivierung durch die UEFI-Firmware lädt das Bootkit den tatsächlichen GRUB2-Bootloader in den Speicher und nimmt Änderungen am im Speicher befindlichen GRUB2-Code vor, die die Integritätsprüfung der zukünftig geladenen Komponenten deaktivieren, und fügt auch einen Handler hinzu, der nach der Entpackung des Linux-Kernel-Images in den Speicher aufgerufen wird. Dieser Handler nimmt Änderungen an den im Speicher geladenen Kernel-Funktionen vor (deaktiviert die Überprüfung der Module durch digitale Signaturen) und verändert die Startzeile des Initialisierungsprozesses von „/init“ zu „LD_PRELOAD=/opt/injector.so /init“.

Die Bibliothek injector.so fängt einige SELinux-Operationen und die Funktion init_module ab, die dann verwendet wird, um das Kernel-Modul /opt/dropper.ko zu laden. Das Kernel-Modul dropper.ko erstellt und startet die ausführbare Datei /opt/observer, versteckt sich anschließend in der Liste der Kernel-Module und setzt Systemaufruf-Handler wie getdents und tcp4_seq_show, um die Datei /opt/observer und bestimmten Netzwerkverkehr zu verbergen. Die ausführbare Datei /opt/observer lädt das Kernel-Modul /opt/rootkit_loader.ko, das als Loader für das Rootkit /opt/rootkit fungiert.

Der UEFI-Bootkit Bootkitty wurde entdeckt, der bösartigen Code in den zu ladenden Linux-Kernel einfügt.

Für die Installation des Bootkits ist ein privilegierter Zugang zum System erforderlich, und solche Arten von Malware werden von Angreifern normalerweise nach einem erfolgreichen Angriff oder einer Kompromittierung des Systems verwendet, um ihre weitere Präsenz zu sichern und bösartige Aktivitäten zu verbergen. Die Bibliothek injector.so und die bösartigen Kernel-Module werden in das Image des initialen RAM-Disk oder das Dateisystem des Angreifers eingefügt. Der Bootloader grubx64.efi wird im Verzeichnis mit Dateien für UEFI abgelegt.

In the Bootkitty variant that fell into the hands of researchers, memory function modifications in the kernel were made at predetermined offsets without checking the correctness of these offsets for the loaded kernel version. The offsets used in Bootkitty were applicable only to certain versions of the kernel and GRUB provided in specific releases of Ubuntu, causing boot failures in other systems. For verifying the Bootkitty bootloader (grubx64.efi), a self-signed certificate was used, which prevented the bootkit from being applied to systems with UEFI Secure Boot enabled without adding the attacker's certificate to the list of trusted certificates in UEFI. Such characteristics led the researchers to conclude that Bootkitty is merely a prototype bootkit, not yet used for real attacks.

After examining the published information from ESET, researchers from Binarly Research noted BMP images related to Bootkitty artifacts, which were used to exploit the LogoFAIL vulnerability, allowing code execution at the UEFI firmware level and bypassing the UEFI Secure Boot mechanism. In the context of Bootkitty, the LogoFAIL vulnerability was exploited to add the attacker's self-signed certificate to the list of approved UEFI certificates, which signed the Bootkitty bootloader grubx64.efi, enabling the bootkit to run on systems with active UEFI Secure Boot without manual certificate addition.

The attack is carried out by placing a specially crafted BMP image in the ESP (EFI System Partition) for display by the UEFI firmware as the manufacturer’s logo. Due to the use of vulnerable libraries in UEFI firmware for handling images, processing the specially crafted image may lead to a buffer overflow and the execution of code with UEFI firmware privileges. The LogoFAIL vulnerability was identified a year ago and affected UEFI firmware, among others, used on laptops by Acer, HP, Fujitsu, and Lenovo. In newer versions of UEFI firmware, the issue has been resolved, but many devices still in use continue to operate with vulnerable firmware versions.

Der UEFI-Bootkit Bootkitty wurde entdeckt, der bösartigen Code in den zu ladenden Linux-Kernel einfügt.


Quelle: opennet.ru
60GB SSD 8Gb DDR4