Statik Analiz — CMDPSDropper (lods.cmd) | Tehdit: YÜKSEK
Dosya Kimliği
| SHA256 | 1a5ad9ae7b0dcdc2edb7e93556f2c59c84f113879df380d95835fb8ea3914ed8 |
|---|---|
| Dosya Adı | lods.cmd (ZIP 201KB → 270,900 byte CMD) |
| Tür | Windows Batch Script (.cmd), HTML header (çift tür) içinde CMD kodu |
vrstem.IO: C2 İndirme Sunucusu
C2 DOMAIN: vrstem.IO — obfuskasyon kaldırıldığında ortaya çıkıyor!
vrstem.IO (ham: vrsRgqvrtRgqvreRgqvrmRgqvr.IO → Rgqvr kaldır → vrstem.IO) -- ".IO" TLD: İngiliz Hint Okyanusu bölgesi, popüler C2 TLD -- "vrstem" = belirsiz kısaltma (VR stem? versiyon stem?) -- İşlev: PowerShell'in bağlandığı indirme/C2 sunucusu -- Obfuskasyon tekniği ortaya çıkarıldıktan sonra net C2 IOC
Rgqvr: Junk String CMD Obfuskasyon Tekniği
Ham kod: vrsRgqvrtRgqvreRgqvrmRgqvr.IO
Temiz kod: vrstem.IO (Rgqvr stringi her karakterden sonra ekleniyor)
-- Teknik: her gerçek karakter arasına "Rgqvr" junk dizisi ekleniyor
-- CMD decode:
SET domain=vrsRgqvrtRgqvreRgqvrmRgqvr.IO
ECHO %domain:Rgqvr=% → vrstem.IO
(% :Rgqvr=% = Rgqvr stringini boşla değiştir)
-- Başka örnekler (decode edilmiş):
TvZhmR → WindowsPowerShell\v1.0\powershell.exe
IOvchb → $host.UI.RawUI.WindowTitle= (başlık gizleme)
LiRslx → $yDpz='IKCWFnKCWFvoKCWFkeKCWF'.Replace('KCWF','')
→ $yDpz='Invoke' (PowerShell Invoke metot inşası)
-- Neden etkili:
- Grep/regex aramaları "vrstem.IO"yu bulamaz (ham formda)
- YARA kuralları tetiklenmiyor
- Sadece 15 string çıkıyor (obfuskasyon çok başarılı)
PowerShell Gizli Başlatma + Invoke
WindowsPowerShell\v1.0\powershell.exe start " /min (minimized window) -- Akış: 1. CMD: Rgqvr junk stringlerini kaldır → gerçek değişkenleri oluştur 2. PowerShell'i minimize pencereyle başlat 3. $yDpz = 'Invoke' (string replacement ile inşa → hook atlatma) 4. $yDpz + 'Expression' → InvokeExpression (meşru PS cmdlet'i) 5. Base64 payload çöz → çalıştır → vrstem.IO'ya bağlan -- Gömülü Base64 payload (kısaltılmış): 5/6yQHNUtIOYdrNe0mu35je0NWZtWItB1EQVBFPhDJ... IL/ECPB5blnTlGabS8l3urc6ryJzzJy89IKpmwbCN+PCP1A0FEkyYfLY8... (iki ayrı şifreli blok — çok aşamalı payload) timeout /nobreak /t 1 >nul -- Sandbox timing bypass: 1 saniye gecikme + /nobreak = Ctrl+C bile çalışmaz
IOC
| SHA256 | 1a5ad9ae7b0dcdc2edb7e93556f2c59c84f113879df380d95835fb8ea3914ed8 |
|---|---|
| C2 | vrstem.io |
| Obfuskasyon | Rgqvr junk-string delimiter |
CMDPSDropper — Malware Profile
CMD to PowerShell dropper. Rgqvr junk-string obfuscation in .cmd script. Contacts vrstem.IO C2. Launches PowerShell minimized. Embedded base64 encrypted payload. String replacement for InvokeExpression construction.
Malware Type
Loader
Programming Language
CMD/PowerShell
C2 Protocol
HTTPS
Target Systems
Küresel
Capabilities & Behavior
Payload İndirme
Süreç Enjeksiyonu
Modüler Mimari
Kimlik Bilgisi Hırsızlığı
Yanal Hareket
Kalıcılık
Anti-VM/Sandbox
İkincil Payload Dağıtımı
IOC List (1 indicators)
IOC — CMDPSDropper
# SHA256
1a5ad9ae7b0dcdc2edb7e93556f2c59c84f113879df380d95835fb8ea3914ed8
| Type | Value | Note |
|---|---|---|
| sha256 | 1a5ad9ae7b0dcdc2edb7e93556f2c59c84f113879df380d95835fb8ea3914ed8 |
C2 Servers (1 recorded servers for this family)
| Address | Type | Port | Protocol | Status | Country |
|---|---|---|---|---|---|
| vrstem.io | domain | 443 | HTTPS | inactive | — |
C2 addresses are provided only from malware samples manually verified by the KEYDAL team. Commercial use is prohibited.