Cloudflare, sabit bir test grubuyla yetinmek yerine her girişimden sonra saldırı isteklerini değiştirebilen gelişmiş yapay zekâ modelleri kullanarak kendi web uygulaması güvenlik duvarını (WAF) test etti. Şirket, deneyi önceden alınmış izinle bir müşteriye özel staging ortamında gerçekleştirdi ve 45 senaryo kapsamında 1.107 girişim kaydetti.
Temel fikir, farklı kodlamaları deneyebilen, yükü HTTP isteği içinde başka konumlara taşıyabilen veya hedefin gösterim biçimini değiştirebilen bir saldırganın davranışının bir bölümünü taklit etmek ve ardından bir sonraki girişimi seçmek için yanıttan yararlanmaktır. Model, uygulama koduna, dahili WAF kurallarına veya kural numaralarına erişemedi; yalnızca istek bağlamı ve belirli HTTP yanıt verileriyle çalıştı.
Uyarlanabilir test nasıl çalıştı?
Her senaryo, WAF'ın engellediği bilinen bir istekle başladı; ardından model yeni bir değişiklik önerdi. İstek gönderildikten sonra başka bir model veya modelin inceleme çağrısı yanıtı değerlendirdi ve sistem, azami girişim sınırı içinde bir sonraki adımı belirledi. İsteklerin yürütülmesini ve kanıtların kaydedilmesini kod üstlendi. Ayrıca her girişimden önce alan adı izin verilenler listesi üzerinden doğrulandı, yönlendirmeler durduruldu ve sistemin koruma kurallarını değiştirmesi veya yayımlaması engellendi.
Senaryoların 44'ü altı kategoriyi kapsıyordu: siteler arası komut dosyası çalıştırma (XSS), SQL enjeksiyonu, komut enjeksiyonu, sunucu tarafı istek sahteciliği (SSRF), yol geçişi veya yerel dosya ekleme (LFI) ve Log4j saldırıları. Kırk beşinci senaryo ise günlük enjeksiyonunu ayrı olarak ele aldı.
1.107 girişimden araştırılabilir 49 sonuca
WAF genel olarak güçlü bir performans gösterdi ve XSS, LFI, SQLi ve Log4j kategorilerinde neredeyse tam kapsam sağladı. İnsan incelemesinin ardından, 48'i komut enjeksiyonu ve SSRF kategorilerine ait olmak üzere araştırılmaya değer 49 sonuç kaldı. Engellenen isteklerin sayısı 558 olurken diğer girişimler geçersiz, zararsız veya yinelenen oldukları ya da hedefe ulaşmadıkları için kapsam dışı bırakıldı.
Cloudflare, engellenmeyen bir isteği doğrulanmış bir güvenlik açığı olarak kabul etmedi. İsteğin geçerli olması, hedefe ulaşması, açıkça zararlı kalması ve davranışın WAF'a atfedilebilmesi; ayrıca mühendislerin bunu güvenli biçimde yeniden üretebilmesi şart koşuldu. Bu ayrım önemlidir, çünkü WAF'ın aşılması tek başına uygulamanın başarıyla istismar edildiğini veya hassas verilere erişildiğini kanıtlamaz.
SSRF tespitindeki boşluğa örnek
Senaryolardan birinde sistem, bulut meta veri hizmetinin adresinin yazım biçimini değiştirdi, farklı sayısal gösterimler kullandı ve adresi isteğin birden fazla bölümüne yerleştirdi. Girişimlerin çoğu engellendi; ancak sonuna nokta eklenmiş bir gösterim kullanan girişimlerden biri WAF tarafından engellenmek yerine yönlendirmeye yol açtı. Cloudflare bunu erişim kimlik bilgilerinin ele geçirildiğinin veya istismarın başarılı olduğunun kanıtı olarak değil, araştırılmaya değer bir işaret olarak değerlendirdi.
Pratikte ne değişti?
Cloudflare, yeni bir kurala mı ihtiyaç olduğunu, istek normalleştirmenin mi iyileştirilmesi gerektiğini veya başka bir güvenlik katmanının müdahalesinin mi gerekli olduğunu belirlemek için sonuçları inceledi. Bulgular, Managed Ruleset içinde üç değişikliğe katkı sağladı: 21 Temmuz sürümünde SSRF - Obfuscated Host ve SSRF - Restricted Protocol tespitlerinin eklenmesi ve SSRF - Cloud tespitinin iyileştirilmesi. Gizlenmiş ana bilgisayar tespiti, doğrudan dahili adresler için alışılmadık sayısal biçimler kullanan isteklerden ortaya çıktı.
Deney, yapay zekânın burada mühendislik yargısının yerine geçmekten ziyade test alanını genişletmeye yarayan bir araç olduğunu gösteriyor. Aynı aileden iki model farklı varyasyonlar üretti, ancak temel sorunlar her ikisinde de ortaya çıktı. Ayrıca tek bir senaryodaki girişim sayısının artırılması ek sonuçların keşfedilmesini garanti etmedi; bazı diziler fikirleri tekrarlamaya başlarken başlangıç noktalarının, saldırı kategorilerinin ve giriş konumlarının artırılması daha geniş bir kapsam sağladı.
WAF'ın sınırları da geçerliliğini koruyor: güvenlik duvarını aşan yük, yalnızca uygulamanın kendisi istismara açıksa başarılı olur; bu nedenle yazılımları güncellemek ve güvenlik açıklarını gidermek gerekli olmaya devam ediyor. Cloudflare ayrıca kuralların önce kayıt modunda etkinleştirilmesini, eşleşen isteklerin ve güvenlik olaylarının incelenmesini, ardından meşru trafiğin etkilenmediği doğrulandıktan sonra engelleme moduna geçilmesini öneriyor. Şirket ileride modelin hem uygulama açıklarını hem de WAF kurallarını bildiği bir white-box testi sunmayı planlıyor.