AsyncRAT’ın Açık Dizinler Aracılığıyla Bulaşma Taktikleri: Teknik Analiz


HERHANGİ BİR ÇALIŞMAEtkileşimli kötü amaçlı yazılım analizi ve tehdit istihbaratında lider olan , tarafından yazılan bir teknik analiz yayınladı. RacWatchin8872 AsyncRAT’ı içeren çok aşamalı saldırılarda kullanılan yeni tekniklerin belgelenmesi. Rapor, saldırganların AsyncRAT’ı dağıtmak için açık dizinlerden nasıl yararlandığını ayrıntılarıyla anlatıyor, bulaşma mekanizmalarını inceliyor ve bu kalıcı tehdidi tanımlamak ve azaltmak için uzlaşma göstergeleri (IOC’ler) sunuyor.

Genel Bakış

AsyncRAT, sistemlere gizlice sızmak ve saldırganlara virüslü cihazlar üzerinde uzaktan kontrol sağlamak için tasarlanmış bir tür Uzaktan Erişim Truva Atı (RAT) kötü amaçlı yazılımıdır. Genellikle casusluk, veri hırsızlığı ve güvenliği ihlal edilmiş sistemlerin manipülasyonu için kullanılır.

Son zamanlarda, her biri mağdurlara AsyncRAT dağıtmak ve bulaştırmak için benzersiz yöntemler kullanan iki açık dizin ortaya çıktı. Bu teknikler, bu kötü amaçlı yazılımın oluşturduğu kalıcı tehdidi ve çeşitli bulaşma stratejilerini vurgulamaktadır.

Teknik 1: Açık Dizin Yapısı Yoluyla Sızma

Dizini Aç

İnternete maruz kalan kötü amaçlı açık dizinleri araştırırken alışılmadık yapıya sahip bir dizin keşfettim.

Dizin aşağıdaki dosyaları içeriyordu:

Şekil 1 – Açık dizin yapısı

Txt dosyasının analizi

Metin dosyasının kapsamlı dizesi, karmaşık bir VBS komut dosyasını gizler. JPG dosyasını indirmek için kullanılacak metnin bölümlerini depolamak için rastgele değişkenler kullanır.

Şekil 2 – Gizlenmiş VBS kodu

Okumayı kolaylaştırmak için birkaç değişiklik yapmamız gerekiyor:

  1. Değişkenleri gerçek metinle değiştirin,

  2. Dosya yazmak veya indirmek için kullanılan değişkenler için sezgisel adlar kullanın.

Şekil 3 – Gizlemesi kaldırılmış VBS kodu

Şimdi VBS betiğinin bir XML dosyası oluşturduğunu görüyoruz. OMjRRRRRRRRRRRRRRRRRRvbK.xml bulunduğu yer C:KullanıcılarHerkese Açık. XML dosyasının içeriği, gizlenmiş JPG dosyasını indiren, kaydeden ve aynı dizine çıkaran bir PowerShell betiği içerir.

Çıkarıldıktan sonra süreç başka bir komut dosyasını çalıştırarak devam eder, TesKKKeLAvaYdAfbBS.vbs. Daha sonra hem XML hem de ZIP dosyalarını silerek temizler.

Şekil 4 – TesKKKeLAvaYdAfbBS.vbs karartılmış

Okumayı kolaylaştırmak için birkaç değişiklik yapmamız yeterli:

  1. Değişkenleri gerçek metinle değiştirin,

  2. Kullanılan değişkenler için sezgisel adlar kullanın,

  3. Sonuçtan bağımsız olarak aynı kodu çalıştıran tüm If İfadelerini silin.

Bu değişiklikleri yaparak 34 satırlık bir VBS betiğini daha basit, okunması daha kolay 6 satırlık bir sürüme dönüştürebiliriz.

Şekil 5 – TesKKKeLAvaYdAfbBS.vbs’yi temizleyin

ANY.RUN’un Etkileşimli Sandbox’ındaki kötü amaçlı yazılımları ücretsiz analiz edin →

Bat dosyasının analizi

BAT betiği de karmaşıktır ancak değişkenlerin içinde saklanan değerleri dikey olarak okuyarak amacını anlamak mümkündür.

Metin, ekran görüntüsü, yazılım, Multimedya yazılımı içeren bir resim Açıklama otomatik olarak oluşturulduMetin, ekran görüntüsü, yazılım, Multimedya yazılımı içeren bir resim Açıklama otomatik olarak oluşturuldu

Şekil 6 – KKKKKKllLavIOOOOotesAA.bat dosyası

Rolü PowerShell’i bir bilgi istemi penceresi olmadan yürütmektir. KiLOvBeRNdautESaatnENn.ps1’i çalıştırarak bir sonraki aşamayı başlatır.

PowerShell (PS1) dosyasının analizi

PS1 dosyası, her 2 dakikada bir UhLQoyDAMaCUTPaE.vbs’yi çalıştıran ‘tMicNet Work40’ adlı zamanlanmış bir görev oluşturan basit bir komut dosyasıdır.

Metin, ekran görüntüsü, Yazı tipi ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, Yazı tipi ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 7 – PowerShell tarafından oluşturulan zamanlanmış görev

İkinci VBS dosyasının analizi

UhLQoyDAMaCUTPaE.vbs, önceki VBS (TesKKKeLAvaYdAfbBS.vbs) ile aynı yapıya sahiptir, dolayısıyla betiğin okunmasını ve analiz edilmesini kolaylaştırmak için aynı tekniği kullanabiliriz.

Şekil 8 – UhLQoyDAMaCUTPaE.vbs karartılmış

Aynı tekniği kullanarak şu sonucu elde edeceğiz:

Otomatik olarak oluşturulan metin, ekran görüntüsü ve Yazı Tipi Açıklaması içeren bir resimOtomatik olarak oluşturulan metin, ekran görüntüsü ve Yazı Tipi Açıklaması içeren bir resim

Şekil 9 – UhLQoyDAMaCUTPaE.vbs’nin gizliliği kaldırıldı

İkinci BAT dosyasının analizi

aaaNOOTKiiiLAViiiiOOs.bat önceki BAT (KKKKKKllLavIOOOOOtesAA.bat) ile aynı yapıya sahiptir, dolayısıyla onu dikey olarak okuyarak dosyanın ne yaptığını anlayabiliriz.

Metin, ekran görüntüsü, yazılım ve web sitesini içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, yazılım ve web sitesini içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 10 – aaaNOOTKiiiLAViiiiOOs.bat

BAT dosyası bir Powershell dosyası olan son aşamayı yürütür.

Son Aşamanın Analizi

Son aşamada, kodun yorumlanmasını zorlaştırmak için değişken adları değiştirilerek karartılır. Değişkene doğrudan bir isim vermek yerine, kelimeyi parçalara ayırır, karıştırır ve ardından değişken adını yeniden oluşturmak için her konumu çağırırlar.

Analizi basitleştirmek için kodun yapısını benzer şekilde çözebiliriz, her parçayı izole ederek senaryoyu daha net ve anlaşılır hale getirebiliriz.

Metin, ekran görüntüsü ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 11 – Son aşamanın analizi

Kodun ilk kısmı, bir dize alan ve onu onaltılı sayıdan 32 bitlik bir tam sayıya dönüştüren bir işlevdir.

Otomatik olarak oluşturulan metin, ekran görüntüsü ve Yazı Tipi Açıklaması içeren bir resimOtomatik olarak oluşturulan metin, ekran görüntüsü ve Yazı Tipi Açıklaması içeren bir resim

Şekil 12 – Son aşamanın ilk kısmı

Kodun ikinci kısmı büyük dizelere sahip iki değişken içerir. Her iki dize de doğru değeri almak için değiştirme işlevini kullanır ve bunlar daha sonra işlenmek üzere ‘PARSer’a gönderilir.

Metin, ekran görüntüsü, Yazı tipi ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, Yazı tipi ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 13 – Son aşamanın ikinci kısmı

Son aşamanın son kısmı, dosyaları yürütmek için belleğe yüklemektir.

Otomatik olarak oluşturulan metin, ekran görüntüsü ve Yazı Tipi Açıklaması içeren bir resimOtomatik olarak oluşturulan metin, ekran görüntüsü ve Yazı Tipi Açıklaması içeren bir resim

Şekil 14 – Son aşamanın son kısmı

CyberChef’in yardımıyla, iki değişkenin içindeki değerleri almak ve gerçekte ne olduklarını görmek için son aşamanın ikinci bölümünde gösterilen tekniğin aynısını uygulayabiliriz:

İlk değişken bir DLL’dir:

Şekil 15 – AsyncRAT DLL

İkinci değişken bir EXE’dir:

Şekil 16 – AsyncRAT EXE

Her ikisini de ANY.RUN sanal alanında çalıştırarak C2, bağlantı noktaları, sertifikalar, mutex ve daha fazlası hakkında bilgi toplamak mümkündür.

Otomatik olarak oluşturulan metin, ekran görüntüsü, sayı ve Yazı Tipi Açıklamasını içeren bir resimOtomatik olarak oluşturulan metin, ekran görüntüsü, sayı ve Yazı Tipi Açıklamasını içeren bir resim

Şekil 17 – ANY.RUN sanal alanı tarafından oluşturulan metin raporu

– İkinci Teknik

Dizini Aç

İkinci açık dizinin yapısı, iki dosya içeren ilkini yansıtır: bir TXT dosyası ve bir JPG dosyası.

Daha kısa adı olan TXT dosyası bir VBS betiğidir, JPG dosyası ise bir PowerShell betiğini kılık değiştirerek gizler.

Otomatik olarak oluşturulan metin, ekran görüntüsü, yazılım ve Yazı Tipi Açıklaması içeren bir resimOtomatik olarak oluşturulan metin, ekran görüntüsü, yazılım ve Yazı Tipi Açıklaması içeren bir resim

Şekil 18 – Dizini aç

Txt dosyasının analizi

Bu durumda TXT dosyası, yorumları nedeniyle yorumlanması daha kolay olan bir VBS betiği içerir. Gizlenmiş JPG dosyasını indirmek için komutları saklayan bir dizi içerir.

Dikiş, desen, kumaş içeren bir resim Açıklama otomatik olarak oluşturulduDikiş, desen, kumaş içeren bir resim Açıklama otomatik olarak oluşturuldu

Şekil 19- VBS betiği

Komut dosyasını daha da basitleştirmek için diziyi silebilir ve tüm dizi değerlerini tek bir değişkende saklayabiliriz.

Metin, ekran görüntüsü, Yazı tipi ve dosya içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, Yazı tipi ve dosya içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 20 – VBS betiğini temizleme

Powershell dosyasının analizi

PowerShell dosyası 2 ana işlevi gerçekleştirir:

1.Dosya oluşturma ve içerik yazma – Bulaşma süreci için gerekli üç dosya oluşturur.

2.Zamanlanmış görev kurulumu – Tekrarlanan yürütmeyi sağlamak için bir görevi zamanlar ve böylece AsyncRAT bulaşmasını sürdürür.

Dosya Oluşturma

Powershell 3 dosya oluşturur:

İlk dosya:

Bu gizlenmiş dosya, AsyncRAT ile ilgili EXE ve DLL dosyalarının değerlerini doğrudan bellekte saklar ve yürütür.

Otomatik olarak oluşturulan metin, ekran görüntüsü, yazılım ve Yazı Tipi Açıklaması içeren bir resimOtomatik olarak oluşturulan metin, ekran görüntüsü, yazılım ve Yazı Tipi Açıklaması içeren bir resim

Şekil 21 – Powershell dosyası tarafından oluşturulan ilk dosya

Dosyayı temizledikten sonra, her iki değişkenden de ‘%&%’yi kaldırır, bunları onaltılı sayıya dönüştürür ve ardından bunları belleğe yükleyip çalıştırır.

Metin, ekran görüntüsü, Yazı tipi, sayı içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, Yazı tipi, sayı içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 22 – Dosyanın belleğe yüklenmesi

Yukarıda belirtilen işlemleri CyberChef üzerinden gerçekleştirdiğimizde aşağıdaki sonuçları elde ediyoruz:

Şekil 23 – AsyncRAT Exe

Şekil 24 – AsyncRAT DLL

İkinci dosya:

İkinci dosya PowerShell’i önceki dosyayı (roox.ps1) yürütmesi için tetikler.

Metin, ekran görüntüsü, Yazı tipi ve dosya içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, Yazı tipi ve dosya içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 25 – Powershell dosyası tarafından oluşturulan ikinci dosya

Üçüncü dosya:

Üçüncü ve son dosya, yürütmeyi kurbandan gizli tutarken önceki roox.bat dosyasını çalıştırır. Bu, enfeksiyon sürecinin görünmez kalmasını sağlar ve görünür göstergeleri en aza indirerek mağdurun devam eden etkinliği tespit etmesini zorlaştırır.

Metin, ekran görüntüsü, yazı tipi ve diyagram içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, yazı tipi ve diyagram içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 26- Powershell dosyasının oluşturduğu üçüncü dosya

Zamanlanmış Görev

thepiratMicrosoftEdgeUpdateTask olarak adlandırılan zamanlanmış görev, her iki dakikada bir roox.vbs dosyasını çalıştırarak enfeksiyonun devam etmesini sağlar.

Metin, ekran görüntüsü, Yazı tipi, sayı içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, Yazı tipi, sayı içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 27 – thepiratMicrosoftEdgeUpdateTask adlı zamanlanmış görev

ANY.RUN sanal alanı içinde PowerShell betiğini çalıştırdıktan sonra, dosyaların oluşturulduğunu ve yürütüldüğünü görebiliriz. Komuta ve kontrol (C2) altyapısı hakkında da daha fazla bilgi toplayabiliriz.

Metin, ekran görüntüsü, Yazı tipi ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklamaMetin, ekran görüntüsü, Yazı tipi ve yazılım içeren bir resim Otomatik olarak oluşturulan açıklama

Şekil 28- Powershell scripti ile oluşturulan dosyalar

Şekil 29 – C2 IP ve DNS

Çözüm

Araştırmamız, AsyncRAT’ı farklı yöntemlerle aktif olarak yayan iki IP’yi ortaya çıkardı. İlk yöntem, bulaşmayı tamamlamak için çeşitli dosya ve komut dosyalarının kullanıldığı çok aşamalı bir süreci izler.

ANY.RUN Interactive Sandbox’ın tüm PRO özelliklerini ücretsiz deneyin →

İkinci yöntem yalnızca iki aşamayı kullanır; bunlardan biri, aşağıdaki resimde gösterildiği gibi zamanlanmış bir görev tarafından tetiklenen dosyaların oluşturulmasını içerir:

Otomatik olarak oluşturulan metin, ekran görüntüsü, diyagram ve Yazı Tipi Açıklaması içeren bir resimOtomatik olarak oluşturulan metin, ekran görüntüsü, diyagram ve Yazı Tipi Açıklaması içeren bir resim

Şekil 30 – İki yöntem arasındaki fark

Reklam



Source link