Rapor, sızma testinin test ekibi gittikten sonra elinizde kalan kısmıdır. Raporu iyi okumak, önce doğru şeyleri düzeltmek ve doğrulama testinden gerçek bir fayda sağlamak demektir. Ayrıca aslında üzerine kapak sayfası eklenmiş otomatik bir taramadan ibaret olan bir “sızma testini” fark etmenize de yardım eder.
İyi bir rapor neler içerir
OWASP Web Security Testing Guide, iyi bir ölçüt olarak kullanılabilecek bir rapor yapısı tanımlar. Her bölüm farklı bir okura hitap eder; kılavuz, bölümlerin ihtiyaç duyan ekipler için ayrı ayrı yazdırılabileceğini de önerir.
| Bölüm | Asıl okuru | Neye bakmalı |
|---|---|---|
| Yönetici özeti | Yönetim | Sade bir dille tek sayfa: sorun ne ve nasıl düzeltilir |
| Test parametreleri | Herkes | Amaç, kapsam, takvim, hedefler ve sınırlamalar |
| Bulgu özeti | BT ve güvenlik sorumluları | Tüm bulgular ve önem dereceleri tek bir tabloda |
| Düzeltme özeti | BT ve güvenlik sorumluları | Yalnızca sorun listesi değil, gruplanmış eylemler |
| Ayrıntılı bulgular | Mühendisler | Her sorun için kanıt, etki, tekrar üretme adımları ve çözüm |
| Ek | Mühendisler ve denetçiler | Kullanılan araçlar ve varsa özel betikler |
Sınırlamalar bölümünü dikkatle okuyun. Testler hesap kilitlenmeleri yüzünden durduysa ya da bir sunucu ikinci gün kapsamdan çıkarıldıysa rapor bunu belirtmelidir. Hiç test edilmemiş bir alan için temiz sonuç size hiçbir şey söylemez.
Birleşik Krallık Ulusal Siber Güvenlik Merkezi (NCSC), kolayca gözden kaçan iki unsur daha ekler. İyi bir rapor, test ekibinin sizin kendi güvenlik açığı değerlendirmenizin ne kadar isabetli olduğuna dair görüşünü ve bu süreci nasıl iyileştirebileceğinize dair önerilerini içerir.
İyi bir bulgunun yapısı
Her bulgu, projede yer almamış bir mühendisin sorunu anlamasını, tekrar üretmesini ve düzeltmesini sağlamalıdır. Şunlara bakın:
- benzersiz bir kimlik ve açık bir başlık
- önem derecesi; CVSS kullanılıyorsa CVSS vektörüyle birlikte
- ana bilgisayarlar, URL’ler, parametreler ya da roller gibi etkilenen varlıkların tam listesi
- zafiyetin tanımı ve işiniz açısından neden önemli olduğu
- istek ve yanıtlar, ekran görüntüleri ya da komut çıktıları gibi kanıtlar
- tekrar üretme adımları
- üretici duyurusu gibi referanslarla birlikte somut düzeltme önerisi
Uygulamada bunun nasıl göründüğüne dair kısaltılmış bir örnek:
ID AF-07 Invoice download does not check ownership
Severity Medium CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N (6.5)
Affected GET /api/v1/invoices/{id}/pdf on portal.example.eu
Evidence Logged in as customer A, a request for invoice 10452
(customer B) returned customer B's PDF.
Impact Any customer can download other customers' invoices,
including names, addresses and amounts.
Fix Check on the server that the invoice belongs to the
logged-in customer for every request.
Retest Request another customer's invoice and expect 403 or 404.
Örnekteki bulgu şunu anlatıyor: fatura indirme işlevi faturanın kime ait olduğunu kontrol etmiyor; A müşterisi olarak oturum açıp B müşterisine ait 10452 numaralı faturayı isteyen biri o faturanın PDF’ini alabiliyor. Vektör, bu bulgunun neden Orta puan aldığını görmenizi sağlar: gizlilik etkileniyor, bütünlük ve erişilebilirlik etkilenmiyor. Haklı gerekçelerle bu değerlendirmeye itiraz etmenize de olanak tanır. Faturalar kişisel veri içerdiği için bu bulgunun puanın gösterdiğinden daha yüksek bir önceliği hak ettiğine karar verebilirsiniz.
Bulgular nasıl derecelendirilir
Birçok rapor bulguları FIRST’ün yönettiği Common Vulnerability Scoring System (CVSS) ile derecelendirir; NCSC de CVSS’yi talep edebileceğiniz derecelendirme sistemleri arasında sayar. CVSS v3.1 ve v4.0 aynı nitel aralıkları kullanır:
| Derece | CVSS puanı |
|---|---|
| Yok | 0,0 |
| Düşük | 0,1 - 3,9 |
| Orta | 4,0 - 6,9 |
| Yüksek | 7,0 - 8,9 |
| Kritik | 9,0 - 10,0 |
Bu dereceleri okurken üç nokta işe yarar:
- Temel puan sizin riskinizi değil, önem derecesini ölçer. FIRST, temel puanın açığın kendine özgü niteliklerini makul bir en kötü durum senaryosunda yansıttığını belirtir ve kullanıcıların bu puanı kendi ortamlarına ilişkin bilgilerle tamamlaması gerektiğini söyler.
- Önem derecesi bir girdidir. OWASP kılavuzu, yönetici özetinde bunun açıkça belirtilmesini önerir: derecelendirme risk yönetimi sürecinizin yerini almaz, o sürece girdi sağlar.
- Test ekibi iş bağlamını bilmez. NCSC, derecelendirmeler fazla yüksek ya da fazla düşük olabileceği için bulguları kendinizin de değerlendirmesini önerir. Bunun sorunları küçümsemenin bir yolu olarak kullanılmaması konusunda da uyarır.
Önce ne düzeltilmeli
- İnternetten, oturum açmadan istismar edilebilen her şey, özellikle kod çalıştırmaya, veriye erişime ya da yönetici kontrolüne yol açıyorsa.
- Saldırı zincirleri. İyi bir rapor, daha düşük dereceli birkaç bulgunun bir araya gelerek nasıl ciddi bir bulguya dönüştüğünü gösterir. NIST SP 800-115, tarama araçlarının yalnızca açıklar birleştirildiğinde ortaya çıkan zayıflıkları tespit edemediğini belirtir. Bu zincirleri bulmak, insan test uzmanının kattığı değerin büyük kısmıdır.
- Anahtarları elinde tutan sistemler: kimlik sağlayıcıları, yedekleme sunucuları, uzaktan erişim geçitleri ve kişisel veri işleyen her şey.
- Hızlı kazanımlar. Tek bir yapılandırma değişikliği bazen birkaç bulguyu birden kapatır.
- Kök nedenler. NIST, değerlendirme sonrasında kök neden analizi yapılmasını önerir, çünkü sonuçlar zayıf sistemlere olduğu kadar zayıf süreçlere de işaret edebilir. Beş sunucuda eksik beş yama, birbirinden bağımsız beş sorun değil, yama yönetimiyle ilgili tek bir bulgudur.
NCSC, sızma testini açıkları bulmanın ana yolu olarak değil, kendi güvenlik açığı yönetiminizin bir kontrolü olarak görür. NCSC’nin ifadesiyle yeni keşifler “kural değil, istisna olmalıdır”. Rapor sizi şaşırtıyorsa bu, iç süreçleriniz hakkında da bir şey söyler.
Doğrulama testi
Doğrulama testini, neyi kapsayacağı ve öncesinde düzeltmeler için ne kadar süreniz olacağı dahil olmak üzere sözleşmeyi imzalarken belirleyin. Sonuçları güncellenmiş bir rapor ya da ek olarak, her bulgu için bir durumla isteyin: düzeltildi, kısmen düzeltildi, düzeltilmedi ya da risk kabul edildi.
Doğrulama testi belirli düzeltmeleri teyit eder; yeni bir test değildir. NCSC, bir testin sistemlerinizin yalnızca test günündeki durumunu gösterdiğine ve testler arasında bir yıl ya da daha uzun süre geçmesinin yaygın olduğuna dikkat çeker. Aradaki dönemde de kontrol etmeye devam edin.
Ucuz bir “sızma testinde” uyarı işaretleri
Otomatik taramanın da yeri vardır; NIST SP 800-115 bunu standart değerlendirme tekniklerinden biri olarak ele alır. Aynı belge, tarama araçlarının yüksek oranda yanlış pozitif üretebildiğini ve sonuçların doğru uzmanlığa sahip biri tarafından yorumlanması gerektiğini de belirtir. Sorun, incelenmemiş tarama çıktısı sızma testi diye satıldığında başlar. Uyarı işaretleri şunlardır:
- genel, kopyalanmış metinler içeren ve kimsenin doğruladığına dair kanıt bulunmayan bulgular
- banner’lar ve TLS şifre takımlarıyla ilgili düzinelerce düşük etkili madde, ama bir insanın test etmesi gereken erişim kontrolü, kimlik doğrulama ya da iş mantığı hakkında hiçbir şey
- doğrudan araçtan alınmış önem dereceleri; NIST, değerlendiricilerin tarama aracının derecelerini kabul etmek yerine risk düzeyini kendilerinin belirlemesi gerektiğini söyler
- kapsam, metodoloji ya da sınırlamalar bölümünün olmaması
- tekrar üretme adımlarının olmaması; bu durumda ekibiniz bir düzeltmeyi doğrulayamaz
- test uzmanlarının adlarının ya da yetkinliklerinin belirtilmemesi; NCSC, testlerin yalnızca nitelikli ve deneyimli kişilerce yapılması gerektiğini söyler
- aynı taramanın yeniden çalıştırılmasından ibaret bir “doğrulama testi”
Nereden başlamalı
Bir sonraki testinizden önce hizmet sağlayıcıya şunları sorun:
- Kapsamda tam olarak ne var, kapsam dışında ne var?
- Test ekibinin, test edilmesini istediğiniz her kullanıcı rolü için hesabı olacak mı?
- Anonimleştirilmiş örnek bir rapor görebilir misiniz?
- Bulgular nasıl derecelendiriliyor ve her bulgu bir CVSS vektörü içerecek mi?
- Doğrulama testi fiyata dahil mi ve hangi süre içinde yapılacak?
Bir test planlıyor ve önce kapsamı konuşmak istiyorsanız sızma testi hizmetimize göz atın.
