Yazılımları Neden Test Ediyoruz? Test Ediyoruz Çünkü
Yüklə
0,97 Mb.
tarix
12.10.2018
ölçüsü
0,97 Mb.
#73230
növü
Yazı
Yazılım Geliştirme
Sürecinde Güvenlik Testleri
Yazılımları Neden
Test Ediyoruz?
Test Ediyoruz Çünkü ...
Hatasız yazılım geliştiremiyoruz
Ancak
Az hatalı
Hatanın etkisinin az olduğu
yazılımları hedefleyebiliyoruz
Hatasız geliştirecek teknolojimiz olana değin teste devam...
Farklı Test Kategorileri
İşlevsellik
Performans
Erişilebilirlik (accessibility)
Uluslararasılaştırma (i18n)
Güvenlik
Her test kategorisi hata bulmayı hedeflemez; bazıları beklentileri karşılama
düzeyini belirlemek içindir
%80
%80
Güvensizliğin Bedeli
Yazılımların güvenlik problemlerinin bedelleri çok ağır olabilir
Ölüm ve yaralanma
Ulusal güvenlik zafiyetleri
Finansal kayıplar
İtibar kaybı
Kıymetli bilgilerin çalınması
...
İşimizi Yazılım Taşıyor
Tüm kritik iş süreçleri bilgisayar yazılımları ile destekleniyor
Yazılımların güvenliğinin sağlanması artık
çok daha önemli
Güvenlik Testini Kim Yapar?
Geliştiriciler
Test uzmanları
Meraklılar
Güvenlik denetim firmaları
Suç işleyecekler / suç örgütleri
Neyi Test Ediyoruz?
Girdi denetimi
Doğrulama/yetkilendirme
Kayıt tutma
Zaman/durum yönetimi
...
Genel Yaklaşım
Teste konu yazılımı iyice anla
Hedef için olumsuz neler yapabileceğini
kurgula ve planla
Kurgu ve planlar ışığında testlerini gerçekleştir
Çevrede ne olup bittiğini izle, gelişmelerden haberdar ol
Güvenliğe Özel Test Teknikleri
Açık kod ile
Kod ve tasarım
gözden geçirmeleri
Statik kod analizi araçlarının kullanılması
Kapalı kod ile
Tersine Mühendislik ile açık koda dönüştürme
Sızma Testleri
Fuzz testleri
Tüm testler
fonksiyonel olmayan
testlerdir
Kod/Tasarım
Gözden Geçirmesi
Yazılım kaynak kodunun ve tasarım belgelemesinin “okunması”
Avantajı: Çok etkili
Dezavantajı: Ölçeklenemiyor
Statik Kod Analizi Araçları
Kaynak kodu analiz eden araçların kullanımı ile bilindik güvenlik programlama hatalarının tespiti
Avantajı: Problemlerin çok hızlı tespiti
Dezavantajı: Yazılımın “bağlamından” habersiz olmak
Tersine Mühendislik
Yönetilen platformlar yaygınlaşıyor
Java JRE, .Net CLR,
Macromedia Flash
Binary’lere sahipseniz (genellikle) kaynak koda dönebilirsiniz
Reflection yolu ile
Kod karıştırıcılar kullanılmadı ise
Penetrasyon Testleri
Fuzz Testleri
Yazılımın
arayüzlerinden
Tümüyle
rastgele
Kısmen rastgele
veri girişi yapılır, yazılımın davranışı incelenir
Her farklı tür uygulama ve protokol için
fuzzer
bulmak güç olabilir
Pek çok modern web tarayıcısının içerisinde web fuzzer’lar bulunmaktadır
Özet Olarak
Yazılımları güvenlikleri açısından test etmek zorundayız
Kaynak kod ve tasarım
belgelemesi incelemesi
Statik kod analiz araçları
Tersine mühendislik
Penetrasyon testleri
Fuzz testleri
Teknikler geliştirme sürecinin tamamında kullanılabilir
Daha Fazla Bilgi İçin...
Güvenliğiniz Geleceğinizdir
Yüklə
0,97 Mb.
Dostları ilə paylaş:
Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət
Ana səhifə
Psixologiya