Modern veri merkezleri, uzaktan yönetim için **Baseboard Management Controller (BMC)**’lara güveniyor. Bu yerleşik işlemciler, yöneticilerin sunucuları yeniden yapılandırmasına, donanım sağlığını izlemesine ve sistem kapalı olsa bile **firmware** güncellemeleri yapmasına olanak tanıyor.
Ancak bu yetenekler, güvenliği önemli ölçüde tehlikeye atmakta ve saldırı yüzeyini genişletmektedir. Korumasız bırakıldıklarında, ele geçirilmiş bir BMC, bir dizi cihaz üzerinde sürekli ve gizli bir erişim sağlayabilir.
NVIDIA’nın **Offensive Security Research (OSR)** ekibi, veri merkezi ortamlarında kullanılan BMC firmware’ını analiz etti. Ekip, 18 güvenlik açığı tespit etti ve dokuz işleyen exploit geliştirdi. Bu tür güvenlik açıkları, modern altyapının genellikle göz ardı edilen bileşenlerinde önemli güvenlik açıklarına yol açabilir ve işletmeleri riske atabilir.
Bu yazıda BMC’lerin nasıl çalıştığı, OSR’nin ortaya çıkardığı güvenlik açıkları ve işletmelerin kendilerini nasıl koruyabilecekleri ele alınacaktır. Daha fazla bilgi için, BMC’yi Kırmak: Krallığın Unutulmuş Anahtarı başlıklı makaleye göz atabilirsiniz.
BMC’lerin Güçlü ve Tehlikeli Özellikleri
BMC’ler, ölçekli güvenli uzaktan yönetimi sağlayan gömülü hizmet işlemcileridir. Hiperölçekli veya fiziksel olarak erişilemeyen ortamlarda, yöneticilerin donanımı izlemelerine, sistem firmware’ını yeniden yapılandırmalarına ve makineleri kurtarmalarına olanak tanır. Bu eylemlerin bazıları, ana cihazı açmadan bile gerçekleştirilebilir.
Klavye-video-fare (KVM) erişimi sayesinde, BMC’ler BIOS ayarlarını değiştirebilir, firmware güncellemeleri yapabilir ve önyükleme davranışını kontrol edebilir. Detaylı verileri toplar; sıcaklık, güç tüketimi ve fan hızı gibi. BMC’ler, ana işletim sisteminden bağımsız olarak çalışır. Bu düzeydeki erişim modern altyapı için gereklidir; fakat aynı zamanda potansiyel güvenlik risklerini de beraberinde getirir.
BMC’ler genellikle geleneksel güvenlik izleme sistemlerinin dışındadır, özel yönetim arayüzleri üzerinden erişilebilirler ve üçüncü taraf firmware yığınları ile desteklenirler. Ele geçirildiklerinde, kontrol ettikleri her sistem üzerinde kalıcı bir platform haline gelebilirler ve bu durum genellikle tespit edilmesi zor ya da imkansızdır.
NVIDIA sistemleri (örneğin NVIDIA DGX H100) güvenli, ölçeklenebilir operasyonlar için BMC’lere dayanır. Bu nedenle, bileşenlerin dış tedarikçilerden sağlanıyor olsa bile, güvenlikleri titiz bir şekilde değerlendirilir.
BMC’ler yalnızca **kontrol düzlemi** değil; aynı zamanda potansiyel bir **tehdit düzlemi** olarak da değerlendirilmektedir ve bu yüzden güvenli hale getirilmeleri zorunludur.

BMC İçindeki Tehditler: Yan Kanal Saldırılarından Kök Erişime
NVIDIA OSR ekibi, modern veri merkezi sunucularında yaygın olarak kullanılan bir BMC firmware paketini analiz etti. Kaynak koduna erişim olmaksızın, ekip firmware’i bir cihaz görüntüsünden tersine mühendislik ile analiz etti ve 18 güvenlik açığı tespit etti. Bu açıklar, kimlik bilgileri yönetimi hatalarından bellek bozulması hatalarına kadar geniş bir yelpazeye yayılmakta olup, gerçek dünya etkilerini değerlendirmek için dokuz işleyen exploit geliştirdi.
Yan Kanallar ile Kimlik Bilgisi Sızdırılması
Ekip, IPMI kimlik doğrulama sürecini incelemeye başladı ve 2013 yılında bulunan ve CVE-2013-4786 olarak atanan bir hash sızıntısı açığına karşı savunmasız olduğunu doğruladı. Ancak, bu açığın yalnızca bir saldırganın BMC sisteminde geçerli bir kullanıcı adı bildiği durumda kullanılabileceği not edildi. BMC’nin yanıt süreleri, kullanıcı adlarının doğru olup olmadığını belirlemek için bir zamanlama oracle yan kanalını ortaya çıkardı. Bu bilgi ile geçerli bir kullanıcı adı bulduktan sonra, sızan hash ile çevrimdışı olarak şifreyi zorlayabileceğimiz anlaşıldı.
Açığın kaynağı, BMC’nin kimlik doğrulama sırasında kullanıcı adlarını karşılaştırmak için kullandığı memcmp
fonksiyonuna dayanıyordu. memcmp
, ilk uyumsuzlukta çıkış yapması nedeniyle, yanıt süresi doğru karakterlerin kaç tanesinin doğru olduğunu sızdırdı ve bu da klasik bir zamanlama yan kanal oluşturdu.

Güvensiz API’ler ile Tam Erişim
Firmware görüntüsü, kullanıcı veritabanının şifreli parolalar ile birlikte yönetildiğini, ancak anahtarların aynı yerde bulunduğunu gösterdi. Ekip, bu Redis veritabanının sorgulanmasına olanak tanıyan bir API keşfetti. Parola ve kullanıcı adlarının bulunduğu yerleri belirleyerek, bunlara API ile eriştiler, şifreleri çözerek tüm kullanıcı veritabanını elde ettiler.
Başka bir API, BMC kimlik bilgileri ile IPMI sunucu işlemi içinde sanal belleğe okuma/yazma erişimi sağlıyor. Bölge veya boyut kontrolleri olmadan, sunucu modülünün her zaman belirli bir temel adreste yüklendiğini keşfettik. Bu, bir dizi saldırıyı önlemek için standart bir tedbir olan **Adres Alanı Düzenleme Rastgeleliği (ASLR)** eksikliğini gösteriyordu.

ASLR eksikliği, ekibin gizli bir yapılandırma bayrağının yerini belirlemesine ve bunu doğrudan API aracılığıyla değiştirmesine olanak tanıdı. Bu, normalde görünmeyen bir dosya indirme özelliğini etkinleştirmemizi sağladı. Bunu, ayrı bir yol geçişi açığı ile birleştirerek BMC’den hassas dosyaları (örneğin, /etc/shadow
) elde edebildik.

/etc/shadow
Bu yetenekler varsayılan olarak etkinleştirilmişti ve kimlik doğrulama sonrasında erişilebilirdi. Birlikte, sisteme derin erişim sağladı ve kalıcılık için net bir yol sundu.
Ana Sisteme Geçiş
BMC’ye tam erişim sağladıktan sonra, ekibin ana sistemle etkileşim kurmanın yollarını araştırmaya başladığı gözlemlendi. BMC KVM işlevselliğini kullanarak, bootloader parametrelerini değiştirdik ve herhangi bir kullanıcı kimliği gerektirmeksizin ana işletim sistemine erişim sağladık. Bu örnekte Güvenli Önyükleme (Secure Boot) etkin değildi. Ancak etkin olsaydı, UEFI ayarları BMC aracılığıyla ayarlanabilirdi. Bu da, UEFI şifre korumalı değilse güvenli önyüklemenin devre dışı bırakılmasına olanak tanırdı.
İçeri girdikten sonra ana diskin şifrelenmediğini ve kalan firmware güncelleme görüntülerini içerdiğini bulduk. Bu, orijinal BMC firmware’ını elde edip tersine mühendislik yapma imkanı sağladı.
Ayrıca, BMC’yi ana sistemin SPI flash’ına doğrudan okumak ve yazmak için açık bir API keşfettik. Bunu kullanarak NVRAM girdilerini değiştirdik ve örneğin Güvenli Önyüklemeyi devre dışı bıraktık. Bu teorik bir yol değil, test edilip onaylanmış bir yöntemdir. Kalıcılık ve ana sistemin ele geçirilmesi imkânları açısından sonuçları ciddidir.

Klasik Bellek Saldırıları, Modern Tedbirler Yok
Kimlik doğrulama işlevselliğini gözden geçirirken, ekip, günlükleme amacıyla bir paylaşılan telemetri kütüphanesini yöneten bir mantık keşfetti. Bu kodda, ön kimlik doğrulamadan kaynaklanan klasik bir yığın taşma açığı bulduk. BMC firmware’i, doğrulanmamış girdileri sabit boyutlu bir yığın belleğe kopyalamak için strcpy
kullanıyordu ve hemen ardından bir fonksiyon işaretçisi çağrılıyordu. Bu durum, giriş denemeleri sırasında kod yürütme için doğrudan bir yol sağladı.
Özellikle dikkat çekici olan, yığın ve bellek bozulması açıkları için standart modern tedbirlerin (örneğin: veri yürütme önleme, yığın çerezleri, ASLR, kontrol akış bütünlüğü, sandboxing gibi) olmamasıdır. Bu, modern sistemlerdeki temel önlemler arasında yer alır ve eksiklik, sömürü işlemini önemli ölçüde kolaylaştırdı.
Ekip, bu ön kimlik doğrulama açığı için tam kontrol akışını ele geçiren bir exploit geliştirdi, bu da enjekte edilmiş shellcode’un yürütülmesine olanak tanıdı. Savunucu katmanların eksikliği nedeniyle sömürü süreci oldukça basitti.
Ekosistemi Güçlendirme
Açıkları doğruladıktan sonra, OSR, etkilenen BMC firmware’ından sorumlu **American Megatrends Inc. (AMI)** ile yakın çalıştı. Ekip, sorunları yamalamalarına ve müşteri tabanları ile düzeltmeleri koordine etmelerine yardımcı olabilecek detaylı teknik raporlar sağladı.
Bu firmware, yalnızca NVIDIA ürünlerinde değil, endüstride yaygın olarak kullanıldığı için, ekibimiz, etkilenen müşterilerin hızlı bir şekilde harekete geçebilmesi için, resmi satıcı CVE’lerinin standart süreçlerini takip ederken, kendi CVE’lerimizi de paralel bir şekilde yayınladı. Bu çaba, genel olarak BMC güvenliğini yükseltmeye yardımcı oldu.
Güvenlik Takımlarının Atması Gereken Adımlar
BMC’ler, donanımınız üzerinde derin kontrol sağlayan ayrıcalıklı sistemlerdir. Bunlar güvenlik modelinizin bir parçası değilse olmalıdır. Başlamak için:
- Erişimi kısıtlayın: BMC arayüzlerini izole yönetim ağlarında bulundurun ve kesinlikle Internet’e açmayın.
- Patch’leri agresif bir şekilde uygulayın: Tedarikçilerinizle birlikte çalışarak BMC firmware’ını güncel tutun ve CVE’leri takip edin.
- Etkinliği izleyin: BMC olaylarını, günlükleme ve tespit stratejinizin bir parçası olarak düşünün. Firmware, yapılandırma ve oturum açma davranışındaki değişiklikleri izleyin.
- Tedarik zincirinizi gözden geçirin: Tedarikçilerinizden BMC firmware’ının nasıl oluşturulup, test edildiğine ve sürdürüldüğüne dair bilgi isteyin. Mümkünse doğrulayın.
- Güçlendirme talep edin: Gömülü sistemlerde ASLR, yığın koruması ve yürütülemez bellek gibi temel önlemleri talep edin. Bu korumalar, asgari gereklilikler olmalıdır.
BMC’ler tam sistem kontrolüne giden bir kapıdır. Kompromize edildiklerinde, saldırganlara kalıcı, düşük düzeyde bir erişim sağlar. Bunların güvence altına alınması, modern altyapıyı korumak açısından kritik öneme sahiptir.
Altyapı Güvenliğini Güçlendirmek
Güvenlik açıklarını proaktif şekilde tanımlayarak, tedarikçilerle yakın çalışarak ve daha geniş toplulukla içgörüleri paylaşarak, NVIDIA tüm veri merkezi ekosisteminde daha güçlü savunmaların artırılmasına yardımcı olmaktadır. Bu BMC araştırması, derin teknik güvenlik çalışmalarının gizli riskleri açığa çıkardığı ve gerçek etki sağladığı bir örnektir. Ekip, varsayımları sorgulamaya, göz ardı edilen bileşenleri araştırmaya ve altyapı güvenliğini artırmaya devam edecektir. Yığını güvence altına almak, onun her katmanını güvence altına almak anlamına gelir. Daha fazla bilgi almak için, tam araştırma makalesine, BMC’yi Kırmak: Krallığın Unutulmuş Anahtarı başlıklı yazıya ulaşabilirsiniz.
Yığınınızdaki diğer katmanları güvenli hale getirmek için daha fazla bilgi mi arıyorsunuz? En son gelişmeler hakkında bilgi edinmek için NVIDIA GTC konferansı oturumlarını inceleyin.