Merhaba arkadaşlar, bu yazımda sizlere Windows cihazlarda bellek dökümü almayı ve imaj alındıktan sonra Volatility aracı ile aldığımız bu imajı analiz etmeyi anlatacağım. Bu işlemler genel olarak forensic yani adli bilişim uzmanları ve zararlı yazılım analiz uzmanları tarafından kullanılmaktadır. Bir hacker sisteme sızdıysa adli bişilim uzmanları olay müdahalesi için sistemin bellek dökümünü alır. Aldıkları bellek dökümü üzerinden saldırganın attığı adımları incelemeye çalışırlar. Zararlı yazılım analiz uzmanları ise obfuscate edilmiş, paketlenmiş zararlı yazılımlar, migrate edilmiş süreçleri (process), rootkitleri, çalıştıktan sonra kendini silen zararlıları vb. tespitini kolaylaştırmak için kullanılır.
Windows RAM bellek dökümünü nasıl alırız?
Windows sistemlerde Rap Capturer, Dumplt ve Memoryze vb. gibi araçlarla bellek dökümü alabilirsiniz. Ben bu yazıda Dumplt ile alacağım.
Dupmlt indirmek için tıklayınız.
Dumplt.exe’yi çalıştırdıktan sonra karşımıza çıkan soruya “y” diyerek devam edelim ve biraz bekledikten sonra Success yazısını gördüğümüzde işlemimiz tamamlanmış olacak. İmaj dosyamız bulunduğumuz dizine gelecektir.
Görüldüğü gibi bellek dökümü almak bu kadar kolay. Peki bu döküm bizim neyimize yarayacak derseniz burdan sonra Volatility aracı devreye giriyor.
Peki nedir bu Volatility aracı ?
Volatility aracı alınmış bellek dökümünün analizini yapmamızı sağlayan araçtır. Aracı yüklemek için github hesabından klonlamamız gerekli.
Github link: https://github.com/volatilityfoundation/volatility.git
Kali terminal ekranına
git clone https://github.com/volatilityfoundation/volatility.git
komutu girdiğimizde volatility klasörü oluşacaktır.
Aracı yükleme işlemimiz bu kadar. Şimdi aracın parametrelerini inceleyelim. (Burada kullanacağım RAM dökümü yukarıdaki ile aynı değildir.)
-f parametresi ile bellek dökümünün bulunduğu dizini ve adını araca söyleriz. Dökümün hangi işletim sisteminden alındığını, bellek döküm tarihi gibi bilgileri ise imageinfo parametresi ile görebiliriz.
Çalışan süreçleri görebilmek için öncelikle araca yukarıda tespit etmiş olduğumuz işletim sistemi bilgisini vermemiz gerekli. Yukarıda tespit ettiğim işletim sistemlerinden birini –profile (iki tre) parametresi ile araca bildiriyorum. Sonrasında pslist komutu ile o ana kadar çalışan süreçleri listeliyorum.
Süreçleri ağaç şeklinde de yani daha sade şekilde ekrana bastırabiliriz. Onun içinde pstree parametresini kullanırız.
İşletim sisteminin o an kullanmış olduğu DLL dosyalarını listelemek için dlllist parametresi kullanılır.
Saldırganın CMD ekranında hangi komutları kullandığını görebilmek için consoles parametresi kullanılabilir.
İşletim sistemine uzaktan açılan bağlantıları ve bu bağlantıları hangi süreçlerin (process) başlattığını görebilmemiz için connscan parametresini kullanabiliriz.
Buradan şunu anlıyoruz ki yukarıda görmüş olduğunuz uzaktan bağlantıları başlatan süreç 1340 PID değerine sahip olan süreçtir.
Ram üzerinde kayıtlı parolaları çekmek istersek hashdump komutunu kullanabiliriz.
İnternet Explorer geçmişini görmek istersek iehistory komutunu kullanabiliriz.
Evet gördüğünüz gibi bir saldırganın veya zararlı yazılımın işletim sistemi üzerinde nerelere gittiğini ve neler yaptığını Volatility aracı ile inceleyebiliyoruz.
Bir sonraki yazımda bir zararlı yazılımın bellek dökümünü inceleyip nerelere gittiğini, nereleri manipüle ettiğini analiz edeceğiz. Güvenli günler dilerim.