Ana içeriğe geç

Schema-Based Testing

Wallarm'ın Schema-Based Testing özelliği, uygulamalarınızı ve API'lerinizi dinamik güvenlik testlerine tabi tutarak, kapsamlı ve otomatik testler aracılığıyla hem OWASP Top 10 hem de OWASP API Security Top 10’da yer alanlar dahil geniş bir yelpazedeki güvenlik açıklarını tespit etmek üzere tasarlanmıştır.

Schema-Based Testing yetenekleri:

  • API uç noktalarının derin ve dinamik analizi.

  • Uygulamanın veya API’nin kendisindeki güvenlik açıklarının yanı sıra, altında yatan altyapı veya ortamda bulunan güvenlik yanlış yapılandırmalarının tespiti.

  • Bulunan sorunların Wallarm Console içindeki Security Issues bölümünde görselleştirilmesi.

  • Docker konteyneri aracılığıyla hafif çalıştırma.

Schema-Based Testing - test runs

Nasıl çalışır

Schema-Based Testing’i aşağıdaki adımları yerine getirerek kullanın:

  1. Create test policy: hedef uygulamayı belirtin, OpenAPI spesifikasyonunu veya Postman koleksiyonunu, temel URL’yi sağlayın ve çalıştırılacak testleri seçin.

  2. Docker komutunu kopyalayın: Test policies sekmesinde test policy’nizi bulun, tıklayın ve sağlanan Docker komutunu kopyalayın.

  3. Çalıştırın ve izleyin: ajanı komutla başlatın. İlerlemeyi takip edin ve sonuçları Test runs sekmesinde görüntüleyin.

Schema-Based Testing - how it works

Test temeli

Schema-Based Testing testlerini şu temellere dayandırabilir:

  • OpenAPI spesifikasyonu (OAS) - API’nizin kesin ve makine tarafından okunabilir taslağı, uygulamanız için verimli ve güvenilir bir test seti oluşturmayı sağlar. OAS tabanlı testler, girdi doğrulama, enjeksiyon ve yanlış yapılandırma tespitine odaklanır.

  • Postman koleksiyonu - Postman API tasarım platformunu kullanıyorsanız, koleksiyonlarındaki işlevsel testler eşzamanlı olarak güvenlik testleri oluşturmak için kullanılabilir. Ayrıntılar. Postman koleksiyonu tabanlı testler, karmaşık iş mantığı ve erişim kontrolü zafiyetlerine odaklanır.

Test türleri

OpenAPI spesifikasyonu tabanlı testler için, Schema-Based Testing güvenlik sorunlarını tespit etmek üzere üç tür testi kullanır:

  • Ortam yanlış yapılandırma testleri, uygulamanın ve API’lerin çalıştığı ortam veya altyapıdaki (API mantığı değil) güvenlik açıklarını ve yanlış yapılandırmaları kontrol eder. Örnekler:

    • Açığa çıkarılmış kaynak kodu, yedekler, yapılandırma dosyaları.
    • Erişilebilir .git, .env veya sistem dosyaları.
    • Güvensiz web sunucusu ayarları (ör. dizin listeleme, zayıf TLS).
  • GraphQL zafiyet tespiti, en popüler 10 GraphQL yanlış yapılandırmasını kontrol eder (API2, API4).

  • Girdi parametresi testleri, OpenAPI spesifikasyonunda tanımlanan her bir giriş noktasını (parametreler, başlıklar vb.) uygulama düzeyindeki güvenlik açıkları için kontrol eder. Kapsanan zafiyetler:

    • Komut enjeksiyonu
    • CRLF enjeksiyonu
    • LFI / RFI
    • NoSQL enjeksiyonu
    • Açık yönlendirme (Open redirect)
    • Yol geçişi (Path traversal)
    • Uzak kod yürütme (RCE)
    • SQL enjeksiyonu
    • SSRF
    • SSTI
    • XSS
    • XXE
    • Bilgi sızıntısı

Etkinleştirme ve kurulum

Schema-Based Testing’i kullanmaya başlamak için, Schema-Based Testing Kurulumu belgesinde açıklandığı şekilde etkinleştirip yapılandırın.