Firmware güvenlik firması Binarly, birçok cihazda kullanılan U-Boot bootloader'ında 6 yeni güvenlik açığı keşfetti. Bu açıklar, ev yönlendiricilerinden akıllı kameralara ve veri merkezi sunucularındaki yönetim çiplerine kadar geniş bir yelpazedeki donanımı etkiliyor. Keşfedilen açıklardan dördü cihazın çökmesine neden olabilirken, diğer ikisi saldırganların önyükleme sırasında kendi kodlarını çalıştırmasına olanak tanıyor. Bu durum, cihazın güven zincirini tamamen ele geçirme potansiyeli taşıyor.
U-Boot, işletim sistemi öncesinde çalışan ve donanımı başlatan küçük bir programdır. Bu nedenle, U-Boot'taki bir güvenlik açığı, daha sonra yüklenen tüm yazılımların güvenliğini tehdit edebilir. Binarly'nin bulduğu açıkların tamamı, U-Boot'un henüz imza doğrulaması yapmamış olduğu, güvenilmeyen bir imajı okurken tetikleniyor. Yani saldırgan, bootloader'a sahte bir imaj göndererek doğrulama adımını atlatabiliyor.
Açıklar, Binarly BRLY-2026-037 ile BRLY-2026-042 arasında numaralandırıldı ve henüz CVE kimlikleri atanmadı. Bunlardan en kritik olanları BRLY-2026-037 ve BRLY-2026-038, fdt_get_name adlı bir fonksiyonda kontrolsüz bir değerden kaynaklanıyor. U-Boot, bu fonksiyon aracılığıyla aygıt ağacı ayrıştırma kütüphanesini kullanırken, hatalı biçimlendirilmiş bir imajda null pointer ve negatif uzunluk döndürebiliyor. Bu değerler kontrol edilmeden kullanıldığında, bellek bozulmasına ve kod çalıştırmaya yol açabiliyor.
Diğer dört açık ise yalnızca bootloader'ı çökertebiliyor. BRLY-2026-039 ve BRLY-2026-041, saldırganın kontrol ettiği boyut veya ofset değerlerine güvenerek imajın sonunu okumaya çalışıyor. BRLY-2026-040, eski bir imaj formatından gelen null pointer'ı kontrol etmeden kullanıyor. BRLY-2026-042 ise derinlemesine iç içe geçmiş bir imajın neden olduğu yığın taşmasıyla tetikleniyor. Binarly, her bir açık için kanıtlama amaçlı imaj ve yeniden üretim adımları yayınladı, ancak henüz gerçek saldırılarda kullanıldığına dair bir rapor bulunmuyor.
Bu açıkların en kötü senaryosu, cihazın önyükleme yapamaz hale gelmesi ve fiziksel müdahale gerektirmesidir. Kod çalıştırma ise daha vahimdir; çünkü bu kod işletim sistemi altında çalıştığı için normal güvenlik araçları tarafından tespit edilemeyebilir. Ancak saldırganın bu açıkları kullanabilmesi için öncelikle önyükleme yoluna kötü amaçlı bir imaj göndermesi gerekiyor. Bu genellikle fiziksel erişim veya ayrıcalıklı bir konum gerektirse de, daha önce Supermicro sunucu yönetim denetleyicilerinde görüldüğü gibi, uzaktan erişimle de mümkün olabilir.
Henüz kararlı bir sürümde düzeltme bulunmuyor. U-Boot, Haziran ayında altı yamayı birleştirmiş olsa da, Temmuz sürümü (v2026.07) Nisan ayında dondurulduğu için bu yamaları içermiyor. Bir sonraki kararlı sürüm olan v2026.10 ise Ekim ayına kadar çıkmayacak. Bu nedenle, U-Boot tabanlı ürünlerin satıcıları ve bakımcıları, yamaları upstream'ten hemen çekmeli ve hiçbir CVE bulunmadığı için Binarly danışma belgelerindeki commit bağlantılarını takip etmelidir. Son kullanıcılar ise ürün satıcılarından firmware güncellemesi beklemelidir.
Bu tür bir güvenlik açığı daha önce de görülmüştü. Aynı imza doğrulama mantığı, Nisan ayında düzeltilen CVE-2026-33243 ile hedef alınmıştı. Ayrıca, aynı imza araçlarını kullanan barebox bootloader'ı da etkilenmişti. Bu açıkta, imzanın kapsadığı alanı listeleyen bir özellik imzalanmamıştı ve bu sayede değiştirilmiş bir imaj, doğrulanmamış parçaları yerleştirebiliyordu. Şimdiki açıkların kaynağı olan fdt_get_name fonksiyonu, Linux çekirdeği ve barebox gibi diğer projelerle paylaşılan libfdt kütüphanesinden geliyor. Bu nedenle, aynı kontrolsüz dönüş hatası, bu kodun kullanıldığı her yerde ortaya çıkabilir. LogoFAIL ve BootHole gibi önceki saldırılar, bootloader güvenliğinin ne kadar kritik olduğunu ve yamaların milyonlarca cihaza ulaşmasının ne kadar zaman aldığını göstermiştir.
Kaynak: thehackernews.com