bilgisayar Üzerinde zararlı yazılım analizi · • grr –google rapid response...
TRANSCRIPT
TÜBİTAK BİLGEMSiber Güvenlik Enstitüsü
12 Ocak 2016
Bilgisayar Üzerinde Zararlı Yazılım Analizi
Zararlı Yazılım Analiz ve Mücadele Merkezi
Bilgisayar ForensikAnalizleri
ZararlıYazılım
Analizleri
Bilgisayar Analizleri
2
Dosya Zamanı Anomalileri
MFT Anomalileri
Beyaz Liste - Hash Sorgulama
Manuel Hazıfa Analizi
Zaman Çizelgesi ile Analiz
Log Analizi
Entropy Analizi
Sistemde Kalıcılık Tespiti
Otomatik Hafıza Analizi
Ele Geçirme Göstergeleri (IOC)
Anti-Virus Taramaları
Veri toplama
Bilgisayar Analizleri | Analiz Aşamaları
3
Otomatik
Yarı-
Otomatik
Manuel
~ 300.000 Dosya
~ 1- 4 Dosya
*https://blogs.sans.org/computer-forensics/files/2012/06/SANS-Digital-Forensics-and-Incident-Response-Poster-2012.pdf
Bilgisayar Analizleri | Verileri İndeksleme
4
Bilgisayar Analizleri | Hafıza Analizi
Hafıza Analizi Aşamaları
• Sahte proseslerin tespiti
• Proses DLL’lerinin ve handle’ların
analizi
• Şüpheli ağ bağlantılarının analizi
• Kod enjeksiyonu tespiti
• Rootkit tespiti
• Şüpheli proses ve driverların
çekilmesi
5
Bilgisayar Analizleri | Hafıza Analizi
6
Volatility Framework / Evolve
Bilgisayar Analizleri | Veri Toplama ve Analiz Araçları
• GRR – Google Rapid Response
(Açık kaynaklı)
– Büyük ölçekli analizler içinmerkezi sistem
– Registry, dosya sistemi, hafıza veproses analizleri yapılabilir
– Linux, Mac OS X, Windows istemcidesteği
– Geliştirilebilir kurallar
• Mandiant Redline (Ücretsiz)
– OpenIOC veri formatı desteği
– Registry, dosya sistemi, hafıza veproses analizleri yapılabilir
– “Malware Risk Index” skorlaması
– Windows istemci desteği
7
Bilgisayar Analizleri | Ele Geçirilme Göstergesi (IoC)
Ele Geçirilme Göstergesi (IoC) nedir ?
• Ağda veya işletim sisteminde görülen ve izinsiz girişe işaret eden izler
• Dosya sistemi, hafıza, çalışan proseslerle ilgili izler
• Örnekler
– IP Adresi / Alan Adı– URL / URI– HTTP User Agent– Dosya Özeti, vs..
• Statik ve dinamiksel analizler sonucu oluşturulur
8
Bilgisayar Analizleri | Ele Geçirilme Göstergesi (IoC)
9
• NATO MISP
• IOCbucket
• APT analiz raporları
IoC Kaynak Havuzu
• Tehdit karakteristiğininstandartlaşması
• Saldırganın metodolojisi• Kurumsal yapılarda tehditin tespiti
/ analizi
IoC neden var ?
• OpenIOC
– Mandiant, ücretsiz
• IETF Standartları - IODEF & RID
– SOMEler tarafından, SOMEler için
• CyboX, STIX, and TAXII
– MITRE - ABD
• MACCSA
– Hala erken bir aşamada
IoC standartları
Bilgisayar Analizleri | Ele Geçirilme Göstergesi (IoC)
10
* http://openioc.org/resources/An_Introduction_to_OpenIOC.pdf
Bilgisayar Analizleri | Ele Geçirilme Göstergesi (IoC)
11
IOCEditor
Bilgisayar Analizleri | Ele Geçirilme Göstergesi (IoC)
12
IOCFinder
Bilgisayar Analizleri | YARA Kuralları
• Zararlı yazılımların davranışlarının
tanımlanması ve sınıflandırılması
• Pattern/string/imza tabanlı tanımlama
• Dosya sistemi taranması için yazılım
desteği
• Volatility ile hafıza imajı içerisinde
tarama
• Moloch ile ağ trafiğinde tarama
• Kurumsal ürünlerle entegrasyon
• Windows, Linux and Mac OS X
platform desteği
13
• *http://plusvic.github.io/yara/
Bilgisayar Analizleri | YARA Kuralları
14
Bilgisayar Analizleri | Ağ Bağlantıları
15
İnternet bağlantıları kontrolü (Ports, DNSCache, Route)
Belirli ülkelerle kurulan bağlantılar
•Rusya, Çin, Hollanda vs
Rastgele alan adına sahip adreslere kurulan bağlantılar
Doğrudan IP adresine kurulan bağlantılar
Fazla uzun adreslere kurulan bağlantılar
Şüpheli port ve protokoller
•80 ve 443 tcp portları dışındaki bağlantılar
Kara listede olan IP adresi/alan adı ile kurulan bağlantılar
Bilgisayar Analizleri | Ağ Bağlantıları
16
İnternet bağlantıları kontrolü (Threatscore)
Sandbox Analizi
17
Dosya Beyaz Listeleri
18
Dosya/uygulama beyaz liste denetimi
• Bit9 File Advisor, Kaspersky Application Advisor vb.
Windows Olay Kaydı
Ne
• Olay ID numarası
• Olay kategorisi
• Detay
Nerede
• IP adresi
• Bilgisayar adı
Ne zaman
• Zaman damgası
Nasıl
• Erişilen dosya
• Erişilen dizin
• Erişilen yazıcı
• Servisler
Kim
• Kullanıcı hesabı
• Detay
Neden
• Analist yorumu
Windows Olay Kaydı
20
• Kullanıcı Takibi
Windows Olay Kaydı | Önemli Kayıt Numaraları
21
Windows200/XP
Vista sonrası
Detay
528 4624 Başarılı girişType 2 - İnteraktifType 3 – Network (Pass the Hash)Type 4 - Batch (Zamanlanmış görev) Type 5 - ServisType 10 – Terminal, RDP
529 4625 - Bilinmeyen kullanıcı adı ya da yanlış parola denemesi. Type 3 kaba-kuvvet saldırının göstergesi
538 4634 Kullanıcı çıkış
• Kullanıcı değişiklikleri
Windows Olay Kaydı | Önemli Kayıt Numaraları
22
Windows200/XP
Vista sonrası
Detay
627 4723 Parola değiştirme girişimi
628 4724 Parola ayarlama
624 4720 Kullanıcı hesabı oluşturuldu
626 4722 Kullanıcı aktif edildi
642 4738 Kullanıcı hesabı değişti
629 4725 Kullanıcı hesabı devre dışı bırakıldı
630 4726 Kullanıcı hesabı silindi
Windows Olay Kaydı | Önemli Kayıt Numaraları
23
Windows200/XP
Vista sonrası
Detay
7034 7034 Servisin crash olması
7035 7035 Servisi başlatma veya durdurma isteği yollama
7036 7036 Servis başladı yada durduruldu
7040 7040 Servisin tipi değişti (Boot | On Request | Disabled)
• Şüpheli Servisler
• Proses
Windows200/XP
Vista sonrası
Detay
592 4688 Proses Oluştu
Windows Olay Kaydı | Önemli Kayıt Numaraları
24
Windows200/XP
Vista sonrası
Detay
1033 1033 Uygulama kurulumu tamamlandı
1034 1034 Uygulama kaldırma tamamlandı
11707 11707 Uygulama kurulumu başarıyla tamamlandı
11708 11708 Uygulama kurulumu tamamlanamadı
11724 11724 Uygulama kaldırma başarıyla tamamlandı
• Uygulama Kurulumu
• Windows Hata Raporlama (WER)
Windows200/XP
Vista sonrası
Detay
1001 Windows hata rapolama kaydı
• Olay Kaydının Silinmesi
• Sistemde Kalıcılığın İncelenmesi
Windows Olay Kaydı | Önemli Kayıt Numaraları
25
Windows200/XP
Vista sonrası
Detay
517 1102 Olay kayıtları silindi
Windows200/XP
Vista sonrası
Detay
601 4697 Yeni servis oluştu
602 4698 Yeni zamanlanmış görev oluştu
567 4657 Kayıt defteri değeri değişti- Başlangıçta otomatik çalışan programların girildiği kayıt defteri alanlarındaki değişiklikler bu ID altından bakılabilir.
Yetenekleri
• Çalışan proseslerin alt prosesleriyle
birlikte komut satırı aktivitelerinin
izlenmesi
• Proses imaj dosyasının hash’inin
loglanması
• Sürücülere yüklenen dll dosyalarının
imza ve hash bilgilerinin loglanması
• Çalışan proses’in kaynak IP adresi, hedef
IP adresi, port numarası gibi ağ
aktivitilerinin loglanması
• Dosya oluşturma zamanlarının izlenmesi
• Kernel-mode aktivitelerinin izlenmesi
26
Windows Olay Kaydı | Sysmon
Event ID 1: Process creation
Event ID 2: A process changed a file creation time
Event ID 3: Network connection
Event ID 4: Sysmon service state changed
Event ID 5: Process terminated
Event ID 6: Driver loaded
Event ID 7: Image loaded
Event ID 8: CreateRemoteThread
Event ID 255: Error
Windows Olay Kaydı | Sysmon | Olay Kayıt Türleri
27
Çalışma Kayıtları
Çalışma Kayıtları
29
Kayıt çeşitleri
Execution
Prefetch
MUICache
ShimCacheLegacyCache
UserAssistCache
Registry Hive Dizini
• %Windir%\System32\Config
• SAM
• SECURITY
• SYSTEM
• SOFTWARE
• DEFAULT
Registry Hive Yedek Dizini
• %Windir%\System32\Config\RegBack
• SAM
• SECURITY
• SYSTEM
• SOFTWARE
• DEFAULT
Çalışma Kayıtları | Windows Registry | Hive Dosyaları
30
Microsoft işletim sistemlerinde uygulama uyumluluklarınıntanımlanması için oluşturulur.
AppCompatCache dosya yolu, boyutu, son değiştirilme zamanı veson çalışma zamanı bilgilerini tutar.
ShimCache olarak da adlandırılır.
Sadece belli uzantılı dosyalar kaydedilir (exe, bat, dll)
Sistem kapanışında kayıt defteri kaydı güncellenir.
• XP işletim sistemlerinde;
• HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatibility\AppCompatCache
• Vista ve sonrası işletim sistemlerinde;
• HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\AppCompatCache\AppCompatCache
Konumu
Çalışma Kayıtları | AppCompatCache
31
AppCompatCache ile ilişkili dosya ve kayıtdefteri anahtarlarından veri çıkarır.
• https://github.com/mandiant/ShimCacheParser
İndirme bağlantısı:
• ShimCacheParser.py –i c:\test\SYSTEM –o c:\test\shimcache.txt
CSV formatında çıktı
Çalışma Kayıtları | AppCompatCache | ShimCacheParser.py
32
• rip.exe -r c:\test\win7\system -p appcompatcache
Çalışma Kayıtları | AppCompatCache | Regripper
33
Windows işletim sistemlerinde kabuk tarafından ayarlanan ve çalışan programın özelliklerini tanımlamak için oluşturulan bir kayıttır.
Kullanıcı yeni bir uygulama kurduğunda, Windows işletim sistemi tarafından uygulama çalıştırıldığında kullanılmak üzere çalıştırılır .exe dosyasının kaynakları MUICache log kaydında tutulur.
Uygulamanın ne zaman çalıştığı bilgisini de explorer.exe prosesi MUICache kaydına eklemektedir.
Çalışma Kayıtları | MuiCache
34
Konumu
• Windows XP, 2000, 2003 işletim sistemlerinde;
• HKCU\Software\Microsoft\Windows\ShellNoRoam\MUICache
• NTUSER.DAT
• Windows Vista, 7, 2008 işletim sistemlerinde;
• HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\Shell\MuiCache
• UserClass.dat
Çalışma Kayıtları | MuiCache
35
• Rip.exe –r c:\<>\UserClass.dat –p muicache
Çalışma Kayıtları | MuiCache
36
• Çift tıklanan kısa yollar
• Başlat menüsü aracılıyla çalıştırılan programlar
UserAssist kaydı Windows Explorer yoluyla açılan bağlantıları ve programları izlemektedir.
UserAssist kaydında son çalıştırılma zamanı, dosyanın kaç kez çalıştırıldığı bilgileri tutulmaktadır.
ROT-13 formatında kodlanmış (encoded) olarak saklanmaktadır.
Program çalıştırılma sayısı 6’dan başlamaktadır.
Çalışma Kayıtları | UserAssist
37
Konumu
• “HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\UserAssist\{GUID}\Count”
• NTUSER.dat
Çalışma Kayıtları | UserAssist
38
Prefetch dosyasında işletim sistemi tarafından kullanılmak üzere uygulamanın sonraki çalışmasında diskten belleğe yüklenme süresini optimize etmek için kullanılacak bilgiler bulunmaktadır.
Prefetch dizini 128 dosya ile sınırlıdır ve dosyalar .pf uzantılıdır.
Çalışma Kayıtları | Prefetch
39
• .pf dosyası oluşturulma zamanı genellikle programın ilk çalışma zamanını gösterir
• .pf dosyası son değiştirilme zamanı programın son çalışma zamanı
• Proses’in çalıştığı dosya yolu
• Proses’in son çalıştığı zaman
• Proses’in çalışma sayısı
• Çalışmaya başladığında erişilen dosyalar
Sağlanan bilgiler
• %SystemRoot%\Prefetch
Dosya yolu
• <Uygulama Adı>-<8 karakter hash>.pf
Dosya formatı
Çalışma Kayıtları | Prefetch
40
Çalışma Kayıtları | Genel Denetimler
41
Şüpheli program kontrolü
• Geçici ve önbellek dizinleri
• Kullanıcı profil dizinleri
• Tüm kullanıcı profili program dizinleri
• Recycle Bin
• Program Files
Şüpheli program yolları
• Rastgele (random) ve olağandışı dosya adına sahip dosyalar
• Normalin dışında farklı dosya yolunda bulunan Windows programları (C:\Windows\svchost.exe , vs. gibi)
Normal Olmayan Program Kontrolü
• Sertifikası doğrulanmayan veya olmayan programların tespiti
Sertifika Kontrolü
• Kendini gerçek program gibi göstermeye çalışan programların tespit edilebilmesi
• Aşağıdaki bilgilere göre programlar gruplanır
• Çalışma sayısı, program yolu vb.
Çalışma Geçmişinin Kümelenmesi
Çalışma Kayıtları | Genel Denetimler
42
Şüpheli programlar
Pwdump.exe Mimikatz.exe Wce At.exe
Psexec.exe / psexesvc.exe
ProcDump net.exe SC.EXE
XCOPY.EXE WMIC.EXE ROUTE.EXE TASKKILL.EXE
FTP.EXE BITSADMIN.EXE Ntdsutil Vssadmin
VSSOwn
Teşekkürler