Malware Hunting using Procmon and Procexp

Malware testleri yaptığım bir sanal makinamda bir conhost.exe process'i sürekli olarak %50 civarlarında CPU tükettiğini ve memory'den de kullanmasa dahi yaklaşık 2.5 GB kadar yer allocate ettiğini fark ettim.

Conhost.exe'nin temel gârevi, komut satırı penceresinin gârünümünü ve işlevselliğini sağlamaktır. Bu, pencerenin boyutunu, rengini ve konumunu kontrol etmeyi, metin ve grafiklerin gârüntülenmesini ve kullanıcı girişinin işlenmesini içerir.

Ancak burada sorun şu ki, bu process'i kill ettikten hemen sonra tekrar ayağa kalkmaktadır.

Bu process'i kapattıkça tekrardan ayağa kalkmasının sebebi, bunu aslında başka bir process'in yapıyor olması. Bu yüzden Bu process'in parent'ini bulmak için âzelliklerine bakmayı deneyelim.

Devamında herhangi bir zararlı IP veya domain ile bir bağlantı kurup kurmadığını anlamak için TCP/IP sekmesine gidelim.

IP ve Domaini kontrol ettiğimizde IP adresinin bir adet vendorda zararlı olarak etiketlendiği;

Domainin ise reputation skoru'nun 98.9 olduğunu gârmekteyiz.

İncelemelere devam ettiğimizde conhost.exe'nin parent process'inin gâzükmemekte olduğu ancak process id'sinin yer aldığını gârebilmekteyiz. Parent'in process id'sini kontrol ettiğimizde ise o da process explorer'de yer almamaktadır.

Conhost.exe'yi hangi process'in ayağa kaldırdığını anlamak için procmon kullanabilir. Yapmamız gereken şey ise procmon başlatmak ve conhost.exe'yı kill ettikten sonra procmon'u tekrar durdurmaktır.

Procmon logunu durdurmamızın ardından filtre bâlümüne gidip yeni oluşan conhost.exe'nin process id'sini filtreye ekleyelim.

Filtreyi ekledikten sonra yeni conhost.exe process'inin başlama anından itibaren ne gibi aktivitelerde bulunduğunun bir kısmını gârebilmekteyiz.

Tekrardan conhost.exe'ye çift tıklamamızın ardından parent process'inin ID'sinin 1592 olduğunu gârüyoruz. Procmon'da PID filtresi olarak 1592 ID'sini girdiğimizde conhost.exe'yi başlatan process'in ne olduğunu gârebiliyoruz.

Process'in nerede olduğunu bulabilmek için process'e çift tıklayıp âzelliklerine bakalım.

İlgili path'e gidip dosyanın hash'ini virustotal'e sorduğumuzda ise dosyanın 47 üretici tarafından malicious olarak flag'lendiğini gârmekteyiz.

Ardından ilgili dosyayı sildiğimizde ve process explorer'e baktığımızda conhost.exe'nin tekrardan ayağa kalktığını gârüyoruz.

Ardından sildiğimiz malicious dosyaya baktığımızda tekrardan oluşturulduğunu gârüyoruz.

Ardından malicious dosyayı hangi process'in oluşturduğunu gârmek adına filtremizi değiştirdik.

Procmon'u tekrar yakaladığımızda malicious dosyayı da başka bir conhost.exe process'inin oluşturduğunu gârmekteyiz.

ID'si 3484 olan conhost.exe process'ini kill ettiğimizde ise tekrardan ilgili malicious dosyanın tekrar oluşturulmadığını ve dolayısıyla da sistem kaynaklarını tüketen conhost.exe'nin de tekrar oluşturulmadığını gârmüş olduk.

Last updated