Yusuf Can Çakır tarafından yazılmıştır.
Merhabalar herkese, geçen bölümde Lab ortamının kurmuştuk. Şimdi de bir örnek üzerinden malware dinamik analizini gerçekleştirelim. Sample’ı sizlerle paylaşacağım fakat belirtmek isterim ki malware’ı bilgisayarınızda çalıştırmayınız. Lab ortamında test ediniz.
Malware Sample: İndirme Linki
Önceki bölümde INetSim konfigürasyonlarını ve FakeDNS‘in kullanımını göstermiştim. İki aracı tekrardan Remnux dağıtımında çalıştıralım.
FakeDNS ve INetSim çalıştırma
Windows(malware’ı açacağımız makine) makinemizde Process Explorer , Process Monitor ve WireShark araçlarını çalıştıralım.
Procmon ve Process Explorer çalıştırma
Sizlere birazcık bu araçlardan bahsetmek istiyorum.
Process Monitor(Procmon) aracındaki filtreleme özelliği sayesinde malware’ın davranışsal analizini rahatça yapabileceğiz. Procmon’da Filter > Filter yaparak veya CTRL + L kombinasyonu ile filtreleme ekranını açabiliriz.
Procmon Filtreleme
Buradaki Architecture işletim sisteminin mimarasini, Operation yapılan proesdürü, PID süreç ID değerini, Process Name sürecin ismini belirtmek için kullanılmaktadır. Process makinenizde çalışan uygulamalara söylenmektedir. Örnek verecek olursak, bir exe’yi veya farklı bir dosya türünü çalıştırdığınızda arka tarafta bir process başlar. Thread ise process’lerin alt kısmında işleyen yapılardır. Her process’in kendine ait bir numarası bulunmalıdır ki işletim sistemi neyin ne olduğunu anlayabilsin. Bu numaralara ise PID denir.
Procmon Filtre Contains
Filtre kutucuğundaki orta kısım da bulunan kısma tıklarsanız bir combobox çıkacaktır. Buradaki kısımlara da değinelim, is kullanılırsa kendisinden sonra seçilen seçeneğin aynısını, contains kendisinden sonra seçilen seçeneği, begin with kendisinden sonraki opsiyonlar ile başlayanı ve son olarak ends with kendinden sonra gelen opsiyonla biten çıktıları listeler.
Ağda oluşan network trafiğini, grafik arayüzünde bizlere göstermeye yaramaktadır. Ağda oluşan birçok isteği yakalayıp, anlık olarak bizlere gösterir. Ayrıca ağdaki oluşan trafiği kaydedip, sonrasında analiz edebilirsiniz.
Malware’ı çalıştırmadan önce bütün analiz araçlarımızı açtığımızdan emin olalım. Araçlarımız tam ise malware’ı çalıştıralım. Procmon aracında Filter kısmında yalnızca shell.exe malware’ı ile ilgili işlemleri görmek için filtreleme yapılmıştır.
Malware shell.exe Procmon filtreleme
Resimden de anlaşılacağı gibi malware FTP bağlantısı ile sunucuya bağlanmıştır.
Malware FTP bağlantısı
Malware’ın farklı bağlantılarını da öğrenmek için Filter kısmına gelerek Operation – contains – TCP Disconnect yapmamız yeterlidir.
Malware Procmon Operation ve Contains Filtreleme
Malware’ın açmaya çalıştığı bağlantılar aşağıdaki gibidir fakat malware karşı taraftan bir bağlantı alamadığı için bağlantı işlemleri yarıda kalmıştır. Malware FTP, HTTP ve HTTPS protokollerini de kullanmıştır.
Malware FTP, HTTP ve HTTPS bağlantısı
Haydi gelin bir de WireShark’a bakalım. Biz FTP bağlantısına bakacağımız için filreleme kısmına ftp yazmamız yeterli olacaktır.
Wireshark FTP filtreleme
Önemli bir husus var ki Procmon ve Process Explorer araçları sayesinde hangi protokol filtrelenecek öğrendik. FTP trafiğini incelediğimizde ise FTP sunucusunun kullanıcı adı ve şifre bilgilerine ulaşabiliriz. Bunun içinde oluşan pakete sağ tıklayıp > Follow > TCP stream dememiz yeterlidir.
Wireshark FTP follow ile inceleme
Gördüğünüz gibi FTP sunucusundaki kullanıcı adı ve şifre: pwnlab.me:we_are_starting
Wireshark FTP Bilgiler
Remnux’a döndüğümüzde, FakeDNS ile malware’ın gitmeye çalıştığı sunucu bilgilerine erişebiliriz.
FakeDNS sunucu bilgileri
INetSim aracına baktığımızda FTP sunucu bilgileri burada da çıktı olarak verilmiştir.
Remnux INetSim inceleme-1
Remnux INetSim inceleme-2
Analizimiz bitti ancak şöyle bir durum var, malware belli bir kısma kadar çalıştı çünkü biz fake sunucu açıp bütün istekleri Remnux’a yönlendirdik. Malware bir süre sonra çalışmayı durdurdu. Malware istekleri tam olarak alabilseydi, komut satırında işlemler yapabilirdi ancak istekleri hava da kaldığı için herhangi bir işlem yapmadı. Sizlerde verdiğim malware sample’ı ile DNS ayarlarından Remnux’un IP adresini silerek deneyebilirsiniz
Bu bölüm bu kadardı, diğer bölümlerde görüşmek üzere, sağlıcakla kalın.
Yararlanılan Kaynak: SOME’ler İçin Ağ ve Malware Analizi
[TR] Malware Dinamik Analizi | Part 2
Merhabalar herkese, geçen bölümde Lab ortamının kurmuştuk. Şimdi de bir örnek üzerinden malware dinamik analizini gerçekleştirelim. Sample’ı sizlerle paylaşacağım fakat belirtmek isterim ki malware’ı bilgisayarınızda çalıştırmayınız. Lab ortamında test ediniz.
Malware Sample: İndirme Linki
Önceki bölümde INetSim konfigürasyonlarını ve FakeDNS‘in kullanımını göstermiştim. İki aracı tekrardan Remnux dağıtımında çalıştıralım.
FakeDNS ve INetSim çalıştırma
Windows(malware’ı açacağımız makine) makinemizde Process Explorer , Process Monitor ve WireShark araçlarını çalıştıralım.
Procmon ve Process Explorer çalıştırma
Sizlere birazcık bu araçlardan bahsetmek istiyorum.
Process Monitor
Process Monitor(Procmon) aracındaki filtreleme özelliği sayesinde malware’ın davranışsal analizini rahatça yapabileceğiz. Procmon’da Filter > Filter yaparak veya CTRL + L kombinasyonu ile filtreleme ekranını açabiliriz.
Procmon Filtreleme
Buradaki Architecture işletim sisteminin mimarasini, Operation yapılan proesdürü, PID süreç ID değerini, Process Name sürecin ismini belirtmek için kullanılmaktadır. Process makinenizde çalışan uygulamalara söylenmektedir. Örnek verecek olursak, bir exe’yi veya farklı bir dosya türünü çalıştırdığınızda arka tarafta bir process başlar. Thread ise process’lerin alt kısmında işleyen yapılardır. Her process’in kendine ait bir numarası bulunmalıdır ki işletim sistemi neyin ne olduğunu anlayabilsin. Bu numaralara ise PID denir.
Procmon Filtre Contains
Filtre kutucuğundaki orta kısım da bulunan kısma tıklarsanız bir combobox çıkacaktır. Buradaki kısımlara da değinelim, is kullanılırsa kendisinden sonra seçilen seçeneğin aynısını, contains kendisinden sonra seçilen seçeneği, begin with kendisinden sonraki opsiyonlar ile başlayanı ve son olarak ends with kendinden sonra gelen opsiyonla biten çıktıları listeler.
Wireshark
Ağda oluşan network trafiğini, grafik arayüzünde bizlere göstermeye yaramaktadır. Ağda oluşan birçok isteği yakalayıp, anlık olarak bizlere gösterir. Ayrıca ağdaki oluşan trafiği kaydedip, sonrasında analiz edebilirsiniz.
Dinamik Analiz – 1
Malware’ı çalıştırmadan önce bütün analiz araçlarımızı açtığımızdan emin olalım. Araçlarımız tam ise malware’ı çalıştıralım. Procmon aracında Filter kısmında yalnızca shell.exe malware’ı ile ilgili işlemleri görmek için filtreleme yapılmıştır.
Malware shell.exe Procmon filtreleme
Resimden de anlaşılacağı gibi malware FTP bağlantısı ile sunucuya bağlanmıştır.
Malware FTP bağlantısı
Malware’ın farklı bağlantılarını da öğrenmek için Filter kısmına gelerek Operation – contains – TCP Disconnect yapmamız yeterlidir.
Malware Procmon Operation ve Contains Filtreleme
Malware’ın açmaya çalıştığı bağlantılar aşağıdaki gibidir fakat malware karşı taraftan bir bağlantı alamadığı için bağlantı işlemleri yarıda kalmıştır. Malware FTP, HTTP ve HTTPS protokollerini de kullanmıştır.
Malware FTP, HTTP ve HTTPS bağlantısı
Haydi gelin bir de WireShark’a bakalım. Biz FTP bağlantısına bakacağımız için filreleme kısmına ftp yazmamız yeterli olacaktır.
Wireshark FTP filtreleme
Önemli bir husus var ki Procmon ve Process Explorer araçları sayesinde hangi protokol filtrelenecek öğrendik. FTP trafiğini incelediğimizde ise FTP sunucusunun kullanıcı adı ve şifre bilgilerine ulaşabiliriz. Bunun içinde oluşan pakete sağ tıklayıp > Follow > TCP stream dememiz yeterlidir.
Wireshark FTP follow ile inceleme
Gördüğünüz gibi FTP sunucusundaki kullanıcı adı ve şifre: pwnlab.me:we_are_starting
Wireshark FTP Bilgiler
Remnux’a döndüğümüzde, FakeDNS ile malware’ın gitmeye çalıştığı sunucu bilgilerine erişebiliriz.
FakeDNS sunucu bilgileri
INetSim aracına baktığımızda FTP sunucu bilgileri burada da çıktı olarak verilmiştir.
Remnux INetSim inceleme-1
Remnux INetSim inceleme-2
Analiz Bitti
Analizimiz bitti ancak şöyle bir durum var, malware belli bir kısma kadar çalıştı çünkü biz fake sunucu açıp bütün istekleri Remnux’a yönlendirdik. Malware bir süre sonra çalışmayı durdurdu. Malware istekleri tam olarak alabilseydi, komut satırında işlemler yapabilirdi ancak istekleri hava da kaldığı için herhangi bir işlem yapmadı. Sizlerde verdiğim malware sample’ı ile DNS ayarlarından Remnux’un IP adresini silerek deneyebilirsiniz
Bu bölüm bu kadardı, diğer bölümlerde görüşmek üzere, sağlıcakla kalın.
Yararlanılan Kaynak: SOME’ler İçin Ağ ve Malware Analizi
Moderatör tarafında düzenlendi: