Ana içeriğe geç

API Discovery Genel Bakış

Wallarm platformunun API Discovery modülü, gerçek API kullanımına dayanarak uygulamanızın REST API envanterini oluşturur. Modül, gerçek trafik isteklerini sürekli olarak analiz eder ve analiz sonuçlarına göre API envanterini oluşturur.

Oluşturulan API envanteri aşağıdaki öğeleri içerir:

  • API uç noktaları

  • İstek yöntemleri (GET, POST ve diğerleri)

  • İstek ve yanıtlardaki gerekli ve isteğe bağlı GET, POST ve başlık parametreleri; şunları içerecek şekilde:

    • Her parametrede gönderilen verinin Tür/biçimi
    • Parametre bilgisinin en son güncellendiği tarih ve saat

Yanıt parametrelerinin kullanılabilirliği

Yanıt parametreleri yalnızca 4.10.1 veya daha yüksek sürümlü düğüm kullanıldığında mevcuttur.

API Discovery’nin ele aldığı sorunlar

Gerçek ve eksiksiz bir API envanteri oluşturmak, API Discovery modülünün ele aldığı başlıca sorundur.

API envanterini güncel tutmak zor bir görevdir. Farklı API’leri kullanan birden fazla ekip vardır ve API dokümantasyonunun üretilmesi için farklı araçların ve süreçlerin kullanılması yaygındır. Sonuç olarak, şirketler hangi API’lere sahip olduklarını, hangi verileri açığa çıkardıklarını anlamakta ve API dokümantasyonunu güncel tutmakta zorlanırlar.

API Discovery modülü veri kaynağı olarak gerçek trafiği kullandığından, isteklere gerçekten yanıt veren tüm uç noktaları API envanterine dahil ederek güncel ve eksiksiz API dokümantasyonuna ulaşmanıza yardımcı olur.

Wallarm, API envanterinizi keşfettikten sonra şunları yapabilirsiniz:

  • Harici ve dahili API’lerin listesi de dahil olmak üzere tüm API varlıklarınıza tam görünürlük elde edin.

  • API’lere giren ve çıkan verileri görün.

  • Açık (düzeltimek bekleyen) güvenlik açıklarına sahip uç noktaların listesini alın.

  • İstenilen herhangi bir API uç noktası için son 7 gün içinde gerçekleşen tehditlerin bir listesini alın.

  • Yalnızca saldırıya uğramış API’leri filtreleyin, hit sayısına göre sıralayın.

  • Hassas verileri tüketen ve taşıyan API’leri filtreleyin.

  • API envanterinizin yapısı ve sorunlarına ilişkin görselleştirilmiş özeti kullanışlı bir gösterge panelinde görüntüleyin.

  • Hangi uç noktaların bir saldırı hedefi olma olasılığının en yüksek olduğunu anlayın.

  • Gölge, yetim ve zombi API’leri bulun.

  • Seçilen zaman aralığında API’de meydana gelen değişiklikleri izleyin.

  • API uç noktalarını BOLA otomatik koruma durumu ile filtreleyin.

  • Geliştiricilerinize oluşturulan API envanterini inceleme ve indirme için erişim sağlayın.

API Discovery nasıl çalışır?

API Discovery, istek istatistiklerine dayanır ve gerçek API kullanımına göre güncel API spesifikasyonları üretmek için gelişmiş algoritmalar kullanır.

Trafik işleme

API Discovery, analizleri yerelde ve Bulut’ta gerçekleştirmek için hibrit bir yaklaşım kullanır. Bu yaklaşım, istek verileri ve hassas veriler yerelde tutulurken istatistik analizleri için Bulut’un gücünden yararlanılan gizlilik-öncelikli bir süreci mümkün kılar:

  1. API Discovery, meşru trafiği yerelde analiz eder. Wallarm, isteklerin gönderildiği uç noktaları ve hangi parametrelerin iletilip geri döndürüldüğünü inceler.

  2. Bu verilere göre istatistikler oluşturulur ve Bulut’a gönderilir.

  3. Wallarm Cloud, alınan istatistikleri birleştirir ve bunlara dayanarak bir API açıklaması oluşturur.

    Gürültü tespiti

    Seyrek veya tekil istekler gürültü olarak kabul edilir ve API envanterine dahil edilmez.

Gürültü tespiti

API Discovery modülü, gürültüyü iki ana trafik parametresine göre tespit eder:

  • Uç nokta stabilitesi - uç noktaya gelen ilk istekten itibaren 5 dakika içinde en az 5 istek kaydedilmelidir.

  • Parametre stabilitesi - uç noktaya gelen isteklerde parametrenin görülme oranı %1’den fazla olmalıdır.

API envanteri, bu eşikleri aşan uç noktaları ve parametreleri gösterecektir. Tam API envanterinin oluşturulması için gereken süre, trafik çeşitliliği ve yoğunluğuna bağlıdır.

Ayrıca, API Discovery diğer kriterlere dayanarak istekleri filtreler:

  • Yalnızca sunucunun 2xx aralığında yanıt verdiği istekler işlenir.

  • REST API tasarım ilkelerine uymayan istekler işlenmez.

    Bu, yanıtların Content-Type başlığı kontrol edilerek yapılır: eğer application/json içermiyorsa (ör. Content-Type: application/json;charset=utf-8), istek REST API değil kabul edilir ve analiz edilmez.

    Başlık yoksa, API Discovery isteği analiz eder.

  • Accept ve benzerleri gibi standart alanlar ayıklanır.

  • localhost veya loopback adreslerini hedefleyen istekler işlenmez.

Hassas veri tespiti

API Discovery, API’lerinizin tükettiği ve taşıdığı hassas verileri tespit eder ve vurgular:

  • IP ve MAC adresleri gibi teknik veriler

  • Gizli anahtarlar ve parolalar gibi oturum açma bilgileri

  • Banka kartı numaraları gibi finansal veriler

  • Tıbbi lisans numarası gibi tıbbi veriler

  • Ad soyad, pasaport numarası veya SSN gibi kişisel olarak tanımlanabilir bilgiler (PII)

API Discovery, tespit sürecini yapılandırma ve kendi hassas veri kalıplarınızı ekleme olanağı sağlar (NGINX Node 5.0.3 veya Native Node 0.7.0 ya da üstü gereklidir).

Hassas iş akışları

sensitive business flow özelliği ile API Discovery, kimlik doğrulama, hesap yönetimi, faturalandırma ve benzeri kritik işlevler gibi belirli iş akışları ve işlevleri için kritik olan uç noktaları otomatik olarak belirleyebilir.

Otomatik belirlemenin yanı sıra, atanan hassas iş akışı etiketlerini manuel olarak ayarlayabilir ve seçtiğiniz uç noktalar için etiketleri manuel olarak belirleyebilirsiniz.

Uç noktalara hassas iş akışı etiketleri atandığında, keşfedilen tüm uç noktaları belirli bir iş akışına göre filtrelemek mümkün olur; bu da en kritik iş yeteneklerini korumayı kolaylaştırır.

API Discovery - Hassas iş akışlarına göre filtreleme

Wallarm Cloud’a yüklenen verilerin güvenliği

API Discovery trafiğin büyük kısmını yerelde analiz eder. Modül, Wallarm Cloud’a yalnızca keşfedilen uç noktaları, parametre adlarını ve çeşitli istatistiksel verileri (geliş zamanı, sayıları vb.) gönderir. Tüm veriler güvenli bir kanaldan iletilir: istatistikler Wallarm Cloud’a yüklenmeden önce, API Discovery modülü istek parametrelerinin değerlerini SHA-256 algoritmasıyla özetler.

Bulut tarafında, özetlenmiş veriler istatistiksel analiz için kullanılır (örneğin, aynı parametrelere sahip isteklerin nicelenmesinde).

Diğer veriler (uç nokta değerleri, istek yöntemleri ve parametre adları), API envanterinin oluşturulmasını imkansız hale getireceği için Wallarm Cloud’a yüklenmeden önce özetlenmez; zira özetler orijinal haline geri döndürülemez.

Önemli

Wallarm, parametrelerde belirtilen değerleri Cloud’a göndermez. Yalnızca uç nokta, parametre adları ve bunlara ilişkin istatistikler gönderilir.

API Discovery demo videosu

API Discovery demo videosunu izleyin:

Playground’da API Discovery’yi denemek

Modülü kaydolmadan ve düğümü ortamınıza dağıtmadan önce bile denemek için, Wallarm Playground’da API Discovery’yi keşfedin.

Playground’da, sanki gerçek verilerle doldurulmuş gibi API Discovery görünümüne erişebilir; böylece modülün nasıl çalıştığını öğrenip deneyebilir ve salt okunur modda kullanımına dair bazı faydalı örnekler edinebilirsiniz.

API Discovery – Örnek Veriler

API Discovery’yi etkinleştirme ve yapılandırma

API Discovery’yi kullanmaya başlamak için, API Discovery Kurulumu’nda açıklandığı şekilde etkinleştirip yapılandırın.