
Script tabanlı kötü amaçlı yazılım, JavaScript, Python, PowerShell veya VBScript gibi komut dosyalarında yazılmış kötü amaçlı yazılımlardır.
Derlenmiş yürütülebilir ürünlere dayanan geleneksel kötü amaçlı yazılımların aksine, komut dosyası tabanlı kötü amaçlı yazılım, çalışma zamanında yorumlanan insan tarafından okunabilir kod olarak yürütülen komut dosyalarını kaldırır
Komut dosyaları son yıllarda giderek daha popüler hale geldi: Geleneksel uç nokta tespitinden etkili bir şekilde kaçıyorlar ve değiştirilmesi ve gizlenmesi kolay.
Düşmanlar bunları genellikle iki yoldan biriyle kullanır:
- Bir komutu yürütmek veya bir yükü indirmek için derlenmiş kötü amaçlı yazılımlarda bir saldırı adımı yürüten bir komut dosyası bileşeni ekleyin.
- Doğrudan bir komut dosyası dili kullanarak kötü amaçlı yazılım oluşturun. Bir örnek Lu0botNode.js.
Örnek karşılaştırma
Derlenmiş | Senaryo tabanlı |
Bir .exe olarak derlenen bir Truva Şeridi, kötü amaçlı bir siteden indirilir. İkili imzası uygulanmadan önce antivirüs tarafından işaretlenir, ancak çalışırsa, kalıcı bir rootkit kurabilir. | Bir kimlik avı e -postası aracılığıyla teslim edilen bir PowerShell komut dosyası bellekte çalışır, fidye yazılımı indirir ve dosyaları şifreler. Tespit etmek zordur çünkü meşru sistem araçlarını kullanır ve yürütülebilir kalmaz. |
Script tabanlı kötü amaçlı yazılım neden derlendiğine göre daha tehlikeli olabilir?
Script tabanlı kötü amaçlı yazılımlar, belirli bağlamlardaki derlenmiş kötü amaçlı yazılımlara kıyasla onu daha tehlikeli veya gelişmiş hale getirebilecek farklı özelliklere sahiptir. Doğası gizliliğini, esnekliğini ve uyarlanabilirliğini geliştirir.
1. Gizlilik ve Kaçınma
Filless infacting: Script tabanlı kötü amaçlı yazılım genellikle tamamen bellekte çalışır ve diskte algılanabilir dosyaların oluşturulmasından kaçınır. Derlenmiş kötü amaçlı yazılım genellikle antivirüs yazılımının tanımlayabileceği ve tarayabileceği yürütülebilir bir dosya gerektirir.
Meşru süreçlerle karışımlar: Komut dosyaları PowerShell, JavaScript motorları veya ofis makroları gibi güvenilir ortamlarda yürütülebilir, bu da onları meşru faaliyetlerden ayırt etmeleri zorlaştırır. Derlenmiş kötü amaçlı yazılım, bağımsız bir ikili olarak, şüpheyi tetikleme olasılığı daha yüksektir.
Gizat kolaylığı: Komut dosyası dilleri dinamik kod oluşturma, kodlama veya şifreleme sağlar ve saldırganların kötü niyetli niyeti gizlemesini sağlar. Derlenmiş kötü amaçlı yazılımlar da gizlenebilirken, genellikle daha karmaşık teknikler gerektirir.
2. Esneklik ve hızlı gelişme
Platformlar arası uyumluluk: Birçok komut dosyası dili (örneğin, JavaScript, Python) platform-agnostiktir ve aynı kötü amaçlı yazılımların en az değişikliklerle Windows, macOS veya Linux’u hedeflemesine izin verir. Derlenmiş kötü amaçlı yazılımların genellikle farklı mimariler veya işletim sistemleri için ayrı yapılara ihtiyacı vardır.
Değişiklik kolaylığı: Senaryolar insan tarafından okunabilir ve yeni güvenlik açıklarından yararlanmak veya kaçınma tespitinden hızlı bir şekilde düzenlenebilir veya güncellenebilir. Derlenmiş kötü amaçlı yazılımlar, daha fazla zaman alıcı ve karmaşık olan yeniden derleme gerektirir.
Dinamik davranış: Komut dosyaları davranışlarını Çevre’ye göre çalışma zamanında uyarlayabilir (örneğin, antivirüs veya kum havuzu varlığını kontrol eder). Derlenmiş kötü amaçlı yazılım, polimorfizm için özel olarak tasarlanmadığı sürece tipik olarak daha statik davranışlara sahiptir.
3. Kalıcılık ve esneklik
Zor kalıcılık mekanizmaları: Komut dosyaları sistem yapılandırmalarını (örneğin, kayıt defteri anahtarları, planlanan görevler), derlenmiş kötü amaçlı yazılımlar tarafından sıklıkla kullanılan ikili değişikliklerden daha az işaretlenecek şekilde değiştirebilir.
Toprağı yaşama: Script tabanlı kötü amaçlı yazılım, meşru sistem araçlarını ve işlemlerini kullanır ve harici yükler ihtiyacını azaltır. Bu, genellikle ek ikili dosyalara ihtiyaç duyan derlenmiş kötü amaçlı yazılımlara kıyasla tespit etmeyi zorlaştırır.
4. Daha düşük giriş bariyeri
Komut dosyası dillerini öğrenmek ve kullanmak daha kolaydır C ++ gibi düşük seviyeli dillerden daha. Ayrıca, komut dosyası tabanlı kötü amaçlı yazılım, ek bileşenler yüklemeye gerek kalmadan işletim sisteminde zaten bulunan araçları (örn. PowerShell, Windows komut dosyası ana bilgisayar veya tarayıcılar) kullanır.
5. Tespit ve adli tıp için zorluklar
Kısa ömürlü eserler: Script tabanlı kötü amaçlı yazılım genellikle bellekte çalıştığından veya geçici dosyalardan yararlandığından, daha az adli iz bırakır.
Antivirüs kaçakçılığı: Birçok antivirüs çözeltisi, hızla değişebilen veya gizleme kullanabilen komut dosyalarına karşı daha az etkili olan ikili imzaları tespit etmek için optimize edilmiştir.
Fakat:
Hangi tür kötü amaçlı yazılımların daha tehlikeli olduğu, saldırının hedeflerine ve bağlamına bağlıdır.
Yaygın, gizli kampanyalar (örneğin, veri hırsızlığı veya fidye yazılımı) için, senaryo tabanlı kötü amaçlı yazılım genellikle daha gelişmişdir.
Hedeflenen, derin sistem uzlaşması için derlenmiş kötü amaçlı yazılım daha etkili olabilir.
İkincisi, düşük seviyeli sistem manipülasyonu (örneğin rootkits) veya ürün yazılımında kalıcılık için daha verimli olabilir.
Ayrıca, komut dosyalarının eşleşemediği donanım üzerinde daha hızlı yürütme ve daha sıkı kontrol sağlayabilir.
Örnek 1: JS komut dosyası aracılığıyla sistem veri toplama
Komut dosyalarını analiz ederken iki ana seçeneğiniz vardır:
1. Kaynak kodunu statik olarak gözden geçirin Komut dosyasının nasıl çalıştığını anlamak için. Bu, kod tabanını gerçekleştirmeden satır satır incelemeyi içerir.
2. Komut dosyasını dinamik olarak yürütün. Yürütmeyi adım atmak, değişkenleri incelemek veya komut dosyasını çalıştırmak için hata ayıklayıcılar (x64dbg, Ida Pro) ve komut dosyası izleyicileri kullanabilirsiniz. Herhangi bir.Run’un etkileşimli sanal alan Sistem içinde ne yaptığını görmek için.
Sandboxing ve komut dosyası, hem komut dosyası tabanlı kötü amaçlı yazılım hem de saldırı zincirinde bir yerde komut dosyalarını kullanan derlenmiş kötü amaçlı yazılımlar için statik kod incelemesinden daha etkili olma eğilimindedir.
Script tabanlı kötü amaçlı yazılım, sanal alan ve sanal makine algılama da dahil olmak üzere bir dizi teknikle tespit ve analizden kaçınır. Bununla birlikte, RUN’un kum havuzu, bu davranışın nasıl karşı çıkacağını ve kötü amaçlı yazılım etkinliğini ayrıntılı olarak nasıl göstereceğini bilir.

Bir kullanıcının ekli bir e -posta aldığını varsayalım. Dosyanın adı önemli bir finansal belge önerir, ancak uzantısı .SCR, bir dizi program tarafından oluşturulabilecek yürütülebilir bir komut dosyasını ima eder.
Kullanıcı dosyayı herhangi birine gönderir. ve patlamasının hayata geçirdiği süreçleri analiz eder.

Bunların arasında, Windows Script Ana Bilgisayarının (WSH) bir parçası olan komut dosyalarını çalıştıran ve kullanıcıların işletim sistemindeki komut dosyalarını otomatikleştirmesine izin veren komut dosyalarını çalıştıran meşru bir Windows işlemi görüyoruz.
Bu komut dosyasını listede seçelim ve daha fazla bilgi tıklayalım:
.webp)
Sol yan menüde Script Tracer adında bir araç var.

Bir dizi JavaScript etkinliği tespit etti. Bazılarına daha yakından bakacağız:
.webp)
Komut dosyası, komut dosyaları (VBS/JS) aracılığıyla Windows sistemleri ve bileşenleri ile etkileşim kurmak için Windows Script Ana Bilgisayar (WSH) nesne modelindeki bir arabirim aracılığıyla çalıştırılır.
Komut dosyası bir kayıt defteri anahtarı okur ve işlem sisteminin adını döndürür: şimdi saldırı aracısı Windows 10 Enterprise olduğunu bilir.
Bir sonraki komut dosyası başka bir kayıt defteri anahtarı okur ve uç nokta işlemci mimarisi AMD64 hakkındaki bilgileri döndürür.
Proaktif Sandbox analizi ile şirketinize senaryo tabanlı saldırıları önleyin
SOC ekipleri için tasarlanmış en üst planın 14 günlük denemesini talep edin.
Etkilenen uç nokta hakkında bu verilerin toplanması, hedef çevreyi anlamak ve etkili kötü amaçlı faaliyetler yürütmek için kritik bir keşif aşamasıdır.
Bilgisayar korsanları, bu bilgileri belirli güvenlik açıklarını tespit etmek, yükü özelleştirmek, kaçırma ve kalıcılık mekanizmalarını optimize etmek için kullanır.
İşletim sistemini ve mimariyi bilmek, uç noktanın yüksek değerli bir hedef olup olmadığını doğrulamaya yardımcı olur (örneğin, Windows Server’a ve düşük değerli bir masaüstüne ve çalıştıran bir sunucu).
Tabii ki sadece bilgileri almak yeterli değildir, bu nedenle komut dosyalarından biri daha fazla kodlu verileri düşmanın C2 sunucusuna gönderir.

Örnek 2: PowerShell kullanarak steganografi saldırısı
Steganografi, görüntüler, ses, videolar veya belgeler gibi masum dosyalarda verileri (kötü amaçlı kod, komutlar veya söndürülmüş bilgiler gibi) gizleme uygulamasıdır. Bilgisayar korsanları şunları için steganografi kullanır:
- Kaçınma tespiti (dosya içeriğini derinlemesine analiz etmeyen güvenlik araçlarını atlayarak).
- Yükler (görüntü dosyalarına kötü amaçlı komut dosyaları yerleştirme) teslim edin.
- Verileri pespiltratlayın (çalınan verileri değiştirilmiş bir görüntüde veya ses dosyasında gizleme).
- Tetik saldırıları (indirilen bir dosyadan gizli komutları çıkarma).
Bunun bir JavaScript dosyası örneğinde nasıl çalışabileceğini görelim kum havuzunda analiz edildi. Süreçler listesinde, powerShell.exe’yi buluruz, seçin ve daha fazla bilgi tıklatırız.
Script Tracer birkaç PowerShell komut dosyası buldu: 8 sayı steganografi ile ilgili. Archive.org adresinden barındırılan bir resmi indirir.

Resim oldukça masum görünüyor:
.webp)
Ancak bu dosyanın kaynak kodu, Base64’te şifrelenmiş bir kötü amaçlı yazılım kodu içerir: Sandbox analizimizde bulabileceğimiz bir komut dosyası daha bu şifreli kodu bulmaya hizmet eder.

Yine başka bir komut dosyası, yürütülebilir bir dosya kodu ile sonuçlanan düz metin halinde şifresini çözer (bu, bir MZ dosya imzası, bir Windows taşınabilir .exe tanımlayıcısı gördüğünü anlıyoruz):

Dosyanın bir komut dosyası tarafından yürütülmesinde, Xworm Trojan Sistemin enfeksiyonunu başlatır.

RUN’un etkileşimli sanal havuzu, işlem grafiğinde bu saldırı zincirini görmemizi sağlar.
Çözüm
RUN’un etkileşimli sanal aleti, kötü amaçlı komut dosyalarını incelemek ve analiz etmek için mükemmel bir ortamdır. Bu analiz, siber güvenlik ekiplerini tehditleri tespit etmek, nötralize etmek ve önlemek için eyleme geçirilebilir içgörülerle donatır. Bir işletme için şu anlama geliyor:
- Kesinti Süresini Azaltma: Tehditleri tanımlar ve engeller, sistem kesintilerini en aza indirir ve iş sürekliliğini sağlar.
- Olay Maliyetlerini Azaltma: İhlalleri önler, iyileşme, yasal ve itibar giderlerini azaltır.
- Güvenlik Duruşunu Geliştirme: Güvenlik açıklarını ve TTP’leri ortaya çıkarır, savunmaları güçlendirir ve riske maruz kalmayı azaltır.
- Uyumun Geliştirilmesi: GDPR, HIPAA veya PCI-DSS’ye uyumu destekleyen proaktif tehdit analizini gösterir.
- Müşteri Güvenini Artırma: Veri sızıntılarını önler, kuruluşun güvenliğine olan güveni korur.
- Çalışan verimliliğinin arttırılması: Sandbox Insights’a dayalı eğitim, başarılı kimlik avlılığını azaltır ve personeli temel görevlere odaklanmak için serbest bırakır.
Herhangi bir.Run’un temel avantajları
- Tüm saldırı zincirine tam görünürlük sağlar.
- IOCS, TTP’ler ve diğer temel bileşenleri tek bir yerde toplar.
- Bulut tabanlı-karmaşık kuruluma veya yerel kaynaklara gerek yok.
- Daha hızlı paylaşım ve yanıt için açık, yapılandırılmış raporlar oluşturur.
- Hem genç hem de kıdemli uzmanlar için uygundur – ileri analizler, ancak gelişmiş becerilere gerek yoktur.
RUN’un Kurumsal Planının 14 günlük denemesini talep edin.