Incident Response Süreci | WMI – WMIC Sorguları

Siber güvenlik dünyasında bir “incident” (olay) meydana geldiğinde, bu olayın etkilerinin minimize edilmesi ve ardından detaylı bir şekilde analiz edilmesi büyük önem taşıyor. Hacklenmiş bir sistemde, bu tür bir olaya müdahale etme süreci, genellikle “Incident Response” (Olay Müdahalesi) olarak adlandırılır.

Bu yazımda, bir siber saldırıya karşı yapılması gereken adımların her birini ayrıntılı olarak ele alacağım. Ayrıca, bu sürecin belirlenen çerçevelerle nasıl yapılandırıldığına da değineceğim.

Diyelim ki bir cinayet vakası var ve biz de bu cinayetin araştırmacısıyız. Bizim sormamız gereken bazı sorular var. Mesela bu cinayeti kim yapmış olabilir? Ne zaman ve nerde yapılmış? Arkada bir iz bırakmış mı? IT sistemleri üzerinden ise şöyle bir örnek verebiliriz; Bizi kim hacklemiş? Ne zaman hacklemiş? Arka tarafta hangi dosyaları oluşturmuş? Oluşturulan dosyalar her hangi IP adresi barındırıyor mu? Olay müdahalesi sonrası ilgili kişiler bu gibi soruların cevaplarını ararlar.

Incident Response Adımları

Bir kurum içerisinde olası bir hacking vakası ile karşılaşıldığı zaman kimlerin hangi görevleri üstleneceği önceden belirlenmeli ve ilgili kişilerin hangi adımları izleyeceklerini bilmeleri gerekiyor. Bu süreci yönetecek ekibin 5 kişilik olduğunu varsayalım. Bu 5 kişi henüz bir olay yaşanmadan önce bu görev dağılımını yapmalı ve bilinçli olmalı.

1-Hazırlık (Preparation)

Olay müdahalesinin ilk aşaması, “Hazırlık”tır. Bu aşama, siber saldırılar gerçekleşmeden önce alınması gereken tüm önlemleri kapsıyor. Kurumlar, olası bir saldırıya karşı hazırlıklı olabilmek için önceden planlar yapmalı, gerekli araçları kurmalı ve personeli eğitmelidir.

  • Hazırlık aşamasında yapılması gerekenlere örnek verecek olursak:
  • Güvenlik politikalarının KVKK gibi düzenlemelere uyumlu şekilde oluşturulması
  • Güvenlik araçlarının (SIEM, IPS/IDS, EDR)kurulumu ve test edilmesi
  • İlgili ekip üyelerinin olay müdahalesi için yeterli eğitimi almış olmaları
  • Olası saldırılara karşı sıkı güvenlik önlemlerinin alınması

2-Tespit ve Raporlama (Detection and Reporting)

Bir siber saldırı tespit edildiği zaman ilk yapılması gereken şey doğru bir şekilde analiz etmek ve raporlamaktır. Bir vaka yaşandığını varsayalım. Kurumda bir kullanıcıya zararlı bir mail geldi. Güvenlik sistemlerinden gelen logların incelenmesi gerekiyor. Burada SIEM, EDR gibi güvenlik araçlarımız üzerinden analiz yaparız ve saldırganın hangi IP adreslerinden geldiği, hangi dosyaların etkilendiği gibi bilgileri toplarız.. “Hangi tarihlerde hangi aktiviteler olmuş?” gibi soruları cevapladığımız aşamayı detection olarak adlandırılır.

Tespit ettikten sonra olayın boyutunu belirleriz ve analiz yaparız. Saldırıdan etkilenen sistemler ve veri kaynaklarımızı belirleriz.

3-Önceliklendirme ve Analiz (Triage and Analysis)

Olay tespiti sonrasında sistematik bir şekilde olayın etkileri ve saldırganın yaptığı hareketler değerlendirilir. Bu aşama bir nevi olayı olayın derinlemesine incelenmesi ve önceliklendirilmesidir. Burada triaj dediğimiz olay arka planda hangi makinede gerçekleştiyse bu makine üzerinde arda kalan izlerin hepsi aslında. Gerçek hayattan bir örnek vermek gerekirse parmak izi veya olay yerinde unutulan bir eşya diyebiliriz. Saldırganın arka planda bırakmış olduğu izler bizim için triaj oluyor. Sonrasında analiz kısmına geçiyoruz.

Burada saldırganın kullandığı yöntemler ve saldırı tipi belirlendikten sonra MITRE ATT&CK framework’ü gibi kılavuzlar kullanarak saldırı tipi ve kullanılan teknikler analiz edilebilir.

4-İzole Etme, Temizleme ve Kurtarma (Containment, Eradication and Recovery)

Bir saldırı başarılı olduğunda, öncelikli hedeflerden biri, etkilenen sistemleri izole ederek daha fazla hasarın önüne geçmektir. Burada amaç olayın diğer sistemlere yayılmasını engelleme diyebiliriz. Etkilenen sistemleri sistemleri temizleme süreci de burada devreye giriyor. Bu 3 ana aşamadan bahsedelim:

İzole etme (Containment): İlk olarak saldırganın daha fazla zarar vermesini engellemek için etkilenen sistemleri izole etmemiz gerekir. Mesela ağda şüpheli bir cihaz varsa bu cihazın bağlantısının hemen kesilmesi gerek. Yayılmayı engellemek için önemli bir adımdır.

Temizleme (Eradication): Sonra etkilenen sistemlerdeki zararlı yazılımlar temizlenir. Bu aşamada saldırıya sebep olan virüsler kötü amaçlı yazılımlar ya da başka tehditler sistemden tamamen kaldırılır. Ayrıca güvenlik açıkları varsa bunlarda kapatılır. Yani sistem tekrardan güvenli hale getirilir.

Kurtarma (Recovery): Son olarak sistemlerin eski hale getirilmesi sağlanır. Mesela bir sunucuya saldırı yapılmışsa yedeklerden geri yükleme yapılabilir. Böylece hizmet veren sunucu aksamamış olur. Bu özellikle hizmet sektöründeki şirketler için çok önemlidir. Örneğin bir banka saldırıya uğradığında sunucuların hızla eski haline getirilmesi gerekir ki müşteri güveni kaybolmasın ve insanların bankacılık işleri aksamasın.

5-Ders Çıkarma ve Geliştirme (Post Incident Activity / Lessons Learned)

Bir siber saldırı sonrası sadece saldırıyı engellemek değil aynı zamanda yaşanan olaydan ders almak da çok önemli. Yani;

Nasıl oldu? Neden hacklendik? Tespit süremiz ne kadardı? Bir zafiyetten dolayı mı hacklendik? Güvenlik sistemlerimiz bunu tespit edebildi mi? Analist eksiğimiz var mı? gibi soruları cevaplandırarak kendimizi değerlendiririz. Belki bazı araçlar yetersizdi, belki ekip eğitimi eksikti ya da sistemlerde iyileştirilmesi gereken yerler vardı. Biz bu değerlendirmeleri yaptıktan sonra eksik alanları belirleyip gelecekteki saldırılara daha hazırlıklı olmalıyız.

WMI & WMIC Nedir?


WMI: Windows Management Instrumentation, yani Windows Yönetim Araçları.

WMIC: Windows Management Instrumentation CommandLine, yani kısaca Windows Yönetim Araçları Komut Satırı.

WMIC aslında WMI işlemlerini komut satırı üzerinden yapmanıza imkan veren bir araç. Yani bilgisayarın yönetimiyle ilgili bazı şeyleri(çalışan hizmetler, kullanıcı hesabı bilgileri, ağ bilgileri, işletim sistemi bilgileri…), yazılımla uğraşmak yerine, doğrudan komut girerek halledebilirsiniz.

WMIC bir sürü farklı işlemi gerçekleştirebilen bir araç ve özellikle olay müdahalesi esnasında gerçekten çok faydalı. Aşağıda olay müdahalesi esnasında işimize yarayacak olan bazı WMIC sorgularını yazdım.

Bilgisayar Sistemi Hakkında Bilgi

"wmic process get name, parentprocessid, processid" 

Bu komut tüm işlemler için işlem adı (name), ana işlem ID’si (parentprocessid) ve işlem ID’si (processid) bilgilerini listeleyecektir. Örneğin burada wininit.exe çalışmış process ıd’si 1160. Olası zararlı bir yazılım tespiti için, burada hangi parametrelerin çalıştığını incelemek işimize yarayabilir. Çalışan process’in process tree yapısınıda wmic üzerinden tespit edebiliriz. Bunu “Task Manager” gibi araçlarla da tespit etmemiz mümkün.

"wmic computersystem list brief" 

Bu komut bilgisayar sistemi hakkında kısa bir özet bilgi veriyor. Sistemle ilgili temel bilgileri, örneğin bilgisayar adı, üretici bilgisi, model ve durum gibi bilgileri alabilirsiniz.

“wmic os list brief”

İşletim sistemi hakkında kısa bir özet bilgi verir. Bu komut, Windows sürümü, yapısı, yüklenme tarihi gibi bilgileri görüntüler.

"wmic os get Version, Caption, CountryCode, CSName, Description, InstallDate, SerialNumber, ServicePackMajorVersion, WindowsDirectory /format:list"

Bu komut, işletim sistemi hakkında daha detaylı bilgi sağlıyor. Sırasıyla: işletim sistemi sürümü, adı, sistem dilinin ülke kodu, bilgisayar adı, işletim sistemi açıklaması, işletim sisteminin kurulum tarihi, Windows’un seri numarası, yüklenen servis paketinin sürüm numarası, windows dizininin yolu.

CPU Hakkında Bilgi

"wmic cpu get processorID"
"wmic cpu list instance"

“wmic cpu get Name, Caption, MaxClockSpeed, DeviceID, Status”

Bu üç komut CPU hakkında bilgi veriyor. Özellikle son komut işlemcinin adını, kısa açıklamasını, GHz hızını, cihaz kimliğini ve işlemcinin çalışıp çalışmadığı durumunun bilgisini veriyor.

Bilgisayar Açılışında Çalışan Uygulamalar

"wmic startup get Caption, Command, Location, User"

Bu komut bilgisayar ilk açıldığında otomatik olarak çalışmaya başlayan uygulamaları listeliyor. Sırasıyla: Uygulamanın adı, çalıştırma kodu veya yolu, uygulamanın bulunduğu klasör ve uygulamanın çalıştığı kullanıcı adı bilgilerini veriyor.

Otomatik Başlayan Hizmetler

"wmic service where StartMode="Auto" get Name, State"

Bu komut otomatik olarak başlatılması ayarlanmış hizmetleri listeliyor. Burada hizmetin adı ve hizmetin mevcut durumu sorgulanmış.

Gruplar Hakkında Bilgi

"wmic group get Caption, InstallDate, LocalAccount, Domain, SID, Status"

Bu komut bilgisayarda tanımlı gruplar hakkında bilgi veriyor. Sırasıyla: Grup adı, oluşturulma tarihi, yerel hesap olup olmadığı, bir domaine ait olup olmadığı, grup için güvenlik kimliği( Security Identifier) ve son olarak grup durumu gibi bilgileri listeliyor.

“svchost.exe” Gibi Şüpheli Bir İşlemi Analiz Etme

Eğer bir saldırgan bir işlemi, örneğin “svchost.exe”yi manipüle etmişse, bu işlemi tespit etmek ve detaylı incelemek isteyebiliriz. Bunu yapmak için şu komutu kullanabiliriz.

"wmic process where (Name='svchost.exe') get name, processid, parentprocessid, executablepath" 

Bu komut, svchost.exe işleminin ID’si, hangi işlem tarafından başlatıldığı (parent process), ve dosyanın tam yolu gibi bilgileri gösterir. Yani, svchost.exe’nin hangi programdan geldiğini ve sistemde nasıl hareket ettiğini daha net görebiliriz.

Anlık Oturum Açmış Kullanıcıları Listeleme

Bilgisayara şu an kimlerin giriş yaptığını görmek istiyorsak şu komutla o bilgiyi bulabiliriz;

“wmic computersystem get name, username”

Bu komut bilgisayarın adı ve o bilgisayarda oturum açmış kullanıcı adlarını listeliyor. Hangi kullanıcıların aktif olduğunu hızlıca görmek işimize yarayabilir.

Sistemdeki Tüm Kullanıcı Hesaplarını Listeleme

Eğer bilgisayarda tüm kullanıcı hesaplarını ve bunların özelliklerini görmek istiyorsak, şu komutla detaylı bir liste alabiliriz;

“wmic useraccount get Name, Domain, AccountType, InstallDate, SID, Lockout”

Bu komut tüm kullanıcı hesaplarının adlarını, hangi domaine bağlı olduklarını, hesap türlerini, hesap kurulum tarihlerini, güvenlik kimliklerini (SID) ve hesapların kilitli olup olmadığını gösteriyor.

Pagefile.sys Dosyasının Yerini Bulma

Windows’ta sanal bellek için kullanılan pagefile.sys dosyasının yerini öğrenmek istiyorsan, şu komutu kullanabiliriz;

“wmic pagefile get Caption, CurrentUsage, Status, TempPageFile”

Peki nedir bu Pagefile.sys?

Pagefile.sys, Windows’un sanal bellek dosyası aslında. RAM dolduğunda, işletim sistemi geçici verileri buraya kaydediyor. Yani, bilgisayarın RAM’inin yedeği gibi çalışıyor. Olay müdahalesinde nasıl kullanılıyor diye soracak olursak ise bir kaç maddede cevaplayabiliriz;

-Saldırganlar bir zararlıyı çalıştırdığında veriler bu dosyaya yazılabilir. Bu dosya sistemdeki şifreli bilgiler veya gizli veriler hakkında ipuçları verebilir.

-Eğer sistem çökse pagefile.sys dosyasına kaydedilen veriler sistemin son durumuyla ilgili bilgi sunabilir.

-Zararlı yazılımlar RAM’de çalışırken izlerini pagefile.sys dosyasına bırakabilir. Bu da kötü amaçlı yazılımların izini sürmek için önemli olabilir.

Ya da saldırganlar bu dosyayı kullanarak izlerini gizlemeye çalışabilirler.

Etkinleştirilmiş Yerel Hesapları Bulma

Eğer bilgisayardaki aktif yerel hesapları görmek istiyorsak bu komutu kullanabiliriz;

“wmic useraccount WHERE “Disabled=0 AND LocalAccount=1″ GET Name”

Bu komut, etkin olan yerel kullanıcı hesaplarının listesini çıkarıyor. Yani, bilgisayardaki misafir hesabı ya da başka yerel hesaplar aktif mi bunu hızlıca görebiliriz.

Kullanıcıların Giriş Bilgilerini Görmek

Eğer bir kullanıcının geçmişteki giriş bilgilerini, parola yaşı gibi detayları görmek istersek şu komutları kullanabiliriz;

“wmic netlogin get Name, Fullname, ScriptPath, Profile, UserID, NumberOfLogons, PasswordAge, LogonServer, HomeDirectory, PrimaryGroupID”

Bu komut, kullanıcıların giriş tarihleri, parola yaşları ve bazı diğer login bilgilerini toplar. Yani, bir kullanıcının ne kadar süreyle oturum açtığını ve sistemde ne kadar aktif olduğunu görebiliriz.

Sistem Hesapları Hakkında Bilgi Alma

Eğer bilgisayarındaki sistem hesaplarıyla ilgili bilgi almak istresek şunu kullanabiliriz;

“wmic sysaccount get Caption, Domain, Name, SID, SIDType, Status”

Bu komut, sistemdeki özel hesaplarla ilgili bilgileri verir. Örneğin administrator gibi sistem hesaplarının kimlik bilgilerini ve durumlarını inceleyebilirsin.

Okuduğunuz için teşekkürler.

Kaynakça : Buraya tıklayarak gidebilirsiniz.

Posted in Siber Güvenlik Araçları, Siber Saldırılar, Veri Güvenliği, Zararlı YazılımlarTags:
1 Comment
  • Reyyo

    Harika bir yazı olmuş, guide niteliğinde bilgiler içeriyor .Ellerine sağlık👌🏻

    7:38 am Kasım 13, 2024 Yanıtla
Write a comment