Siber güvenlik şirketi CrowdStrike yayınlandı Dünya çapında milyonlarca Windows cihazının çökmesine neden olan Falcon Sensor yazılım güncelleme çökmesinin ayrıntılarını içeren temel neden analizi.
Başlangıçta Ön Olay Sonrası İnceleme’de (PIR) vurgulandığı gibi, “Kanal Dosyası 291” olayı, adlandırılmış kanalları ve diğer Windows işlem içi iletişim (IPC) mekanizmalarını kötüye kullanan yeni saldırı tekniklerinin görünürlüğünü ve tespitini sağlamak için yeni bir Şablon Türü getirildikten sonra ortaya çıkan bir içerik doğrulama sorununa dayanıyordu.
Özellikle, şirketin bulut üzerinden dağıtılan sorunlu bir içerik güncellemesiyle ilgili olduğu ve bunun bir çökmeye yol açan birkaç eksikliğin bir araya gelmesiyle oluştuğu belirtiliyor. Bunlardan en önemlisi, IPC Şablon Türü aracılığıyla İçerik Doğrulayıcısına iletilen 21 girdi ile İçerik Yorumlayıcısına iletilen 20 girdi arasındaki uyumsuzluk.
CrowdStrike, parametre uyumsuzluğunun test sürecinin “çoklu katmanları” sırasında keşfedilmediğini, bunun kısmen test sırasında 21. girdi için joker karakter eşleştirme ölçütlerinin kullanılması ve Mart-Nisan 2024 arasında teslim edilen ilk IPC Şablon Örnekleri’nden kaynaklandığını söyledi.
Başka bir deyişle, 19 Temmuz 2024’te yayınlanan Kanal Dosyası 291’in yeni sürümü, 21. giriş parametresi alanını kullanan ilk IPC Şablon Örneğiydi. 21. alanda joker olmayan eşleşme ölçütleri için belirli bir test vakasının olmaması, bunun Hızlı Yanıt İçeriği sensörlere gönderilene kadar işaretlenmediği anlamına geliyordu.
Şirket, “Sorunlu içeriği taşıyan 291 Kanal Dosyası’nın yeni sürümünü alan sensörler, İçerik Yorumlayıcısı’nda gizli bir sınır dışı okuma sorununa maruz kaldı” dedi.
“İşletim sisteminden gelen bir sonraki IPC bildiriminde, yeni IPC Şablon Örnekleri değerlendirildi ve 21. giriş değerine göre bir karşılaştırma belirtildi. İçerik Yorumlayıcısı yalnızca 20 değer bekliyordu. Bu nedenle, 21. değere erişme girişimi, giriş veri dizisinin sonunun ötesinde sınır dışı bir bellek okuması üretti ve sistem çökmesine neden oldu.”
CrowdStrike, sorunu gidermek için sensör derleme zamanında Şablon Türü’ndeki giriş alanlarının sayısını doğrulamanın yanı sıra, sınır dışı bellek okumalarını önlemek için İçerik Yorumlayıcısı’na çalışma zamanı giriş dizisi sınırları denetimleri eklediğini ve IPC Şablon Türü tarafından sağlanan giriş sayısını düzelttiğini söyledi.
“Eklenen sınır denetimi, İçerik Yorumlayıcısının giriş dizisine sınır dışı erişim gerçekleştirmesini ve sistemi çökertmesini önler,” diye belirtti. “Ek denetim, giriş dizisinin boyutunun Hızlı Yanıt İçeriği tarafından beklenen giriş sayısıyla eşleştiğine dair ek bir çalışma zamanı doğrulama katmanı ekler.”
CrowdStrike, bunun da ötesinde, Şablon Türü geliştirme sırasında test kapsamını artırmayı ve tüm (gelecekteki) Şablon Türlerindeki her alan için joker karakterli olmayan eşleşme ölçütlerine yönelik test vakalarını dahil etmeyi planladığını söyledi.
Sensör güncellemelerinden bazılarının aşağıdaki boşlukları da gidermesi bekleniyor:
- İçerik Doğrulayıcı, Şablon Örneklerindeki içeriğin İçerik Yorumlayıcısına girdi olarak sağlanandan daha fazla alanda eşleşen ölçütleri içermediğinden emin olmak için yeni denetimler eklenecek şekilde değiştiriliyor
- İçerik Doğrulayıcı, yalnızca 21. alanda joker karakter eşleşme ölçütlerine izin verecek şekilde değiştiriliyor; bu, yalnızca 20 girdi sağlayan sensörlerde sınır dışı erişimi engelliyor
- İçerik Yapılandırma Sistemi, ilk Şablon Örneğinin oluşturma sırasında Şablon Türü ile test edilmesi gerçeğinden bağımsız olarak her yeni Şablon Örneğinin test edilmesini sağlamak için yeni test prosedürleriyle güncellendi
- İçerik Yapılandırma Sistemi ek dağıtım katmanları ve kabul kontrolleriyle güncellendi
- Falcon platformu, müşterilere Hızlı Yanıt İçeriğinin teslimi üzerinde daha fazla kontrol sağlamak için güncellendi
Son olarak CrowdStrike, Falcon sensör kodunun hem güvenlik hem de kalite güvencesi için daha fazla inceleme yapması için iki bağımsız üçüncü taraf yazılım güvenliği satıcısıyla anlaştığını söyledi. Ayrıca, geliştirmeden dağıtıma kadar uçtan uca kalite sürecinin bağımsız bir incelemesini de gerçekleştiriyor.
Ayrıca, Windows’un çekirdek sürücüsüne güvenmek yerine kullanıcı alanında güvenlik işlevlerini gerçekleştirmenin yeni yollarını sunması üzerine Microsoft ile çalışma sözü verdi.
“CrowdStrike’ın çekirdek sürücüsü, sensörün kullanıcı modu işlemleri başlamadan önce başlatılan kötü amaçlı yazılımları gözlemlemesini ve bunlara karşı savunma yapmasını sağlamak için sistem önyüklemesinin erken bir aşamasında yüklenir,” denildi.
“Bu çekirdek yeteneklerine güncel güvenlik içeriği (örneğin, CrowdStrike’ın Hızlı Tepki İçeriği) sağlamak, sensörün çekirdek kodunda değişiklik yapmadan sistemleri hızla gelişen bir tehdit ortamına karşı savunmasını sağlar. Hızlı Tepki İçeriği yapılandırma verisidir; kod veya çekirdek sürücüsü değildir.”
Kök neden analizinin yayınlanması Delta Air Lines’ın söz konusu CrowdStrike ve Microsoft’tan, büyük çaplı kesintilere yol açtıkları ve binlerce iptal edilen uçuşla ilgili olarak yaklaşık 500 milyon dolarlık gelir kaybı ve ek maliyete neden oldukları gerekçesiyle tazminat talep etmekten başka “seçeneği” yok.
Hem CrowdStrike hem de Microsoft o zamandan beri cevap verdi Eleştirilere yanıt olarak, günlerce süren kesintiden kendilerinin sorumlu olmadığını ve Delta’nın yerinde yardım tekliflerini reddettiğini, bunun da taşıyıcının sorunlarının hatalı güvenlik güncellemesi sonucu Windows makinelerinin çökmesinden çok daha derinlere inebileceğini gösterdiğini belirtti.
Güncelleme
CrowdStrike, Falcon sensörünün ayrıcalık yükseltme veya uzaktan kod yürütmeye karşı hassas olduğu iddialarını reddederek, sınır dışı (OOB) bellek okuma işleminin “isteğe bağlı bellek adreslerine yazmak veya program yürütmeyi kontrol etmek için hiçbir mekanizma sağlamadığını” belirtti; “Bu, bir saldırganın çekirdek belleğini etkileyerek okunan sınır dışı adresin tamamen kontrol edilebileceği ideal koşullar altında bile geçerlidir.”
Açıklama, bir soruya yanıt olarak geldi rapor Çinli güvenlik araştırma şirketi Qihoo 360, milyonlarca Windows bilgisayarı çökerten sensör hatasının yetki yükseltme ve uzaktan kod çalıştırma amacıyla kullanılabileceğini duyurdu.
“Ek bellek bozulmasına veya program yürütmesinin kontrolüne yol açan hiçbir yol yok,” Adam Meyers söz konusuŞirketin “kanal dosyalarına müdahaleyi önlemek için sertifika sabitleme, toplam doğrulama, kanal dosyalarına erişim kontrol listesi(leri) ve müdahaleye karşı tespitler gibi birden fazla koruma katmanı uyguladığını” da sözlerine ekledi.
“Sınır dışı okuma hatası, ele aldığımız ciddi bir sorun olmasına rağmen, keyfi bellek yazmaları veya program yürütmesinin kontrolü için bir yol sağlamaz. Bu, istismar edilme potansiyelini önemli ölçüde sınırlar.”