Malicious Rust “evm birimleri” Taklitçisi, İşletim Sistemine Özel Yükleri Dağıtıyor


Ethereum Virtual Machine (EVM) yardımcı programı gibi görünen kötü amaçlı bir Rust sandığı, geliştiricilerin makinelerine sessiz, işletim sistemine özel yükler dağıtırken yakalandı.

Evm-units olarak adlandırılan ve “ablerust” tarafından yazılan paket, yaklaşık sekiz ay boyunca Crates.io’da barındırıldı ve tüm zamanların 7.000’den fazla indirmesine ulaştıktan sonra Soket Tehdit Araştırma Ekibi’nden gelen bir raporun ardından hızla kaldırıldı.

İlk bakışta, evm birimleri makul bir EVM sürüm numarası döndüren iyi huylu bir yardımcı işlev olan get_evm_version()’u sunuyor gibi görünüyor.

Ancak aslında bu çağrı, kurbanın işletim sistemine ve Qihoo 360 antivirüsünün varlığına bağlı olarak uzak bir veri alıp çalıştıran platformlar arası ikinci aşama bir yükleyiciyi tetikliyor.

Çapraz platform yükleyici

Kötü niyetli davranış get_evm_version() çağrıldığında başlar. İşlev, sabit kodlu, base64 kodlu bir dizenin kodunu uzak bir URL’ye çözer ve bu daha sonra eşzamansız check() işlevine aktarılır.

İlgili yük karma değeriyle birlikte VirusTotal tarafından zaten kötü amaçlı olarak işaretlenen bu URL, ikinci aşama komut dosyası için dağıtım noktası görevi görür.

Kasa, Rust’un koşullu derlemesini kullanarak işletim sistemine özgü üç check() çeşidini uygular:

Linux’ta kötü amaçlı yazılım, sistemin geçici dizinine /tmp/init olarak bir komut dosyası indirir, yükü diske yazar ve bunu tüm standart akışlar geçersiz kılınarak nohup bash aracılığıyla arka planda yürütür.

Hiçbir pencere, günlük veya terminal çıkışı kurbanı uyarmazken, saldırganın komut dosyası rastgele komutları çalıştırmak veya ek yükler yüklemek için tam kontrol sahibi olur.

MacOS’ta da benzer bir model kullanılır: yük, temp dizininde init olarak kaydedilir, ardından nohup’a sarılmış osascript kullanılarak arka planda sessizce yürütülür ve yine kullanıcıya görünür hiçbir yapıt olmaz. Bu, sessiz bir AppleScript tabanlı ikinci aşamayı mümkün kılar.

Windows’ta yük, temp dizinine bir PowerShell betiği (init.ps1) olarak bırakılır. Kod daha sonra Qihoo 360’ı (qhsafetray.exe) algılamak için çalışan işlemleri sıralar.

Qihoo 360 yoksa kötü amaçlı yazılım, PowerShell betiğini gizli bir pencerede başlatan bir VBScript oluşturur.

Antivirüsün varlığından bağımsız olarak, PowerShell’i -ExecutionPolicy Bypass ve CREATE_NO_WINDOW ile çalıştırarak gizli yürütme sağlar.

Tüm platformlarda, tehlike_accept_invalid_certs(true) kullanımı, saldırganın kendinden imzalı sertifikalar kullanmasına ve altyapıyı minimum sürtünmeyle döndürmesine olanak tanıyarak savunma amaçlı TLS denetimini zayıflatır.

Kripto odaklı tedarik zinciri uzlaşması

Asya’da önemli bir pazar payına sahip, Çin’in önde gelen antivirüs ürünü olan Qihoo 360’a yönelik açık kontrol, muhtemelen bölgesel bir odağa işaret ediyor ve kripto para hırsızlığı profiliyle uyumlu.

EVM temalı yardımcı programların, iyi huylu görünen Uniswap yardımcı bağımlılığının ve platformlar arası yükleyici davranışının birleşimi, kripto geliştiricilerinin veya altyapısının hedef alındığını güçlü bir şekilde akla getiriyor.

Güvenlik ekiplerinin, tüm açık kaynak bağımlılıklarını potansiyel saldırı yüzeyleri olarak ele almaları, işletim sistemine özgü yük indirmeleri, komut dosyası yürütme (PowerShell, Bash, AppleScript) ve gizli başlatma kancaları gibi gizli davranışları sürekli olarak taramaları ve kötü amaçlı kasaları üretime ulaşmadan önce engellemek için CI/CD işlem hatlarına otomatik bağımlılık korumasını entegre etmeleri önerilir.

kötü amaçlı yazılım içeren bir bağımlılığa sahip olduğundan Soket üzerinde uniswap-utils bağımlılık uyarısı.
kötü amaçlı yazılım içeren bir bağımlılığa sahip olduğundan Soket’te uniswap-utils bağımlılık uyarısı.

Evm ünitelerinin sadece bağımsız bir kasa olmadığı gerçeği, riskin daha da artmasına neden oluyor. Aynı yazarın başka bir paketi olan uniswap-utils, büyük ölçüde meşru görünüyor ve tüm zamanların 7.400’den fazla indirilmesine sahip.

Ancak, evm birimlerine bağlıdır ve # ile açıklamalı bir işlevin içindeki evm_units::get_evm_version() öğesini çağırır.[ctor::ctor]. Bu, kötü amaçlı işlevin başlatma sırasında otomatik olarak çalışmasına neden olur ve olayı klasik bir yazılım tedarik zinciri ihlaline dönüştürür.

Bu durum, özellikle kripto para ekosistemlerinde açık kaynaklı kötü amaçlı yazılımların artan karmaşıklığının altını çiziyor.

Görünüşte zararsız olan tek bir sürüm kontrol işlevi, platformlar arası yükleyiciyi yaygın olarak kullanılan Rust kasalarının içine gizlemek için yeterliydi.

Anında Güncellemeler Almak ve GBH’yi Google’da Tercih Edilen Kaynak Olarak Ayarlamak için bizi Google Haberler, LinkedIn ve X’te takip edin.



Source link