Özellikle Linux sistemlerini hedef alan ilk UEFI önyükleme kiti keşfedildi; bu, daha önce Windows’a odaklanan gizli ve kaldırılması zor önyükleme kiti tehditlerinde bir değişime işaret ediyor.
‘Bootkitty’ olarak adlandırılan Linux kötü amaçlı yazılımı, gerçek saldırılarda kullanılan tam teşekküllü bir tehdit yerine yalnızca bazı Ubuntu sürümlerinde ve yapılandırmalarında çalışan bir kavram kanıtıdır.
Bootkit’ler, bir bilgisayarın önyükleme sürecini etkilemek, işletim sisteminden önce yüklemek ve çok düşük düzeyde bir sistem üzerinde kontrol sahibi olmasını sağlamak için tasarlanmış kötü amaçlı yazılımlardır.
Bu uygulamanın avantajı, önyükleme kitlerinin işletim sistemi düzeyinde çalışan güvenlik araçlarından kaçabilmesi ve sistem bileşenlerini değiştirebilmesi veya tespit edilme riski olmadan kötü amaçlı kod enjekte edebilmesidir.
Bootkitty’yi keşfeden ESET araştırmacıları, gerçek dünyadaki mevcut sonuçlara rağmen, Bootkitty’nin varlığının UEFI bootkit tehditleri alanında önemli bir evrim olduğu konusunda uyarıyor.
Bir Linux önyükleme kiti yapım aşamasında
ESET, Bootkitty’yi Kasım 2024’te VirusTotal’a yüklenen şüpheli bir dosyayı (bootkit.efi) inceledikten sonra keşfetti.
Analizin ardından ESET, bunun, sistem önyükleme işlemi sırasında çekirdek imza doğrulamasını atlayan ve kötü amaçlı bileşenleri önceden yükleyen bir Linux UEFI önyükleme kitinin ilk durumu olduğunu doğruladı.
Bootkitty kendinden imzalı bir sertifikaya dayanır, bu nedenle Güvenli Önyüklemenin etkin olduğu sistemlerde çalışmaz ve yalnızca belirli Ubuntu dağıtımlarını hedefler.
Ek olarak, sabit kodlanmış uzaklıklar ve basit bayt deseni eşleştirmesi, onu yalnızca belirli GRUB ve çekirdek sürümlerinde kullanılabilir hale getirir, dolayısıyla yaygın dağıtım için uygun değildir.
ESET ayrıca, kötü amaçlı yazılımın pek çok kullanılmayan işlev içerdiğini ve çekirdek sürümü uyumluluğunu zayıf şekilde ele aldığını, bunun da çoğu zaman sistem çökmelerine yol açtığını belirtiyor.
Kötü amaçlı yazılımın hatalı doğası ve ESET telemetrisinin canlı sistemlerde Bootkitty’ye dair hiçbir işaret göstermemesi, araştırmacıların bunun erken gelişim aşamasında olduğu sonucuna varmasına yol açtı.
Bootkitty’nin yetenekleri
Önyükleme sırasında Bootkitty, Güvenli Önyüklemenin bütünlük doğrulama kontrollerini atlamak için UEFI güvenlik kimlik doğrulama protokollerini (EFI_SECURITY2_ARCH_PROTOCOL ve EFI_SECURITY_ARCH_PROTOCOL) bağlar ve güvenlik politikalarından bağımsız olarak önyükleme kitinin yüklenmesini sağlar.
Daha sonra, ‘start_image’ ve ‘grub_verifiers_open’ gibi çeşitli GRUB işlevlerini bağlayarak, önyükleyicinin Linux çekirdeği de dahil olmak üzere ikili dosyalar için bütünlük kontrollerini manipüle ederek imza doğrulamayı kapatır.
Bootkitty daha sonra Linux çekirdeğinin sıkıştırmayı açma sürecini durdurur ve ‘module_sig_check’ işlevini bağlar. Bu, onu çekirdek modülü kontrolleri sırasında her zaman başarılı olmaya zorlayarak kötü amaçlı yazılımın kötü amaçlı modüller yüklemesine olanak tanır.
Ayrıca, ilk ortam değişkenini ‘LD_PRELOAD=/opt/injector.so’ ile değiştirerek, kötü amaçlı kitaplığın sistem başlatıldığında işlemlere eklenmesini sağlar.
ESET, tüm bu sürecin arkasında, bazıları kasıtlı, bazıları amaçsız birçok eser bıraktığını açıklıyor; bu da Bootkitty’nin incelik eksikliğinin bir başka göstergesi.
Araştırmacılar ayrıca Bootkitty’yi VT’ye yükleyen aynı kullanıcının ‘BCDropper’ adlı imzasız bir çekirdek modülü de yüklediğini ancak mevcut kanıtların bu ikisi arasında zayıf bir bağlantı olduğunu belirtti.
BCDropper, virüslü sistemdeki dosyaları gizleyen, işleyen ve bağlantı noktalarını açan rootkit işlevine sahip bir çekirdek modülü olan ‘BCObserver’ adlı bir ELF dosyasını bırakır.
Bu tür kötü amaçlı yazılımların keşfi, kuruluş Linux’u giderek daha fazla benimserken, saldırganların daha önce Windows’a izole edilmiş olan Linux kötü amaçlı yazılımlarını nasıl geliştirdiğini gösteriyor.
Bootkitty ile ilişkili güvenlik ihlali göstergeleri (IoC’ler) bu GitHub deposunda paylaşılmıştır.