IAST (Etkileşimli Uygulama Güvenliği Testi) Nedir?
Etkileşimli Uygulama Güvenliği Testi (IAST), uygulama güvenlik açıklarını daha etkili bir şekilde bulmak için SAST (Statik Uygulama Güvenliği Testi) ve DAST (Dinamik Uygulama Güvenliği Testi) yöntemlerini birleştiren bir yöntemdir.
IAST özellikleri şunları içerir:
- IAST araçları, uygulama çalışırken içine sensörler veya izleme bileşenleri ekleyerek çalışır. Bu araçlar, testler otomatik veya insanlar tarafından yapılırken uygulamanın nasıl davrandığını izler. Bu yaklaşım, IAST’nin kod yürütmesini, kullanıcı girdilerini ve uygulamanın verileri gerçek zamanlı olarak nasıl işlediğini kontrol etmesine olanak tanır.
- IAST, tüm kod tabanını otomatik olarak taramaz; kapsamı, testler sırasında uygulamanın ne kadar geniş bir şekilde kullanıldığına bağlıdır. Test etkinliği ne kadar kapsamlı olursa, güvenlik açığı kapsamı o kadar derin olur.
- IAST genellikle otomatik veya manuel işlevsel testlerin yapıldığı QA veya sahneleme ortamlarında kullanılır.
Siber Güvenlikte IAST Neden Önemlidir
SAST, kaynak kodu, bayt kodu veya ikili dosyaları uygulamayı çalıştırmadan analiz eder ve kodlama hatalarını ortaya çıkarmada oldukça etkilidir, ancak yanlış pozitifler üretebilir ve çalışma zamanı ile ilgili sorunları kaçırabilir.
DAST, uygulamaları çalışırken dışarıdan test eder ve yalnızca çalışma zamanında ortaya çıkan sorunları ortaya çıkarabilir, ancak iç mantık veya kod yapısına derinlemesine görünürlük sağlamaz. IAST, bu tekniklerin güçlü yönlerini birleştirerek aradaki boşluğu doldurur ve şunları sağlar:
- Güvenlik açığı kaynakları ve yolları hakkında daha derinlemesine bilgiler.
- Yalnızca SAST veya DAST’a kıyasla geliştirilmiş tespit doğruluğu.
- Çalışma zamanı etkinliğini kod analizi ile ilişkilendirerek yanlış pozitiflerin azaltılması.
IAST Nasıl Çalışır
- Enstrümantasyon: IAST, enstrümantasyon kullanır, yani sensörler veya izleme kodları uygulamaya (genellikle bir QA veya hazırlık ortamında) gömülür ve test sırasında davranışını gözlemler.
- İzleme: Veri akışını, kullanıcı girdisini ve kod davranışını gerçek zamanlı olarak, uygulama testler veya manuel eylemlerle çalıştırıldığında gözlemler.
- Tespit: Güvensiz yapılandırma, temizlenmemiş veri akışları veya enjeksiyon riskleri gibi güvenlik açıklarını işaretler.
- Raporlama: Geliştiricilere tespit edilen sorunları ele almak için uygulanabilir bulgular ve düzeltme rehberliği sağlanır.
Örnek
Fonksiyonel testler sırasında, QA ekibi giriş formu ile etkileşime girer. IAST aracı, kullanıcı girdisinin temizlenmeden bir veritabanı sorgusuna aktığını tespit eder ve bu, potansiyel bir SQL enjeksiyonu riski olduğunu gösterir. Ekip, bir güvenlik açığı raporu ve güvenlik sorunlarını düzeltmek için uygulanabilir adımlar alır.
İlgili Terimler
- SAST (Statik Uygulama Güvenliği Testi)
- DAST (Dinamik Uygulama Güvenliği Testi)
- SCA (Yazılım Bileşen Analizi)
- Uygulama Güvenliği Testi
- ASPM (Uygulama Güvenliği Duruş Yönetimi)