Bellek (RAM) Analizi ve Volatility Framework
Çalışan bir sistemin belleğinden process, ağ bağlantısı ve zararlı yazılım izlerinin çıkarılması.
Bellek adli bilişimi (memory forensics), bir bilgisayarın RAM'inin dondurulmuş bir anlık görüntüsünü (snapshot) analiz ederek, disk üzerinde asla görünmeyecek bilgileri ortaya çıkarma disiplinidir — çalışan process'ler, açık ağ bağlantıları, şifre çözülmüş veriler, hatta bazı dosyasız (fileless) zararlı yazılımların tamamı sadece bellekte bulunabilir.
Neden Bellek Analizi Vazgeçilmez?
Modern zararlı yazılımların önemli bir kısmı, disk üzerinde iz bırakmamak için tamamen bellekte çalışır (fileless malware) veya process injection teknikleriyle meşru bir process'in belleğine kendini gizler. Bu tür tehditler, sadece disk imajı analiziyle asla tespit edilemez — bellek analizi zorunlu hâle gelir.
Volatility Framework: Temel Komutlar
Volatility, açık kaynaklı ve sektör standardı hâline gelmiş bir bellek analiz çerçevesidir. Temel iş akışı şu şekildedir:
# Bellek imajının işletim sistemi profilini/sembol tablosunu belirleme
volatility3 -f memory.raw windows.info
# Çalışan process listesi (process listesi bağlantılarını gösterir)
volatility3 -f memory.raw windows.pslist
# Gizlenmiş/unlinked process'leri tespit etme (pslist'in kaçırdığı process'ler)
volatility3 -f memory.raw windows.psscan
# Ağ bağlantılarını listeleme
volatility3 -f memory.raw windows.netscan
# Şüpheli/enjekte edilmiş kod bölgelerini tarama
volatility3 -f memory.raw windows.malfind
pslist ile psscan Arasındaki Kritik Fark
Bu iki komut arasındaki fark, bellek analizinin en öğretici noktalarından biridir:
- pslist: İşletim sisteminin process'leri takip etmek için kullandığı bağlı listeyi (doubly-linked list,
EPROCESSyapıları) takip ederek çalışan process'leri listeler. - psscan: Bellekte
EPROCESSyapısına benzeyen tüm bellek bloklarını tarar, bağlı listeye güvenmez.
Bazı gelişmiş zararlı yazılımlar/rootkit'ler, kendi process'lerini bu bağlı listeden "unlink" ederek (DKOM - Direct Kernel Object Manipulation tekniğiyle) pslist'ten görünmez hâle gelebilir. Ancak process'in kendisi hâlâ bellekte fiziksel olarak durduğu için psscan onu yine de bulabilir. pslist'te olmayan ama psscan'de görünen bir process, gizlenmeye çalışılan bir sürecin güçlü bir göstergesidir.
Pratik Senaryo
Bir kurumsal ağda şüpheli ağ trafiği fark ediliyor ama etkilenen sunucunun diskinde hiçbir zararlı dosya bulunamıyor. Olay müdahale ekibi, sunucunun RAM'ini canlıyken imajlıyor (sistemi kapatmadan). Volatility ile windows.pslist çalıştırıldığında hiçbir şüpheli process görünmüyor, ancak windows.psscan çalıştırıldığında pslist'te hiç görünmeyen, ismi meşru bir Windows servisini taklit eden (ama farklı bir dizinden çalışan) bir process ortaya çıkıyor. windows.malfind komutu bu process'in belleğinde, normalde çalıştırılabilir olmaması gereken bir bellek bölgesinde gömülü kod (shellcode) tespit ediyor — bu, klasik bir process hollowing/injection saldırısının imzasıdır. Bu process disk üzerinde hiçbir iz bırakmadığı için, sadece bellek analizi bu tehdidi ortaya çıkarabildi.
Canlı Bellek İmajlama Araçları
- WinPMem / Magnet RAM Capture: Windows sistemlerde canlı bellek imajı almak için kullanılır.
- LiME (Linux Memory Extractor): Linux sistemler için bir çekirdek modülü olarak yüklenip bellek imajı alır.
Bu makale, bellek adli bilişiminin orta-ileri seviye teknik bir özetidir; SiberCrew ekibi tarafından hazırlanmış özgün içeriktir.