Geçen hafta ‘Beep’ adlı yeni bir gizli kötü amaçlı yazılım keşfedildi ve güvenlik yazılımı tarafından yapılan analiz ve tespitlerden kaçınmak için birçok özellik içeriyor.
Kötü amaçlı yazılım, dosya tarama ve kötü amaçlı içerik tespiti için çevrimiçi bir platform olan VirusTotal’a bir dizi örnek yüklendikten sonra Minerva’daki analistler tarafından keşfedildi.
Beep hala geliştirme aşamasında olmasına ve birkaç temel özelliği eksik olmasına rağmen, şu anda tehdit aktörlerinin güvenliği ihlal edilmiş cihazlara uzaktan daha fazla yük indirmesine ve yürütmesine izin veriyor.
Yeni bir bilgi hırsızı yolda
Beep, üç ayrı bileşen kullanan bir bilgi hırsızı kötü amaçlı yazılımıdır: bir damlalık, bir enjektör ve yük.
Damlalık (“big.dll”), base64 kodlu PowerShell komut dosyası içeren ‘AphroniaHaimavati’ değerine sahip yeni bir kayıt defteri anahtarı oluşturur. Bu PowerShell betiği, bir Windows zamanlanmış görevi kullanılarak her 13 dakikada bir başlatılır.
Betik yürütüldüğünde, verileri indirecek ve daha sonra başlatılan AphroniaHaimavati.dll adlı bir enjektöre kaydedecektir.
Enjektör, ana bilgisayarda çalışan virüsten koruma araçlarının tespitinden kaçınmak için işlem boşluğu aracılığıyla yükü meşru bir sistem işlemine (“WWAHost.exe”) enjekte etmek için bir dizi hata ayıklama önleme ve anti-vm teknikleri kullanan bileşendir.
Son olarak, birincil yük, güvenliği ihlal edilmiş makineden veri toplamaya, şifrelemeye ve C2’ye göndermeye çalışır. Minerva’nın analizi sırasında, sabit kodlu C2 adresi çevrimdışıydı, ancak kötü amaçlı yazılım, 120 başarısız denemeden sonra bile bağlantı kurmaya çalıştı.
Kötü amaçlı yazılımın analizindeki sınırlamalara rağmen Minerva, örnekte C2 komutları tarafından tetiklenen aşağıdaki işlevleri tanımlayabildi:
- dengeleyici – henüz uygulanmadı
- içinde – henüz uygulanmadı
- ekran görüntüsü – işlem listesini toplamak için görünür
- görev – henüz uygulanmadı
- tahrip etmek – henüz uygulanmadı
- kabuk kodu – ek kabuk kodu yürütür
- dll – bir dll dosyasını yürütür
- exe – bir .exe dosyasını yürütür
- Ek olarak – ek bilgi toplar
- knock_timeout – C&C “canlı tutma” aralıklarını değiştirir
Kaçınma tespiti
Beep kötü amaçlı yazılımını öne çıkaran şey, yürütme akışı boyunca güvenlik yazılımı ve araştırmacılar tarafından tespit ve analizden kaçınmak için birden fazla teknik kullanmasıdır.
Bu kaçınma teknikleri aşağıda özetlenmiştir:
- Dinamik dize kodu gösterme – Önemli dizeleri gizler ve onaltılık baytları belleğe kopyalar. Bip sesi, gerektiğinde xor/sub/add/not Assembly yönergelerini kullanarak bunları gösterir.
- Sistem Dili kontrolü – Bip varsayılan sistem dilini kontrol edecek ve Rusça, Ukraynaca, Beyaz Rusça, Tacikçe, Slovence, Gürcüce, Kazakça ve Özbekçe (Kiril) algılanırsa sistemden çıkacaktır.
- IsDebuggerPresent API işlevinin derleme uygulaması – Bir kullanıcı modu hata ayıklayıcısının mevcut işlemde hata ayıklayıp ayıklamadığını kontrol eder.
- NtGlobalFlag alanı hata ayıklama önleme – Süreci bir hata ayıklayıcının oluşturup oluşturmadığını belirleyin.
- RDTSC talimatı – Bir VM’de çalışıp çalışmadığını belirlemek için sıfırlamadan bu yana CPU onay işaretlerini belirleyin.
- Yığın Segment Kaydı – Programın izlenip izlenmediğini tespit edin.
- CPUID anti-vm – Hipervizör Marka dizisini edinin ve ‘VMware’ kelimesinin bir kısmını içerip içermediğini kontrol edin.
- VBOX kayıt defteri anahtarı anti-vm – VM ile ilgili kayıt defteri anahtarlarının varlığını kontrol edin.
- Bip API işlevi anti-korumalı alan – ‘Uyku API işlevi’ne alternatif olarak, korumalı alan algılamasından kaçınmak için kötü amaçlı yazılımın yürütülmesini geciktirirken (uyarılabilir bekleme) hoparlörde bir bip sesi üretir.
Yukarıdakilere ek olarak, enjektör bileşeni aşağıdaki kaçınma tekniklerini de uygular:
- INT 3 hata ayıklama önleme – Hata ayıklayıcıları çalışmayı durdurmaya zorlayacak bir istisna oluşturun.
- INT 2D hata ayıklama önleme – Hata ayıklayıcıları çalışmayı durdurmaya zorlayacak bir istisna oluşturun.
- CheckRemoteDebuggerPresent() API anti-hata ayıklama – Geçerli işleme bir hata ayıklayıcı eklenip eklenmediğini belirleyin.
- IsDebuggerPresent() API hata ayıklama önleme – Bir kullanıcı modu hata ayıklayıcısının mevcut işlemde hata ayıklayıp ayıklamadığını belirleyin.
- ProcessDebugPort anti-hata ayıklama – İşlem için hata ayıklayıcının bağlantı noktası numarasını belirleyin.
- VirtualAlloc() / GetWriteWatch() hata ayıklama önleme – Hata ayıklayıcıları ve kancaları algılamak için belleğe yazılan sayfaları izleyin.
- OutputDebugString() hata ayıklama önleme – Geri arama sonucuna dayanan hata ayıklayıcı algılama tekniği.
- QueryPerformanceCounter() ve GetTickCount64() hata ayıklama önleme – Sistemde bir hata ayıklayıcının çalışıp çalışmadığını belirlemek için talimatlar ile yürütme arasındaki gecikmeyi ölçün.
Beep, veri hırsızlığı ve komutların yürütülmesi için tam özellik setini tamamlamadan önce çoklu analiz karşıtı mekanizmalar uygulayan, ağırlıklı olarak kaçınmaya odaklanan bir kötü amaçlı yazılım örneğidir.
Vahşi doğadaki operasyonları şimdilik sınırlı kalsa da, Beep dikkat edilmesi gereken bir tehdit olabilir.