Ağ güvenliğini artırmak için Azure WAF coğrafi eşleşme özel kurallarını kullanma

Web uygulaması güvenlik duvarı (WAF), web uygulamalarının zararlı saldırılara karşı korunmasına yardımcı olan önemli bir araçtır. Hem önceden ayarlanmış hem de özel kuralları kullanarak web trafiğini filtreleyebilir, izleyebilir ve durdurabilir. WAF'ın aldığı her istek için kontrol edeceği kendi kuralınızı oluşturabilirsiniz. Özel kurallar, yönetilen kurallardan daha yüksek önceliğe sahiptir ve önce kontrol edilir.

Azure Web Uygulaması Güvenlik Duvarı'nın en güçlü özelliklerinden biri coğrafi eşleşme özel kurallarıdır. Bu kurallar, web isteklerini geldikleri yerin coğrafi konumuyla eşleştirmenize olanak tanır. Zararlı etkinliklerle bilinen belirli yerlerden gelen istekleri durdurmak veya işletmeniz için önemli olan yerlerden gelen isteklere izin vermek isteyebilirsiniz. Geomatch özel kuralları, web uygulamalarınıza erişimi, onları kullanan kişilerin konumuna göre sınırlayarak veri egemenliği ve gizlilik yasalarına uymanıza da yardımcı olabilir.

Gereksiz işlemleri veya çakışmaları önlemek için coğrafi eşleşme özel kurallarını kullanırken öncelik parametresini akıllıca kullanın. Azure WAF, kuralları 1 ile 100 arasında değişen sayısal bir değer olan priority parametresi tarafından belirlenen sırayla değerlendirir ve daha düşük değerler daha yüksek önceliği gösterir. Öncelik, tüm özel kurallarda benzersiz olmalıdır. Web uygulamanızın güvenliği için kritik veya belirli kurallara daha yüksek öncelik atayın ve daha az önemli veya genel kurallara daha düşük öncelik atayın. Bunu yaptığınızda WAF, web trafiğinize en uygun eylemleri uygular. Örneğin, açık bir URI yolu tanımladığınız senaryo en spesifik olanıdır ve diğer desen türlerinden daha yüksek bir öncelik kuralına sahip olmalıdır. En yüksek önceliğe sahip olmak, uygulamadaki kritik bir yolu korurken diğer özel kurallar veya yönetilen kurallar arasında daha genel trafiğin değerlendirilmesine olanak sağlar.

Kurallarınızı üretim ortamına uygulamadan önce her zaman test edin ve bunların performansını ve etkisini düzenli olarak izleyin. Bu en iyi yöntemleri izleyerek, coğrafi eşleştirme özel kurallarının gücünü kullanarak web uygulaması güvenliğinizi geliştirebilirsiniz.

Bu makalede Azure WAF coğrafi eşleşme özel kuralları tanıtılmaktadır ve Azure portal, Bicep ve Azure PowerShell kullanarak bunları nasıl oluşturup yönetebilirsiniz?

Geomatch özel kural kalıpları

Geomatch özel kuralları, yüksek riskli alanlardan gelen istekleri engelleme ve güvenilir konumlardan gelen isteklere izin verme gibi çeşitli güvenlik hedeflerini karşılamanıza olanak tanır. Bunlar, çeşitli kaynaklardan gelen çok sayıda istekle web uygulamanızı bunaltmaya çalışan dağıtılmış hizmet reddi (DDoS) saldırılarını azaltmada etkilidir. Geomatch özel kurallarıyla, meşru kullanıcılara erişim izni vermeye devam ederken, en fazla DDoS trafiğini oluşturan bölgeleri anında belirleyebilir ve engelleyebilirsiniz. Bu makalede, coğrafi eşleşme özel kurallarını kullanarak Azure WAF'nizi iyileştirmek için kullanabileceğiniz çeşitli özel kural desenleri hakkında bilgi edineceksiniz.

Senaryo 1 - "x" dışındaki tüm ülkelerden veya bölgelerden gelen trafiği engelleme

Geomatch özel kuralları, biri hariç tüm ülkelerden veya bölgelerden gelen trafiği engellemeyi hedeflediğinizde yararlı olur. Örneğin, web uygulamanız yalnızca Amerika Birleşik Devletleri'ndeki kullanıcılara hitap ediyorsa, ABD'den gelmeyen tüm istekleri engelleyen bir coğrafi eşleşme özel kuralı formüle edebilirsiniz. Bu strateji, web uygulamanızın saldırı yüzeyini etkili bir şekilde en aza indirir ve diğer bölgelerden yetkisiz erişimi engeller. Bu özel teknik, bu trafik düzenini kolaylaştırmak için olumsuzlayıcı bir koşul kullanır. ABD dışındaki tüm ülke veya bölgelerden gelen trafiği engelleyen bir coğrafi eşleşme özel kuralı oluşturmak için aşağıdaki portala, PowerShell'e veya Bicep örneklerine bakın:

Application Gateway WAF özel kural ekleme ekranını gösteren ekran görüntüsü.

Front Door WAF özel kural ekleme ekranını gösteren ekran görüntüsü.

Uyarı

Azure Front Door WAF'de SocketAddr eşleştirme değişkeni olarak kullanılır, RemoteAddr yerine. Değişken RemoteAddr , genellikle istek üst bilgisi aracılığıyla gönderilen özgün istemci IP adresidir X-Forwarded-For . Değişken SocketAddr , WAF'ın gördüğü kaynak IP adresidir.

Senaryo 2 - "foo" veya "bar" URI'sini hedefleyen "x" ve "y" dışındaki tüm ülkelerden veya bölgelerden gelen trafiği engelleme

Belirli bir URI'yi hedefleyen iki veya daha fazla belirli ülke veya bölge dışında tüm ülkelerden veya bölgelerden gelen trafiği engellemek için coğrafi eşleşme özel kurallarını kullanmanız gereken bir senaryo düşünün. Web uygulamanızın yalnızca ABD ve Kanada'daki kullanıcılara yönelik belirli URI yollarına sahip olduğunu varsayalım. Bu durumda, bu ülkelerden veya bölgelerden kaynaklanmayan tüm istekleri engelleyen bir coğrafi eşleşme özel kuralı oluşturursunuz.

Bu düzen, yönetilen kural kümeleri aracılığıyla ABD ve Kanada'dan gelen istek yüklerini işleyerek kötü amaçlı saldırıları yakalar ve diğer tüm ülkelerden veya bölgelerden gelen istekleri engeller. Bu yaklaşım, web uygulamanıza yalnızca hedef kitlenizin erişebilmesini sağlayarak diğer bölgelerden gelen istenmeyen trafikten kaçınır.

Olası hatalı pozitif sonuçları en aza indirmek için, Azure'ın veri kümesindeki bir ülke veya bölgeyle henüz eşlenmemiş IP adreslerini yakalamak için listeye ZZ ülke kodunu ekleyin. Bu teknik, Coğrafi Konum türü için bir olumsuzlama koşulu ve URI eşleşmesi için olumsuzlama olmayan bir koşul kullanır.

ABD ve Kanada dışındaki tüm ülke veya bölgelerden belirtilen URI'ye trafiği engelleyen bir coğrafi eşleşme özel kuralı oluşturmak için portal, PowerShell ve Bicep örneklerine bakın.

Senaryo 3 - Özellikle "x" ülkesinden veya bölgesinden gelen trafiği engelleme

Belirli ülkelerden veya bölgelerden gelen trafiği engellemek için coğrafi eşleşme özel kurallarını kullanabilirsiniz. Örneğin, web uygulamanız "x" ülkesinden veya bölgesinden çok sayıda kötü amaçlı istek alıyorsa, o ülke veya bölgeden gelen tüm istekleri engellemek için bir coğrafi eşleşme özel kuralı oluşturun. Bu, web uygulamanızı olası saldırılardan korur ve kaynak yükünü azaltır. Birden çok kötü amaçlı veya düşmanca ülkeyi veya bölgeyi engellemek için bu düzeni uygulayın. Bu teknik, trafik düzeni için bir uyum koşulu gerektirir. "x" ülke veya bölgesinden gelen trafiği engellemek için aşağıdaki portal, PowerShell ve Bicep örneklerine bakın.

Uygulama ağ geçidi özel kural ekleme ekranını gösteren ekran görüntüsü.

Ön kapının özel kural ekleme ekranını gösteren ekran görüntüsü.

Geomatch özel kural anti-desenleri

Coğrafi eşleşme özel kurallarını kullanırken, allow yerine block olarak özel kural eylemini ayarlamak gibi anti-desenlerden kaçının. Bunun, trafiğin WAF'yi atlamasına izin vermek ve web uygulamanızı diğer tehditlere maruz bırakmak gibi istenmeyen sonuçları olabilir.

Bir allow eylem kullanmak yerine, önceki desenlerde gösterildiği gibi olumsuzlama koşuluna sahip bir block eylem kullanın. Bu, yalnızca istenen ülkelerden veya bölgelerden gelen trafiğe izin verilmesini ve WAF'nin diğer tüm trafiği engellemesini sağlar.

Senaryo 4 - "x" ülkesinden veya bölgesinden gelen trafiğe izin ver

Belirli bir ülke veya bölgeden gelen trafiğe izin vermek için coğrafi eşleşme özel kuralını ayarlamaktan kaçının. Örneğin, büyük bir müşteri tabanı nedeniyle Amerika Birleşik Devletleri'nden gelen trafiğe izin vermek istiyorsanız, eylem allow ve değer United States içeren özel bir kural oluşturmak çözüm gibi görünebilir. Bununla birlikte, bu kural, kötü amaçlı bir yüke sahip olup olmadığına bakılmaksızın Amerika Birleşik Devletleri'nden allow gelen tüm trafiğe izin verir, çünkü eylem, yönetilen kural kümelerinin daha fazla kural işlemesini atlar. Buna ek olarak, WAF diğer tüm ülkelerden veya bölgelerden gelen trafiği işlemeye devam ederek kaynakları tüketir. Bu, web uygulamanızı Amerika Birleşik Devletleri'nden gelen ve WAF'nin aksi takdirde engelleyeceği kötü amaçlı isteklere maruz bırakır.

Senaryo 5 - "x" dışındaki tüm ilçelerden gelen trafiğe izin ver

Coğrafi eşleşme özel kurallarını kullanırken kural eylemini şu şekilde allow ayarlamaktan ve hariç tutulacak ülke veya bölgelerin listesini belirtmekten kaçının. Örneğin, kötü amaçlı etkinliklerden şüphelendiğiniz Amerika Birleşik Devletleri dışındaki tüm ülkelerden veya bölgelerden gelen trafiğe izin vermek istiyorsanız, bu yaklaşımın istenmeyen sonuçları olabilir. Doğrulanmamış veya güvenli olmayan ülkelerden/bölgelerden ya da güvenlik standartlarının düşük olduğu veya hiç olmadığı ülkelerden/bölgelerden gelen trafiğe izin vererek web uygulamanızı olası güvenlik açıklarına veya saldırılara maruz bırakabilir. Eylemin allow ABD dışındaki tüm ülkeler veya bölgeler için kullanılması, WAF'ye yönetilen kural kümelerine karşı istek içeriklerini işlemeyi durdurmasını iletir. Özel kural allow işlendikten sonra tüm kural değerlendirmesi durdurulur ve uygulama istenmeyen kötü amaçlı saldırılara maruz kalır.

Bunun yerine, engelleme gibi daha kısıtlayıcı ve belirli bir kural eylemi kullanın ve olumsuzlama koşuluyla izin verilecek ülkelerin veya bölgelerin listesini belirtin. Bu, şüpheli veya istenmeyen trafiği engellerken yalnızca güvenilir ve doğrulanmış kaynaklardan gelen trafiğin web uygulamanıza erişebilmesini sağlar.