Hizmet · Yazılım Testi ve Kalite Güvencesi

Sızma Testleri

Ankara'da birkaç şubesi olan bir poliklinik grubunu düşünelim. Hastalar bir portal üzerinden randevu alıyor, tahlil sonuçlarını görüyor ve raporlarını indiriyor. Portal yıllar içinde büyümüş, farklı firmalar üzerinde çalışmış. Her hastanın yalnızca kendi sonuçlarını görmesi gerekiyor. En azından tasarım böyle. Peki bir hasta adres çubuğundaki sonuç numarasını bir artırdığında başka birinin tahlil sonucunu görürse? Sağlık verisi KVKK'da özel nitelikli kişisel veri sayılır ve böyle bir açığın sonuçları hem hastalar hem de kurum için ağır olur. Bu tür yetki hataları en sık görülen ve en çok zarar veren açıklar arasındadır, ama otomatik tarayıcılar onları güvenilir biçimde bulamaz. Bir tarayıcı, A hastasının B hastasının verisini görmemesi gerektiğini bilmez. Sızma testi, uygulamanızı sistem sahibinin yazılı izniyle, bir saldırganın bakış açısıyla ve büyük ölçüde elle inceler. Bulduğu açıkları kanıtlarıyla belgeler ve düzeltildiklerini yeniden test ederek doğrular.

Yazılı izin
sistem sahibinden, başlamadan önce
OWASP
WSTG, ASVS ve MASVS temelli
Elle test
mantık ve yetki hataları
Yeniden test
düzeltmeyi doğrular

Hizmetin kapsamı

Kapsam her uygulamada farklıdır. Aşağıdakiler, bir web uygulamasında en çok zaman ayırdığımız başlıklardır.

Kapsamı mühendislerimizle netleştirin

Rol ve yetki matrisi

Uygulamadaki her rolün hangi kayda, hangi işleve erişmesi gerektiğini bir tabloya dökeriz ve tablonun her hücresini tek tek deneriz. Hasta, doktor, sekreter ve yönetici hesapları arasındaki sınırlar en sık burada delinir.

Hesap ele geçirme yolları

Giriş ekranında deneme sınırı var mı, SMS ile gelen tek kullanımlık kod tahmin edilebilir ya da atlanabilir mi, parola sıfırlama bağlantısı başkasının hesabına yönlendirilebilir mi, oturum çıkıştan sonra gerçekten kapanıyor mu?

İş kurallarının suistimali

Sepetteki tutarı istemci tarafında değiştirmek, tek kullanımlık bir kodu defalarca kullanmak, dolu bir randevu saatini ele geçirmek gibi, teknik olarak hata sayılmayan ama işinize zarar veren davranışlar.

Girdiler ve dosyalar

SQL ve komut enjeksiyonu, XSS, yükleme alanlarına zararlı dosya bırakma ve istek parametrelerini elle değiştirme denemeleri.

API ve mobil istemci

Mobil uygulamanın konuştuğu API'nin her isteği ayrıca yetkilendirip yetkilendirmediği, hız sınırı ve cihazda açık metin olarak saklanan anahtar ya da kişisel veri olup olmadığı.

İnternete açık yüzey

Unutulmuş alt alan adları, açık kalmış yönetim ve veritabanı panelleri, herkese açık bulut klasörleri ve eski sürümde kalmış bileşenler.

İki katmanlı rapor

Yönetim için sade bir özet, geliştiriciler için her bulgunun CVSS puanı, adım adım yeniden üretme yolu ve düzeltme önerisi.

Çalışma adımları

Test penceresi, iletişim kişileri ve test IP adreslerimiz başlamadan önce yazılı olarak paylaşılır, böylece ekibiniz neyin test olduğunu bilir.

01

Ön görüşme

Uygulamanın rolleri, hassas verileri, barındırma yeri ve test için uygun zaman aralığı konuşulur.

02

İzin belgesi

Sistem sahibinin ve gerekiyorsa barındırma firmasının imzaladığı, kapsamı ve tarihleri içeren yazılı izin.

03

Test penceresi

Burp Suite ve benzeri araçlarla ağırlıklı olarak elle yapılan inceleme. Kritik bir açık bulunursa raporu beklemeden hemen haber veririz.

04

Bulgular ve yeniden test

Şifreli iletilen rapor, geliştiricilerle görüntülü değerlendirme ve düzeltmelerden sonra doğrulama.

Testi canlıya çıkıştan hemen önceye değil, düzeltme payı bırakacak bir tarihe koyun. Yayından iki gün önce yapılan bir sızma testi, kritik bir açık bulduğunda sizi zor bir seçimle baş başa bırakır: ya yayını ertelersiniz ya da açığı bilerek canlıya çıkarsınız. Testi, bulguların düzeltilip yeniden test edilebileceği birkaç haftalık bir pay bırakarak planlayın.

Sık sorulan sorular

Çünkü bir sisteme izinsiz erişmek, iyi niyetle yapılsa bile Türk hukukunda suçtur. İznin gerçek sistem sahibinden gelmesi gerekir. Sistem bir barındırma sağlayıcısında ya da hizmet firmasında çalışıyorsa onların onayını da alırız.

Gri kutu testte her rol için birer test hesabı, varsa API belgeleri ve uygulamanın hangi adreslerde çalıştığı yeterlidir. Parolalarınızı ya da gerçek hasta, müşteri verisini paylaşmanız gerekmez.

Ayrıntılı rapor bir saldırgan için yol haritasıdır, bu yüzden dar bir çevrede kalmalıdır. Dışarıya göstermek için kapsamı, tarihleri ve yeniden test sonucunu içeren kısa bir özet belge hazırlarız.

Yılda en az bir kez ve uygulamanın yapısı değiştiğinde: yeni bir ödeme yöntemi, yeni bir giriş yöntemi, yeni bir API ya da altyapı taşıması gibi. Siber güvenlikle ilgili mevzuat ya da sektör düzenlemeleri kapsamındaysanız, düzenli test risk yönetiminizin bir parçası olabilir.

Tarama, bilinen açıkları ve eksik ayarları hızlıca bulur ve düzenli yapılmalıdır. Ancak bir tarayıcı, hastanın başka bir hastanın sonucunu görmemesi gerektiğini bilemez. Yetki ve iş mantığı hatalarını ancak uygulamayı anlayan bir insan bulur.

Saldırganlardan önce biz bakalım

Uygulama ne işe yarıyor, hangi rolleri var, hangi hassas verileri tutuyor ve sistemin sahibi kim? Size kapsam ve takvim önerelim.

Çalışma saatleri
Pazartesi-Cuma, 09:00-18:00 (Türkiye saati), yanıt bir iş günü içinde
Görüşmeler
Microsoft Teams ya da Google Meet üzerinden görüntülü görüşme

Bu sitede yalnızca sitenin çalışması ve seçtiğiniz şehri hatırlamak için gereken zorunlu çerezler var. Reklam ya da takip çerezi kullanmıyoruz. Ayrıntılar Gizlilik ve KVKK aydınlatma metni bölümünde.