Wallarm Node 6.x ve 0.14.x’te Neler Yeni¶
Bu değişiklik günlüğü NGINX Node 6.x ve Native Node 0.14.x+ güncellemelerini kapsar. Daha eski bir sürümden yükseltiyorsanız bu belgeye bakın.
Wallarm Node’un küçük sürümlerine ait ayrıntılı değişiklik günlüğü için NGINX Node eser (artifact) envanteri veya Native Node eser (artifact) envanteri sayfalarına bakın.
Bu sürüm, Wallarm Node’un performansını ve sürdürülebilirliğini artırmayı amaçlayan temel mimari iyileştirmeler içerir. Bu yenilikler, yakında gelecek özellikler için de zemin hazırlar.
Postanalytics için Tarantool’un wstore ile değiştirilmesi¶
Wallarm Node, yerel postanalytics işlemede Tarantool yerine artık Wallarm tarafından geliştirilen wstore hizmetini kullanır.
Bunun sonucunda NGINX Node’da aşağıdaki değişiklikler yapılmıştır:
-
All-in-one yükleyici, AWS/GCP imajları:
-
Postanalytics modülü ayrı bir NGINX hizmetinden konuşlandırıldığında sunucu adresini tanımlayan NGINX yönergesi
wallarm_tarantool_upstream
,wallarm_wstore_upstream
olarak yeniden adlandırıldı.Geriye dönük uyumluluk, kullanım dışı uyarısıyla korunur:
-
Günlük dosyasının adı değişti:
/opt/wallarm/var/log/wallarm/tarantool-out.log
→/opt/wallarm/var/log/wallarm/wstore-out.log
. - Yeni wstore yapılandırma dosyası
/opt/wallarm/wstore/wstore.yaml
,/etc/default/wallarm-tarantool
veya/etc/sysconfig/wallarm-tarantool
gibi eski Tarantool yapılandırma dosyalarının yerini alır. /opt/wallarm/etc/wallarm/node.yaml
içindekitarantool
bölümü artıkwstore
. Geriye dönük uyumluluk, kullanım dışı uyarısıyla korunur.
-
-
- Yukarıdaki tüm değişiklikler konteyner içinde uygulanmıştır.
- Önceden, Tarantool için bellek
TARANTOOL_MEMORY_GB
ortam değişkeniyle ayrılıyordu. Artık aynı ilkeye uyularak yeni değişken kullanılır:TARANTOOL_MEMORY_GB
→SLAB_ALLOC_ARENA
. -
Konteyner dizin yapısı Alpine Linux kurallarına uyacak şekilde düzenlendi. Özellikle:
/etc/nginx/modules-available
ve/etc/nginx/modules-enabled
içeriği/etc/nginx/modules
konumuna taşındı./etc/nginx/sites-available
ve/etc/nginx/sites-enabled
içeriği/etc/nginx/http.d
konumuna taşındı.
-
/wallarm-status
servisi için izinli IP adreslerini belirleyen varsayılanallow
değeri 127.0.0.8/8 yerine artık 127.0.0.0/8’tir.
-
Kubernetes Ingress Controller:
- Tarantool artık ayrı bir pod değildir, wstore ana
<CHART_NAME>-wallarm-ingress-controller-xxx
pod’unda çalışır. - Helm değerleri yeniden adlandırıldı:
controller.wallarm.tarantool
→controller.wallarm.postanalytics
.
- Tarantool artık ayrı bir pod değildir, wstore ana
-
Kubernetes Sidecar Controller:
- Helm değerleri yeniden adlandırıldı:
postanalytics.tarantool.*
→postanalytics.wstore.*
. -
Sidecar konuşlandırması için Helm chart’ından aşağıdaki Docker imajları kaldırılmıştır:
Bu imajların yerini ilgili servisleri çalıştıran wallarm/node-helpers imajı almıştır.
- Helm değerleri yeniden adlandırıldı:
Aşağıda verilen Node yükseltme talimatlarına bu değişiklikler dahil edilmiştir.
collectd’nin kaldırılması¶
Önceden tüm filtreleme nodelarına kurulan collectd servisi ve ilişkili eklentileri kaldırılmıştır. Metrikler artık Wallarm’ın yerleşik mekanizmalarıyla toplanıp gönderilir; bu da harici araçlara bağımlılığı azaltır.
Collectd’nin sağladığı Prometheus ve JSON biçimindeki aynı metrikleri sunan /wallarm-status
endpointini kullanın.
Bu değişikliğin sonucu olarak yapılandırma kurallarında da şunlar değişti:
-
/opt/wallarm/etc/collectd/wallarm-collectd.conf.d/wallarm-tarantool.conf
collectd yapılandırma dosyası artık kullanılmamaktadır. -
Önceden metrikleri bir ağ eklentisi üzerinden iletmek için collectd kullandıysanız, örneğin:
LoadPlugin network <Plugin "network"> Server "<Server IPv4/v6 address or FQDN>" "<Server port>" </Plugin>
artık Prometheus ile
/wallarm-status
endpointinin scrape edilmesine geçmelisiniz.
Mitigation Controls¶
Tüm Wallarm saldırı azaltma ayarlarının birleşik yönetimi için Mitigation Controls merkezini sunuyoruz. Mitigation Controls ile şunları yapabilirsiniz:
-
Tüm Wallarm azaltma ayarlarını tek bir yerden görüntüleyip yönetmek.
-
Hepsini birleşik bir şekilde yönetmek (tüm kontroller benzer yapılandırma arayüzü ve seçeneklere sahiptir).
-
Her bir kontrolün mevcut modunu kolayca görmek: aktif mi? sadece izliyor mu yoksa engelliyor mu?
-
Her kontrol tarafından yakalanan saldırılara hızlı bir genel bakış almak.
Numaralandırma saldırısı koruması¶
Numaralandırma saldırılarına karşı yeni seviye koruma, numaralandırma Mitigation Controls ile gelir:
Daha önce bu koruma için kullanılan tetikleyicilerle karşılaştırıldığında, Mitigation Controls:
-
Numaralandırma girişimleri için izlenecek parametrelerin seçilmesine izin verir.
-
Hangi isteklerin sayılacağı konusunda gelişmiş ve detaylı filtreleme imkanı sağlar.
-
API Sessions ile derin entegrasyon sağlar: tespit edilen saldırılar ilgili oturum içinde gösterilir ve oturum faaliyetlerinin neden saldırı olarak işaretlenip engellendiğine dair tam bağlam sunulur.
DoS protection¶
Unrestricted resource consumption, en ciddi API güvenlik risklerinin yer aldığı OWASP API Top 10 2023 listesine dahildir. Kendi başına bir tehdit olmakla birlikte (yük altında hizmetin yavaşlaması veya tamamen çökmesi), aynı zamanda örneğin numaralandırma saldırıları gibi farklı saldırı türlerinin de temelini oluşturur. Belirli bir zamanda çok fazla isteğe izin verilmesi bu risklerin başlıca nedenlerinden biridir.
Wallarm, API’nize aşırı trafiği önlemeye yardımcı olmak için yeni DoS protection Mitigation Control’ünü sunar.
Varsayılan kontroller¶
Wallarm, etkinleştirildiğinde Wallarm platformunun tespit kabiliyetlerini önemli ölçüde artıran bir dizi varsayılan Mitigation Controls sağlar. Bu kontroller, çeşitli yaygın saldırı kalıplarına karşı güçlü koruma sunacak şekilde önceden yapılandırılmıştır. Mevcut varsayılan Mitigation Controls şunları içerir:
-
Kullanıcı kimlikleri, nesne kimlikleri ve dosya adları için BOLA (Broken Object Level Authorization) enumeration protection
-
Parolalar, OTP’ler ve kimlik doğrulama kodları için Brute force protection
-
Forced browsing protection (404 yoklama)
-
Enumeration attack protection, aşağıdakiler dahil:
- Kullanıcı/e-posta numaralandırması
- SSRF (Server-Side Request Forgery) numaralandırması
- User-Agent rotasyonu
Dosya yükleme kısıtlama politikası¶
Wallarm artık yüklenen dosyaların boyutunu doğrudan kısıtlamak için araçlar sağlar. Bu, en ciddi API güvenlik risklerinin yer aldığı OWASP API Top 10 2023 listesine dahil unrestricted resource consumption riskini önlemeye yönelik önlemler setinin bir parçasıdır.
Abonelik planınıza bağlı olarak, yükleme kısıtlamaları bir Mitigation Control veya kural aracılığıyla uygulanır. Dosya boyutu kısıtlarını tüm istek için veya isteğin seçili bir noktası için belirleyebilirsiniz.
Unrestricted resource consumption’a karşı koruma¶
NGINX Node 6.3.0 ve üzeri ve şu an için Native Node tarafından desteklenmiyor.
Wallarm’ın API Abuse Prevention özelliği, unrestricted resource consumption — otomatik bir istemcinin uygun sınırlar olmaksızın aşırı API veya uygulama kaynağı tükettiği kötüye kullanım davranışını — önleme olanağı sunar. Buna çok sayıda zararsız isteğin gönderilmesi, işlemci, bellek veya bant genişliğinin tüketilmesi ve meşru kullanıcılar için hizmetin kötüleşmesine yol açılması dahildir.
Bu tür otomatik tehditleri tespit etmek için API Abuse Prevention, üç yeni dedektör sunar:
-
Response time anomaly — API yanıt gecikmelerindeki otomatik kötüye kullanım veya arka uç istismarı girişimlerini işaret edebilecek anormal kalıpları belirler.
-
Excessive request consumption — API’ye anormal derecede büyük istek yükleri gönderen istemcileri belirler; bu, arka uç işlem kaynaklarının kötüye kullanıldığını gösterebilir.
-
Excessive response consumption — yaşam süreleri boyunca aktarılan toplam yanıt verisi hacmine göre şüpheli oturumları işaretler. Tekil isteklere odaklanan dedektörlerden farklı olarak, bu dedektör tüm bir oturum boyunca yanıt boyutlarını toplayarak damla-damla veri çekme veya dağıtık scraping saldırılarını tespit eder.
Hangi Wallarm nodelarının yükseltilmesi önerilir?¶
-
Wallarm sürümleriyle güncel kalmak ve kurulu modüllerin kullanım dışı kalmasını önlemek için 4.10 ve 5.x sürümündeki istemci ve çok kiracılı (multi-tenant) Wallarm NGINX Node’ları.
-
Desteklenmeyen sürümlerdeki (4.8 ve altı) istemci ve çok kiracılı Wallarm nodeları.
3.6 veya altı bir sürümden yükseltiyorsanız, tüm değişiklikleri ayrı listeden öğrenin.
Yükseltme süreci¶
-
Modül yükseltme için önerileri gözden geçirin.
-
Wallarm node konuşlandırma seçeneğinize uygun talimatları izleyerek kurulu modülleri yükseltin: