pink and silver padlock on black computer keyboard

İzmir’de 380 çalışanlı bir gıda üreticisi, KVKK + ISO 27001 + müşteri (büyük perakende zincirleri) denetim baskısı altında bulut güvenliği hardening programı başlattı. 9 aylık çalışma sonunda Defender for Cloud secure score 38’den 84’e çıktı, sızma testinden geçildi, müşteri denetimleri aşıldı. Bu yazı o programdan 17 somut aksiyon notu — checklist olarak değil, uygulanış detaylarıyla.

Tehdit Yüzeyini Anlama: Risk Assessment

İlk 3 hafta inventory + risk assessment:

  • Azure: 2 subscription, 14 resource group, 220 resource, 8 farklı region
  • Identity: 412 user, 38 service principal, 24 admin role atanmış
  • Data: 18 storage account, 8 SQL DB, 4 Cosmos DB, ~~18 TB total
  • Network: 6 VNet, 38 subnet, 4 ExpressRoute, 12 public IP

Microsoft Defender for Cloud secure score: 38/100. Sentinel’de 6 ayda 0 incident kaydı (çünkü kuralar yoktu, görünmüyordu).

Kimlik Katmanı (5 Aksiyon)

1. MFA: Tüm Hesaplar İçin Zorunlu

Conditional Access ile tüm user’lara MFA zorunlu, IP whitelist (kurumsal ağ) hariç:

Policy: Block legacy authentication
  Conditions: All users, All cloud apps, Client apps = Legacy
  Action: Block

Policy: Require MFA
  Conditions: All users (except break-glass), All cloud apps
  Exclusion: Trusted IPs (corp network)
  Action: Grant access requiring MFA

2. Privileged Identity Management (PIM)

Eski durum: 24 user’da Owner/Contributor rolü kalıcı. Yeni: PIM, kişiler eligible, 8 saatlik aktivasyon, justification + approval şart.

3. Break-Glass Hesabı

2 emergency hesap, MFA dışı, sadece bilinen sayıda kişide credential, FIDO2 hardware key. Conditional Access policy’lerden hariç. Aylık denetim.

4. Service Principal Audit

38 SP’den 14’ü kullanılmıyordu (legacy migration kalıntısı), silindi. Aktif SP’lerin secret’ları 90 günde rotate, federated credential’a geçiş başladı.

5. Just-in-Time (JIT) VM Access

22 VM’de SSH/RDP port’u sürekli açık. JIT ile sadece talep edildiğinde 3 saat açılıyor, IP filtresi (talep edenin IP’si).

Ağ Katmanı (4 Aksiyon)

6. Network Segmentation

Tek “default” VNet’in içinde her şey karışıktı. Üç katmana ayrıldı:

  • Hub VNet: Firewall, ExpressRoute, DNS
  • Spoke 1 (Production): App Service, AKS, Function App
  • Spoke 2 (Data): SQL, Cosmos, Storage (private endpoint)
  • Spoke 3 (Management): Bastion, monitoring

7. Private Endpoint Tüm PaaS Servislere

Storage, SQL, Cosmos, Key Vault, ACR — hepsi private endpoint’le sadece VNet içinden erişilebilir. Public endpoint kapalı.

8. Azure Firewall Premium

Outbound trafik filtreleme, IDPS (intrusion detection/prevention), TLS inspection. Maliyet ~$1.000/ay ama saldırı önleme + compliance şart.

9. DDoS Protection Standard

Public-facing IP’ler için DDoS Protection Standard. Maliyet $2.944/ay tenant başına ama L3/L4 DDoS koruma + SLA + cost protection (saldırı sırasında scaled bandwidth ücreti Microsoft’tan).

Veri Katmanı (3 Aksiyon)

10. Encryption at Rest, Customer-Managed Keys (CMK)

Default Microsoft-managed key yerine Key Vault’taki HSM-backed CMK ile encrypt. Storage, SQL, Cosmos hepsi CMK kullanıyor. Key rotation 90 günde otomatik.

11. Backup ve İmmutable Storage

Azure Backup Vault ile critical VM’ler, SQL DB’ler, file share’ler. Soft delete + immutable retention 30 gün → ransomware bile silemiyor.

12. Data Loss Prevention (DLP)

Microsoft Purview ile sensitive data discovery: TC kimlik, kredi kart, IBAN otomatik tespit + label + DLP policy. Dış paylaşımda alarm/block.

Monitor Katmanı (3 Aksiyon)

13. Defender for Cloud Tüm Plan’lar Aktif

Defender plan’ları (Servers, App Service, Storage, SQL, Containers, Key Vault, Resource Manager, DNS) hepsi aktif. Aylık ek ~~$1.400 ama recommendations + threat protection + compliance dashboard.

14. Microsoft Sentinel Workspace + Detection Rules

Tüm log’lar Sentinel’e bağlandı (Azure AD, Office 365, Defender, Firewall, NSG flow logs, AKS audit). 47 detection rule + 12 SOAR playbook.

15. Diagnostic Settings Tüm Resource’larda

Azure Policy ile tüm resource’ların diagnostic settings’i Log Analytics workspace’e gönderiyor (zorunlu). Audit ihtiyacında trail var.

Vakaya Hazırlık (2 Aksiyon)

16. Incident Response Playbook

16 sayfa IR playbook: Hangi alarm hangi seviyede, kim haberdar, hangi süre içinde aksiyon, eskalasyon, müşteri/regülasyon bildirim süreçleri (KVKK 72 saat). Yıllık 2 tatbikat.

17. Backup Restore Drill

3 ayda bir restore tatbikatı. Production’dan rastgele bir DB seçiliyor, yedekten yeni DB restore ediliyor, data integrity kontrolü, rapor.

Sonuçlar

Metrik Önce Sonra
Defender for Cloud Secure Score 38 84
Internet’ten erişilebilir resource sayısı 62 4 (kurumsal portal + CDN)
Eligible-only privileged role oranı %0 %92
MFA enforced user oranı %34 %100
Sentinel detection rule 0 47
Mean Time to Detect (MTTD) ~~18 dk
Sızma testinden geçme Hayır Evet

Maliyet

Kalem Aylık (USD)
Defender for Cloud (tüm plan) 1.400
Sentinel (200 GB/gün commitment) 1.150
Azure Firewall Premium 1.000
DDoS Protection Standard 2.944
Toplam ek güvenlik bütçesi ~6.500

Karşılığında: müşteri denetimleri geçildi (yoksa $1.5M ciro kaybı riski), ISO 27001 sertifikası alındı, KVKK denetimi clean rapor.

Sahada Düşülen Üç Tuzak

  1. Hardening’i tek seferde uygulamaya çalışmak: 17 aksiyon paralel yürütülünce çatışmalar çıkıyor. Phased approach: ay başına 2-3 aksiyon.
  2. Break-glass hesabı düşünmemek: Conditional Access bug’ı tüm hesapları kilitler, break-glass olmazsa tenant kullanılamıyor. İlk gün açılmalı.
  3. Defender’ı açıp ignore etmek: Recommendations aktif olur ama haftalık review yoksa anlam yok. Owner atanır, haftalık report gönderilir.

CloudSpark olarak bulut güvenliği hardening programları, KVKK + ISO 27001 + PCI uyum projeleri ve SOC kurulumları için danışmanlık veriyoruz.

🇹🇷 Türkçe🇬🇧 English🇩🇪 Deutsch🇫🇷 Français🇸🇦 العربية🇷🇺 Русский🇪🇸 Español