Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

Bulut konularıyla ilgili önceki materyalimizde, söyledi, genel bulutta BT kaynaklarının nasıl korunacağı ve geleneksel antivirüslerin neden bu amaçlara tamamen uygun olmadığı. Bu yazıda bulut güvenliği konusuna devam edeceğiz ve WAF'ın evrimi ve neyin daha iyi seçileceği hakkında konuşacağız: donanım, yazılım veya bulut. 

Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

WAF nedir?

Bilgisayar korsanı saldırılarının %75'inden fazlası web uygulamalarının ve web sitelerinin güvenlik açıklarına yöneliktir: bu tür saldırılar genellikle bilgi güvenliği altyapısı ve bilgi güvenliği hizmetleri tarafından görülmez. Web uygulamalarındaki güvenlik açıkları, kullanıcı hesaplarının, kişisel verilerinin, şifrelerinin ve kredi kartı numaralarının ele geçirilmesi ve dolandırıcılık riskini taşır. Ayrıca web sitesindeki güvenlik açıkları, saldırganların kurumsal ağa giriş noktası görevi görüyor.

Web Uygulaması Güvenlik Duvarı (WAF), web uygulamalarına yönelik saldırıları engelleyen koruyucu bir ekrandır: SQL enjeksiyonu, siteler arası komut dosyası oluşturma, uzaktan kod yürütme, kaba kuvvet ve yetkilendirmeyi atlama. Sıfır gün güvenlik açıklarından yararlanan saldırılar da buna dahildir. Uygulama güvenlik duvarları, HTML, DHTML ve CSS dahil olmak üzere web sayfası içeriğini izleyerek ve potansiyel olarak kötü amaçlı HTTP/HTTPS isteklerini filtreleyerek koruma sağlar.

İlk kararlar nelerdi?

Web Uygulaması Güvenlik Duvarı oluşturmaya yönelik ilk girişimler 90'lı yılların başında yapıldı. Bu alanda en az üç mühendisin çalıştığı biliniyor. Bunlardan ilki Purdue Üniversitesi'nden bilgisayar bilimi profesörü Gene Spafford. Proxy uygulaması güvenlik duvarının mimarisini tanımladı ve bunu 1991 yılında kitabında yayınladı. "Uygulamada UNIX Güvenliği".

İkinci ve üçüncü ise Bell Laboratuvarlarından bilgi güvenliği uzmanları William Cheswick ve Marcus Ranum'du. İlk uygulama güvenlik duvarı prototiplerinden birini geliştirdiler. DEC tarafından dağıtıldı - ürün SEAL (Güvenli Harici Erişim Bağlantısı) adı altında piyasaya sürüldü.

Ancak SEAL tam teşekküllü bir WAF çözümü değildi. FTP ve RSH'ye yapılan saldırıları engelleme yeteneği gibi gelişmiş işlevselliğe sahip klasik bir ağ güvenlik duvarıydı. Bu nedenle günümüzün ilk WAF çözümünün Perfecto Technologies'in (daha sonra Sanctum) ürünü olduğu kabul ediliyor. 1999'da o sunulan AppShield sistemi. O dönemde Perfecto Technologies, e-ticarete yönelik bilgi güvenliği çözümleri geliştiriyordu ve çevrimiçi mağazalar, yeni ürünlerinin hedef kitlesi haline geldi. AppShield, dinamik bilgi güvenliği politikalarına dayalı olarak HTTP isteklerini ve engellenen saldırıları analiz edebildi.

AppShield ile hemen hemen aynı zamanlarda (2002'de), ilk açık kaynak WAF ortaya çıktı. O oldu ModSecurity. WAF teknolojilerini yaygınlaştırmak amacıyla oluşturulmuştur ve halen BT topluluğu tarafından desteklenmektedir (işte burada) GitHub'daki depo). ModSecurity, standart bir düzenli ifadeler (imzalar) kümesine dayalı olarak uygulamalara yönelik saldırıları engeller - kalıplara dayalı istekleri kontrol etmeye yönelik araçlar - OWASP Temel Kural Kümesi.

Sonuç olarak, geliştiriciler hedeflerine ulaşmayı başardılar - ModSecurity temelinde oluşturulanlar da dahil olmak üzere yeni WAF çözümleri piyasada görünmeye başladı.

Üç kuşak zaten tarih oldu

Teknolojinin gelişmesiyle birlikte gelişen üç nesil WAF sistemini ayırt etmek gelenekseldir.

Ilk nesil. Düzenli ifadelerle (veya gramerlerle) çalışır. Buna ModSecurity de dahildir. Sistem sağlayıcı, uygulamalara yönelik saldırı türlerini inceler ve meşru ve potansiyel olarak kötü niyetli istekleri tanımlayan modeller oluşturur. WAF bu listeleri kontrol eder ve belirli bir durumda trafiğin engellenip engellenmemesi konusunda ne yapılacağına karar verir.

Düzenli ifadelere dayalı tespite bir örnek, daha önce bahsedilen projedir Temel Kural Seti açık kaynak. Başka bir örnek - Naksi, aynı zamanda açık kaynaktır. Düzenli ifadelere sahip sistemlerin bir takım dezavantajları vardır; özellikle yeni bir güvenlik açığı keşfedildiğinde yöneticinin manuel olarak ek kurallar oluşturması gerekir. Büyük ölçekli bir BT altyapısı söz konusu olduğunda birkaç bin kural olabilir. Bu kadar çok düzenli ifadeyi yönetmek oldukça zordur; bunların kontrol edilmesinin ağ performansını düşürebileceği gerçeğinden bahsetmiyorum bile.

Düzenli ifadeler ayrıca oldukça yüksek bir yanlış pozitif oranına sahiptir. Ünlü dilbilimci Noam Chomsky, gramerleri dört koşullu karmaşıklık düzeyine ayırdığı bir gramer sınıflandırması önerdi. Bu sınıflandırmaya göre düzenli ifadeler yalnızca kalıptan sapma içermeyen güvenlik duvarı kurallarını tanımlayabilir. Bu, saldırganların birinci nesil WAF'ı kolaylıkla "kandırabileceği" anlamına gelir. Bununla mücadele etmenin bir yöntemi, uygulama isteklerine, kötü amaçlı verilerin mantığını etkilemeyen ancak imza kuralını ihlal eden özel karakterler eklemektir.

Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

Ikinci nesil. WAF'lerin performans ve doğruluk sorunlarını aşmak için ikinci nesil uygulama güvenlik duvarları geliştirildi. Artık kesin olarak tanımlanmış saldırı türlerini (HTML, JS vb.) tanımlamaktan sorumlu ayrıştırıcılara sahipler. Bu ayrıştırıcılar, sorguları tanımlayan özel belirteçlerle (örneğin değişken, dize, bilinmeyen, sayı) çalışır. Potansiyel olarak kötü amaçlı belirteç dizileri, WAF sisteminin düzenli olarak kontrol ettiği ayrı bir listeye yerleştirilir. Bu yaklaşım ilk olarak Black Hat 2012 konferansında C/C++ biçiminde gösterildi. libinjeksiyon kütüphaneleriSQL enjeksiyonlarını tespit etmenizi sağlar.

Birinci nesil WAF'larla karşılaştırıldığında, özel ayrıştırıcılar daha hızlı olabilir. Ancak yeni kötü amaçlı saldırılar ortaya çıktığında sistemi manuel olarak yapılandırmanın getirdiği zorlukları çözmediler.

Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

Üçüncü nesil. Üçüncü nesil algılama mantığındaki evrim, algılama gramerini korunan sistemlerin gerçek SQL/HTML/JS gramerine mümkün olduğunca yaklaştırmayı mümkün kılan makine öğrenimi yöntemlerinin kullanılmasından oluşur. Bu algılama mantığı, bir Turing makinesini yinelemeli olarak numaralandırılabilen gramerleri kapsayacak şekilde uyarlayabilir. Üstelik önceden uyarlanabilir bir Turing makinesi yaratma görevi, sinirsel Turing makinelerine ilişkin ilk çalışmalar yayınlanana kadar çözülemezdi.

Makine öğrenimi, birinci nesil tespitte gerektiği gibi manuel olarak imza listeleri oluşturmadan ve Memcached, Redis, Cassandra, SSRF enjeksiyonları gibi yeni saldırı türleri için yeni belirteçler/ayrıştırıcılar geliştirmeden, herhangi bir dilbilgisini her türlü saldırıyı kapsayacak şekilde uyarlama konusunda benzersiz bir yetenek sağlar. İkinci nesil metodolojinin gerektirdiği gibi.

Üç nesil algılama mantığının tümünü birleştirerek, üçüncü nesil algılamanın kırmızı çerçeveyle temsil edildiği yeni bir diyagram çizebiliriz (Şekil 3). Bu nesil, web uygulamalarının uyarlanabilir korumasına yönelik platformun ve Wallarm API'nin geliştiricisi Onsek ile birlikte bulutta uyguladığımız çözümlerden birini içeriyor.

Algılama mantığı artık kendi kendini ayarlamak için uygulamadan gelen geri bildirimi kullanıyor. Makine öğreniminde bu geri bildirim döngüsüne "pekiştirme" adı verilir. Tipik olarak, bu tür takviyenin bir veya daha fazla türü vardır:

  • Uygulama yanıt davranışının analizi (pasif)
  • Tarama/fuzzer (etkin)
  • Rapor dosyaları/durdurucu prosedürleri/tuzaklar (olayın ardından)
  • Manuel (süpervizör tarafından tanımlanır)

Sonuç olarak üçüncü nesil algılama mantığı aynı zamanda önemli olan doğruluk sorununu da ele alır. Artık yalnızca yanlış pozitifleri ve yanlış negatifleri önlemek değil, aynı zamanda Denetim Masası'nda SQL komut öğesi kullanımının tespiti, web sayfası şablonu yükleme, JavaScript hatalarıyla ilgili AJAX istekleri ve diğerleri gibi geçerli gerçek negatifleri de tespit etmek mümkündür.

Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

Daha sonra çeşitli WAF uygulama seçeneklerinin teknolojik yeteneklerini ele alacağız.

Donanım, yazılım veya bulut – ne seçilir?

Uygulama güvenlik duvarlarını uygulamaya yönelik seçeneklerden biri donanım çözümüdür. Bu tür sistemler, bir şirketin veri merkezine yerel olarak kurduğu özel bilgi işlem cihazlarıdır. Ancak bu durumda, kendi ekipmanınızı satın almanız ve entegratörlere kurulumu ve hata ayıklaması için para ödemeniz gerekir (şirketin kendi BT departmanı yoksa). Aynı zamanda, herhangi bir ekipman eskimiş ve kullanılamaz hale gelir, bu nedenle müşteriler donanım yükseltmeleri için bütçe ayırmak zorunda kalır.

WAF dağıtımına yönelik başka bir seçenek de yazılım uygulamasıdır. Çözüm, bazı yazılımlar için eklenti olarak kurulur (örneğin, ModSecurity Apache'nin üzerinde yapılandırılmıştır) ve onunla aynı sunucuda çalışır. Kural olarak, bu tür çözümler hem fiziksel bir sunucuya hem de buluta dağıtılabilir. Dezavantajları sınırlı ölçeklenebilirlik ve satıcı desteğidir.

Üçüncü seçenek buluttan bir WAF kurmaktır. Bu tür çözümler bulut sağlayıcıları tarafından abonelik hizmeti olarak sağlanmaktadır. Şirketin özel donanım satın almasına ve yapılandırmasına gerek yoktur; bu görevler servis sağlayıcının omuzlarına düşer. Önemli bir nokta, modern bir bulut WAF'nin, kaynakların sağlayıcının platformuna taşınması anlamına gelmemesidir. Site, şirket içinde bile herhangi bir yere kurulabilir.

İnsanların neden giderek daha fazla bulut WAF'a yöneldiğini daha ayrıntılı olarak açıklayacağız.

WAF bulutta neler yapabilir?

Teknolojik yetenekler açısından:

  • Güncellemelerden sağlayıcı sorumludur. WAF abonelikle sağlanır, dolayısıyla servis sağlayıcı güncellemelerin ve lisansların uygunluğunu izler. Güncellemeler yalnızca yazılımla değil aynı zamanda donanımla da ilgilidir. Sağlayıcı, sunucu parkını yükseltir ve bakımını yapar. Aynı zamanda yük dengeleme ve yedeklilikten de sorumludur. WAF sunucusu arızalanırsa trafik hemen başka bir makineye yönlendirilir. Trafiğin rasyonel dağıtımı, güvenlik duvarının başarısız açık moduna geçtiği durumlardan kaçınmanıza olanak tanır - yükle baş edemez ve istekleri filtrelemeyi durdurur.
  • Sanal yama. Sanal yamalar, geliştirici güvenlik açığını kapatıncaya kadar uygulamanın güvenliği ihlal edilmiş bölümlerine erişimi kısıtlar. Sonuç olarak, bulut sağlayıcısının müşterisi, şu veya bu yazılımın tedarikçisinin resmi "yamalar" yayınlamasını sakince bekleme fırsatına sahip olur. Bunu mümkün olduğu kadar çabuk yapmak, yazılım tedarikçisi için bir önceliktir. Örneğin Wallarm platformunda sanal yama işleminden ayrı bir yazılım modülü sorumludur. Yönetici, kötü amaçlı istekleri engellemek için özel normal ifadeler ekleyebilir. Sistem, bazı taleplerin “Gizli veri” bayrağıyla işaretlenmesine olanak sağlamaktadır. Daha sonra parametreleri maskelenir ve hiçbir durumda güvenlik duvarının çalışma alanının dışına aktarılmaz.
  • Yerleşik çevre ve güvenlik açığı tarayıcısı. Bu, DNS sorgularından ve WHOIS protokolünden elde edilen verileri kullanarak BT altyapısının ağ sınırlarını bağımsız olarak belirlemenize olanak tanır. Daha sonra WAF, çevre içinde çalışan hizmetleri otomatik olarak analiz eder (bağlantı noktası taraması gerçekleştirir). Güvenlik duvarı, tüm yaygın güvenlik açığı türlerini (SQLi, XSS, XXE, vb.) tespit etme ve örneğin Git ve BitBucket depolarına yetkisiz erişim ve Elasticsearch, Redis, MongoDB'ye yapılan anonim çağrılar gibi yazılım yapılandırmasındaki hataları belirleme kapasitesine sahiptir.
  • Saldırılar bulut kaynakları tarafından izleniyor. Kural olarak, bulut sağlayıcıları büyük miktarda bilgi işlem gücüne sahiptir. Bu, tehditleri yüksek doğruluk ve hızla analiz etmenize olanak tanır. Bulutta, tüm trafiğin içinden geçtiği bir filtre düğümleri kümesi dağıtılır. Bu düğümler web uygulamalarına yönelik saldırıları engeller ve istatistikleri Analitik Merkezine gönderir. Korunan tüm uygulamalar için engelleme kurallarını güncellemek amacıyla makine öğrenimi algoritmalarını kullanır. Böyle bir planın uygulanması Şekil 4'de gösterilmektedir. XNUMX. Bu tür özel güvenlik kuralları, yanlış güvenlik duvarı alarmlarının sayısını en aza indirir.

Web Uygulaması Güvenlik Duvarının evrimi: güvenlik duvarlarından makine öğrenimi içeren bulut tabanlı koruma sistemlerine

Şimdi bulut WAF'lerin organizasyonel sorunlar ve yönetim açısından özelliklerine biraz değinelim:

  • OpEx'e geçiş. Bulut WAF'lerde, tüm donanım ve lisansların ödemesi zaten sağlayıcı tarafından yapıldığından uygulama maliyeti sıfır olacaktır; hizmetin ödemesi abonelikle yapılır.
  • Farklı tarife planları. Bulut hizmeti kullanıcısı ek seçenekleri hızla etkinleştirebilir veya devre dışı bırakabilir. İşlevler aynı zamanda güvenli olan tek bir kontrol panelinden yönetilir. HTTPS aracılığıyla erişilir, ayrıca TOTP (Zamana Dayalı Tek Seferlik Şifre Algoritması) protokolünü temel alan iki faktörlü bir kimlik doğrulama mekanizması vardır.
  • DNS üzerinden bağlantı. DNS'yi kendiniz değiştirebilir ve ağ yönlendirmeyi yapılandırabilirsiniz. Bu sorunları çözmek için bireysel olarak uzmanların işe alınmasına ve eğitilmesine gerek yoktur. Kural olarak, sağlayıcının teknik desteği kurulum konusunda yardımcı olabilir.

WAF teknolojileri, genel kurallara sahip basit güvenlik duvarlarından, makine öğrenimi algoritmalarına sahip karmaşık koruma sistemlerine doğru gelişmiştir. Uygulama güvenlik duvarları artık 90'lı yıllarda uygulanması zor olan çok çeşitli özellikler sunuyor. Birçok açıdan yeni işlevlerin ortaya çıkması bulut teknolojileri sayesinde mümkün oldu. WAF çözümleri ve bileşenleri gelişmeye devam ediyor. Tıpkı bilgi güvenliğinin diğer alanları gibi.

Metin, bulut sağlayıcısı #CloudMTS'nin bilgi güvenliği ürün geliştirme müdürü Alexander Karpuzikov tarafından hazırlandı.

Kaynak: habr.com

Yorum ekle