İçeriğe atla
tolgahat.com

Fidye yazılımı saldırısı: ilk 24 saatte yapılacaklar

Fidye yazılımı saldırısında ilk 24 saat: ağdan ayırma, kanıt koruma, kapsam sorguları, krbtgt sıfırlama, KVKK 72 saat bildirimi ve temiz kurtarma sırası.

THTolga HatipoğluYayın 12 dk okuma
HIZLI CEVAP

İlk 60 dakikada beş iş yapın: olayı ilan edip bir olay yöneticisi atayın; etki alanı e-postası dışında bir iletişim kanalı açın; etkilenen sistemleri ağdan ayırın ama kapatmayın; yedek sunucusunu ağdan ayırıp yedek kimlik bilgilerini değiştirin; bellek, günlük ve fidye notunu kanıt olarak saklayın. KVKK'nın 72 saatlik bildirim süresi olayı öğrendiğiniz anda başlar.

Bu listeyi nasıl kullanmalı

Bu liste olay sırasında ilk kez okunmak için yazılmadı. Bugün okuyun, ortamınıza göre doldurun, yazdırıp sunucu odasında ve yöneticilerin evinde birer kopya saklayın. Saldırı anında wiki, parola kasası ve e-posta erişilemez olabilir. Yapı, CISA'nın #StopRansomware rehberindeki müdahale kontrol listesini (tespit ve analiz, kapsama ve temizleme, kurtarma) ve NIST SP 800-61 Rev. 3'ü saat dilimlerine çeviriyor.

Her madde şu sırayı izler: başlık ne yapılacağını söyler, ardından neden, nasıl ve doğrulama gelir. Başlıktaki harf önceliktir: Y hemen, O aynı dilim içinde, D fırsat bulunca. Dört rol önceden atanmalı: olay yöneticisi karar verir ve zaman damgalı olay günlüğünü tutar; teknik ekip yalıtır, inceler ve kurtarır; iletişim çalışanlara, müşterilere ve basına tek ağızdan konuşur; hukuk KVKK, sözleşme ve sigorta yükümlülüklerini yönetir. Küçük ekipte bir kişi iki rol alabilir; olay yöneticisi teknik işe gömülmemeli.

İlk 24 saatin dört dilimi: ilk 60 dakikada olayı ilan etme, bant dışı kanal, ağdan ayırma ve yedekle kanıtı koruma; 1-4. saatte etkilenen sistemler, fidye notu, olay günlüğü sorguları ve hesaplar; 4-12. saatte ayrıcalıklı hesaplar, krbtgt planı, kalıcılık taraması ve dış bildirimler; 12-24. saatte temiz yedek noktası, kurtarma sırası, yalıtılmış geri yükleme ve izleme. Altta KVKK bildirim sayacı olayın öğrenildiği andan başlar ve 24 saatin dışına, 72. saate uzanır.
Şekil 1. İlk 24 saat dört dilimde; KVKK sayacı çizelgenin dışına uzanır.
Olay müdahale rolleri: merkezde olay yöneticisi; teknik ekip, iletişim, hukuk ve yönetim ona bağlı. Sigorta, Siber Güvenlik Başkanlığı ve USOM, KVKK Kurulu, kolluk ve müdahale firması gibi dış taraflarla yalnızca hukuk ve iletişim konuşur. Tüm akış etki alanı e-postası yerine bant dışı kanaldan yürür.
Şekil 2. Kararlar olay yöneticisinde toplanır; dış taraflarla iki rol konuşur.

1. İlk 60 dakika: yayılmayı durdurun

  1. Olayı ilan edin, olay yöneticisini atayın (Y)

    Neden: ilan edilmeyen olayda herkes kendi başına müdahale eder, kanıt bozulur, kararlar kaybolur. Nasıl: olay yöneticisini adıyla belirleyin; ilk kaydı "olay öğrenildi" saatiyle açın. Her karar, kim tarafından ve ne zaman verildiğiyle bu günlüğe girer. Doğrulama: olay günlüğünde öğrenme saati ve dört rolün sahibi yazılı.

  2. Bant dışı iletişim kanalını açın (Y)

    Neden: saldırgan etki alanı yöneticisiyse e-postanızı ve sohbet aracınızı okuyabilir. CISA, saldırganı uyarmamak için yalıtımın telefon gibi bant dışı yollarla eşgüdümlenmesini öneriyor. Nasıl: kişisel telefonlarla telefon zinciri ve etki alanına bağlı olmayan bir mesajlaşma grubu kurun. Doğrulama: ekibin tamamı yeni kanaldan bir kez yanıt verdi.

  3. Etkilenen sistemleri ağdan ayırın, kapatmayın (Y)

    Neden: Microsoft, ele geçirilen sistemleri ağdan yalıtıp kapatmamayı öneriyor. Kapatma bellekteki kanıtı siler. Nasıl: EDR'nin cihaz yalıtma (isolate device) işlevi, anahtar portunu kapatma veya sanal ağ kartını ayırma. Çok sayıda sistem etkilendiyse CISA ağı anahtar düzeyinde çevrim dışı almayı söylüyor.

    # vSphere (PowerCLI) ve Hyper-V: VM'in ağ kartını ayırın, VM'i kapatmayın
    Get-VM <VM-ADI> | Get-NetworkAdapter | Set-NetworkAdapter -Connected:$false -Confirm:$false
    Disconnect-VMNetworkAdapter -VMName <VM-ADI>

    Doğrulama: yalıtılan sistem ağdaki başka bir adrese ulaşamıyor; konsoldan hâlâ açık.

  4. Yedek altyapısını koruyun (Y)

    Neden: Microsoft'a göre insan eliyle yürütülen fidye yazılımı saldırganı fidye notundan önce yedekleri bulup siler veya bozar. Nasıl: yedek sunucusunu ve depoyu üretim ağından ayırın. Yedek konsolu, depo ve hipervizör parolalarını temiz bir cihazdan değiştirin. Yedekleme ve saklama (retention) işlerini durdurun ki şifreli veri temiz noktaların yerine geçmesin. Doğrulama: son temiz yedek noktaları listeleniyor; değiştirilemez kopya kilitli.

  5. Kanıtı koruyun (Y)

    Neden: ilk giriş noktasını ve sızdırılan veriyi kanıt gösterir; kolluk ve sigortacı da bunu ister. CISA etkilenen cihazlardan bir örnekleme için sistem imajı ve bellek dökümü almayı öneriyor. Nasıl: fidye notunun fotoğrafını çekin; VM'lerde bellekli snapshot alın; güvenlik duvarı, VPN ve proxy günlüklerini dışarı aktarın. Olay günlüklerini harici diske kopyalayın:

    wevtutil epl Security E:\IR\<SUNUCU>-Security.evtx
    wevtutil epl System E:\IR\<SUNUCU>-System.evtx

    Doğrulama: kanıt dosyalarının özeti (Get-FileHash) ve kimin aldığı olay günlüğünde.

2. 1-4. saat: kapsamı belirleyin

  1. Etkilenen sistemleri ve fidye yazılımı ailesini belirleyin (Y)

    Neden: kapsamı bilmeden yapılan temizlik, saldırganı ağda bırakır. Nasıl: şifreli dosya uzantısını ve fidye notunun adını not edin; dosya sunucularında aynı uzantıyı arayın. Hangi sistemlerin, uygulamaların ve hesapların etkilendiğini tabloya yazın. Fidye notundaki bağlantılara kurum ağından girmeyin. Doğrulama: her etkilenen sistemin sahibi, ağ bölümü ve yalıtım durumu tabloda.

  2. Olay günlüklerini sorgulayın (Y)

    Neden: oturum açma, ayrıcalık, süreç ve hizmet olayları saldırganın yolunu gösterir. Nasıl: her DC'de ve etkilenen sunucuda olayın başlangıcından öncesine giden bir aralıkla çalıştırın. 4688'de komut satırı yalnızca ilgili denetim ilkesi açıksa görünür.

    function Get-OlayAlani {
        param([int[]]$Id, [string]$Gunluk = 'Security', [datetime]$Bas = (Get-Date).AddDays(-7))
        Get-WinEvent -FilterHashtable @{ LogName = $Gunluk; Id = $Id; StartTime = $Bas } -ErrorAction SilentlyContinue |
            ForEach-Object {
                $alan = @{}
                foreach ($d in ([xml]$_.ToXml()).Event.EventData.Data) { $alan[$d.Name] = $d.'#text' }
                [pscustomobject]@{ Zaman = $_.TimeCreated; Id = $_.Id; Alan = $alan }
            }
    }
    # 4624: ağ (3) ve RDP (10) oturumları
    Get-OlayAlani -Id 4624 | Where-Object { $_.Alan.LogonType -in '3', '10' } |
        Select-Object Zaman, @{n = 'Hesap'; e = { $_.Alan.TargetUserName } }, @{n = 'Tur'; e = { $_.Alan.LogonType } }, @{n = 'Kaynak'; e = { $_.Alan.IpAddress } }
    # 4625: başarısız oturumlar, kaynağa göre
    Get-OlayAlani -Id 4625 | Group-Object { $_.Alan.IpAddress } | Sort-Object Count -Descending | Select-Object -First 10 Count, Name
    # 4672: özel ayrıcalıkla açılan oturumlar, hesaba göre
    Get-OlayAlani -Id 4672 | Group-Object { $_.Alan.SubjectUserName } | Select-Object Count, Name
    # 4688: şüpheli süreçler
    Get-OlayAlani -Id 4688 | Where-Object { $_.Alan.NewProcessName -match 'powershell|cmd|wmic|psexec|vssadmin|bcdedit|wbadmin' } |
        Select-Object Zaman, @{n = 'Surec'; e = { $_.Alan.NewProcessName } }, @{n = 'Komut'; e = { $_.Alan.CommandLine } }
    # 7045: yeni hizmet (System), 1102: güvenlik günlüğü temizlendi
    Get-OlayAlani -Id 7045 -Gunluk System | Select-Object Zaman, @{n = 'Hizmet'; e = { $_.Alan.ServiceName } }, @{n = 'Dosya'; e = { $_.Alan.ImagePath } }
    Get-OlayAlani -Id 1102 | Select-Object Zaman

    Doğrulama: ilk şüpheli olayın zamanı ve kaynağı olay günlüğünde. 1102 sonucu, o sistemin günlüğüne güvenmemeniz gerektiğini söyler; SIEM kopyasına bakın.

  3. İlk giriş noktasını tahmin edin (O)

    Neden: kapı açık kalırsa geri yüklenen sistem yeniden şifrelenir. CISA'nın listesi şunlara bakmayı öneriyor: yeni veya yetkisi yükseltilmiş AD hesapları, olağandışı VPN oturumları, gölge kopya (shadow copy) ve yedeklere müdahale, beklenmeyen uzaktan yönetim (RMM) araçları. Nasıl: VPN, e-posta ağ geçidi, internete açık RDP ve yamasız uç sistemleri ilk 4624 ve 4625 kayıtlarıyla eşleştirin. Doğrulama: en az bir giriş hipotezi ve kapatma eylemi yazılı.

  4. Etkilenen hesapları belirleyin (Y)

    Neden: Microsoft'un yaklaşımında ilk soru hangi kullanıcı hesaplarının ele geçirildiğidir. Nasıl: 4672 ve 4624 sonuçlarındaki ayrıcalıklı hesapları, son günlerde oluşturulan hesapları ve yönetici grubu üyelerini listeleyin:

    Get-ADUser -Filter * -Properties whenCreated | Where-Object whenCreated -gt (Get-Date).AddDays(-14) |
        Select-Object SamAccountName, whenCreated
    foreach ($g in 'Domain Admins', 'Enterprise Admins', 'Schema Admins', 'Administrators') {
        Get-ADGroupMember -Identity $g -Recursive | Select-Object @{n = 'Grup'; e = { $g } }, SamAccountName
    }

    Doğrulama: tanınmayan her hesap ve grup üyeliği tabloda, sahibine soruldu.

3. 4-12. saat: kapsayın ve bildirin

  1. Ayrıcalıklı hesapları devre dışı bırakın ve sıfırlayın (Y)

    Neden: Microsoft, AD'yi kurtaracak birkaç yönetici hesabı dışında tüm ayrıcalıklı hesapları devre dışı bırakmayı öneriyor. Nasıl: ele geçtiğinden şüphelenilen hesabı hemen kapatın; kalan yönetici, hizmet ve yedek hesaplarının parolasını temiz bir yönetim cihazından değiştirin. Disable-ADAccount -Identity <HESAP> ve Set-ADAccountPassword -Identity <HESAP> -Reset yeterlidir. Doğrulama: yönetici grubunda yalnızca kurtarma ekibinin hesapları etkin.

  2. krbtgt sıfırlamasını planlayın (Y)

    Neden: saldırgan krbtgt anahtarını aldıysa kendi Kerberos biletlerini üretebilir. Microsoft'a göre parola geçmişi 2'dir; iki sıfırlama eski anahtarları geçerlilikten çıkarır. Nasıl: önce çoğaltmayı denetleyin; tutmayan DC varsa AD sağlık kontrolü yazısındaki adımlarla düzeltin. Microsoft'un New-KrbtgtKeys betiği bunu tekrarlanabilir yapar; depo Mart 2024'te arşivlendi, güncel sürüm topluluk tarafından sürdürülüyor. Elle de yapılabilir:

    repadmin /replsummary
    Get-ADUser krbtgt -Properties PasswordLastSet, 'msDS-KeyVersionNumber' |
        Select-Object Name, PasswordLastSet, 'msDS-KeyVersionNumber'

    Doğrulama: her DC'de PasswordLastSet aynı; ikinci sıfırlamadan sonra repadmin /replsummary hatasız.

  3. Kalıcılık noktalarını tarayın (Y)

    Neden: saldırgan GPO, zamanlanmış görev ve hizmetle geri dönmeyi garantiler. Nasıl: son günlerde değişen GPO'ları, zamanlanmış görevleri ve otomatik başlatma anahtarlarını listeleyin. Sonuçları 7045 bulgularıyla birlikte değerlendirin.

    Get-GPO -All | Where-Object ModificationTime -gt (Get-Date).AddDays(-14) | Select-Object DisplayName, ModificationTime
    Get-ScheduledTask | Where-Object { $_.Date -and [datetime]$_.Date -gt (Get-Date).AddDays(-14) } |
        Select-Object TaskPath, TaskName, Author, Date
    Get-ItemProperty 'HKLM:\Software\Microsoft\Windows\CurrentVersion\Run', 'HKLM:\Software\Microsoft\Windows\CurrentVersion\RunOnce'

    Doğrulama: her bulgu "meşru" veya "kaldırılacak" diye işaretlendi; kaldırma kurtarma planına girdi.

  4. Sigortacıyı ve hukuku devreye alın (Y)

    Neden: siber sigorta poliçeleri genellikle bildirim süresi ve onaylı müdahale firması şartı içerir; onaysız harcama teminat dışında kalabilir. Nasıl: poliçedeki ihbar hattını arayın, poliçe numarasını ve olay saatini verin. Fidye ödemesini teknik ekip konuşmaz. OFAC'ın 2021 danışma notu, yaptırım listesindeki kişilere ödemenin, bilinmeden yapılsa da yaptırım ihlali sayılabileceğini belirtiyor. Doğrulama: sigorta dosya numarası olay günlüğünde.

  5. KVKK 72 saat sayacını izleyin (Y)

    Neden: Kurul'un 2019/10 sayılı kararına göre veri sorumlusu ihlali öğrendiği andan itibaren gecikmeksizin ve en geç 72 saat içinde Kurul'a bildirir. Gecikirse gerekçesini bildirimle açıklar. Veri sızdırıldıysa (çifte gasp) ihlal neredeyse kesindir. Nasıl: hukuk, etkilenen kişisel veri kategorilerini ve kişi sayısını tahmin eder; bildirim ihlalbildirim.kvkk.gov.tr üzerinden yapılır. İlgili kişilere makul en kısa sürede bildirim gerekir. Doğrulama: son bildirim saati olay günlüğünde ve takvimde.

  6. Siber Güvenlik Başkanlığı, USOM ve kolluk bildirimini yapın (O)

    Neden: 7545 sayılı Siber Güvenlik Kanunu'nun 7. maddesi, kapsamındakilere tespit ettikleri siber olayları gecikmeksizin Siber Güvenlik Başkanlığı'na bildirme yükümlülüğü getiriyor. Nasıl: USOM'un ihbar sayfası, siber ihbar süreçlerinin siberguvenlik.gov.tr üzerinden sürdüğünü belirtiyor; kurumsal SOME'niz varsa sektörel kanalı kullanın. Suç duyurusu için Cumhuriyet başsavcılığına veya emniyetin siber suçlarla mücadele birimine başvurun. Doğrulama: başvuru numaraları olay günlüğünde.

4. 12-24. saat: kurtarmaya başlayın

  1. Temiz geri yükleme noktasını seçin (Y)

    Neden: şifrelemeden hemen önceki nokta temiz değildir; saldırgan çoğu zaman günler önce girmiştir. Nasıl: 2. bölümdeki ilk şüpheli olay zamanından önceki noktayı aday seçin; değiştirilemez kopyayı tercih edin. Yedek mimarisi, değiştirilemez depo ve geri yükleme testi ayrıntıları için VM yedekleme stratejisi kontrol listesine bakın. Doğrulama: seçilen nokta bilinen kalıcılık izlerinden önce ve yalıtılmış taramada temiz.

  2. Kurtarma sırasını uygulayın (Y)

    Neden: uygulamalar kimliğe, kimlik DNS'e dayanır; sırasız geri yükleme çalışmayan sistemler üretir. Microsoft da kimliği en savunmasız saldırı vektörü olarak önceliklendiriyor. Nasıl: önce kimlik (temiz DC'ler, krbtgt, ayrıcalıklı hesaplar), sonra ağ ve DNS, sonra altyapı (hipervizör, yedek, dosya), en son iş uygulamaları. DNS çözümlemesini DNS sorun giderme yazısındaki komutlarla doğrulayın. Doğrulama: her katman bir sonrakine geçmeden olay yöneticisinin onayını aldı.

  3. Temiz ve yalıtılmış ortamda geri yükleyin (Y)

    Neden: CISA, kurtarma sırasında temiz sistemlerin yeniden bulaşmasını önlemeyi vurguluyor. Nasıl: geri yüklemeyi üretimden ayrı bir kurtarma ağında yapın; segmentasyon için VLAN tasarımı rehberine bakın. Sistemleri standart imajdan yeniden kurun, eksik güncellemeleri yükleyin, tarayın, sonra üretime bağlayın. Doğrulama: her sistem taramadan temiz geçti; yeni parolalarla çalışıyor.

  4. Yoğun izlemeyi başlatın (Y)

    Neden: saldırgan genellikle ikinci bir yol bırakır; ilk günlerde geri dönmeyi dener. Nasıl: 2. bölümdeki sorguları ve EDR uyarılarını sık aralıklarla tekrar çalıştırın; VPN'i MFA olmadan açmayın. Bulduğunuz göstergeleri (IP, alan adı, dosya özeti) engelleyin. Doğrulama: yeni 1102, 7045 veya tanınmayan 4672 kaydı yok.

Kurtarma sırası dört adım: önce kimlik (temiz DC, krbtgt iki kez, ayrıcalıklı hesaplar), sonra ağ ve DNS (DNS, DHCP, güvenlik duvarı), sonra altyapı (hipervizör, yedek sunucusu, dosya sunucusu), en son iş uygulamaları (ERP, SQL Server, e-posta). Her adımda sistem yalıtılmış kurtarma ağında geri yüklenir, taranır, doğrulanır ve ancak sonra üretime bağlanır.
Şekil 3. Kimlik temizlenmeden uygulama geri yüklenmez.

Yapılmaması gerekenler

Bu tablo, olay anında en çok yapılan ve geri alınamayan hataları topluyor. Yazdırdığınız kopyanın ilk sayfasına koyun.

YapmayınNedenYerine
Etkilenen makineyi kapatmakBellek kanıtı ve anahtar kaybolurAğdan ayırın
Şifreli dosyaları silmekİleride çözücü (decryptor) çıkabilir; CISA kolluğa danışmayı öneriyorSalt okunur arşivleyin
Aynı kimlik bilgileriyle geri yüklemekSaldırgan aynı parolalarla geri girerÖnce parolaları ve krbtgt'yi sıfırlayın
Saldırganla kendi başına pazarlıkYaptırım, sigorta ve hukuk riskiHukuk ve sigortacı yürütür
Yedekleri ağa geri bağlamakSon temiz kopya da şifrelenirGeri yüklemeyi yalıtılmış ağda yapın

Önceden hazırlık özeti

Olay günü yapılanların çoğu, olaydan önce hazırlananlar kadar iyidir. KVKK de veri sorumlusundan bir veri ihlali müdahale planı hazırlayıp düzenli gözden geçirmesini bekliyor.

  • Basılı olay kitabı. Bu liste, roller, telefon zinciri, sigorta ihbar hattı ve hukuk danışmanının numarası kâğıtta.
  • Değiştirilemez, etki alanı dışı yedek. Ayrıntılar VM yedekleme stratejisi kontrol listesinde.
  • Sertleştirilmiş sunucular. İnternete açık RDP yok, LAPS ve saldırı yüzeyi azaltma kuralları açık; bkz. Windows Server 2025 sertleştirme listesi.
  • Günlükler sunucu dışında. Güvenlik günlükleri SIEM'e akıyor, 4688 komut satırı denetimi açık, saklama süresi en az birkaç hafta.
  • Ayrıcalıklı erişim katmanları. Etki alanı yöneticisi yalnızca DC'lere ve yönetim iş istasyonlarına oturum açıyor; kurtarma için ayrı acil durum hesabı var.
  • Masa başı tatbikat. Yılda en az bir kez bu listeyle senaryo çalışması; RTO'lar ve iletişim zinciri ölçülüyor.

Kaynaklar

Sık sorulan sorular

Fidye yazılımı bulaşan bilgisayarı kapatmalı mıyım?

Hayır, önce ağdan ayırın. Microsoft ele geçirilen sistemleri ağdan yalıtıp kapatmamayı öneriyor; CISA da kapatmayı yalnızca ağdan ayırmak mümkün değilse son çare olarak görüyor. Kapatma, bellekteki şifreleme anahtarı, süreç ve bağlantı kanıtlarını siler.

Fidyeyi ödemeli miyim?

CISA ve FBI ödememeyi öneriyor: ödeme verinin geri geleceğini veya sızdırılan verinin silineceğini garanti etmez. ABD Hazinesi OFAC'ın 2021 danışma notuna göre yaptırım listesindeki kişilere yapılan ödeme yaptırım riski taşır. Karar teknik ekibin değil; yönetim, hukuk ve sigortacıyla birlikte verilir.

KVKK'ya ne zaman bildirim yapmalıyım?

Kişisel Verileri Koruma Kurulu'nun 2019/10 sayılı kararına göre veri sorumlusu ihlali öğrendiği andan itibaren gecikmeksizin ve en geç 72 saat içinde Kurul'a bildirir; gecikmenin gerekçesi bildirimle birlikte açıklanır. İlgili kişilere makul en kısa sürede bildirim yapılır. Olayın ihlal sayılıp sayılmadığını hukuk danışmanınızla değerlendirin.

krbtgt parolası neden iki kez sıfırlanıyor?

Microsoft'a göre krbtgt hesabının parola geçmişi 2'dir; tek sıfırlamada eski anahtar geçerli kalır ve saldırganın sahte Kerberos biletleri çalışmaya devam edebilir. İki sıfırlama eski anahtarları geçmişten çıkarır. Arada varsayılan bilet ömrü olan 10 saat beklenir ve çoğaltmanın tamamlandığı doğrulanır.

Yedekten hemen geri yükleyebilir miyim?

Kimlik altyapısı temizlenmeden ve ilk giriş noktası kapatılmadan geri yüklemek, saldırganı geri yüklenen sisteme de taşır. Önce şifrelemeden ve kalıcılık izlerinden önceki temiz noktayı seçin, geri yüklemeyi yalıtılmış ağda yapın, tarayın, sonra üretime bağlayın.

TH
Tolga Hatipoğlu

Sistem Yöneticisi. Sanallaştırma ve depolama altyapıları kuruyor, yönetiyor ve burada belgeliyor. Yazıdaki bir bilgi eskidiyse düzeltme önerin.