Araştırmacılar, veri kümeleri ve önceden eğitilmiş modeller için popüler çevrimiçi depo olan Hugging Face Hub’da kötü amaçlı kod içeren iki makine öğrenimi (ML) modelini tespit ettiler.
Bunlardan biri geliştiricinin makinesinde indirilip yürütüldüğünde, kötü niyetli yük, bir Windows, Linux veya sistemde Mach çekirdeği (örneğin macOS) kullanılarak yürütülüp yürütülmediğini kontrol eder. Kontrolün sonuçlarına bağlı olarak, sabit kodlu bir IP adresine bağlanan bir ters kabuk oluşturmak için farklı programlama mantığı kullanır.
Keşif
Hugging Face Hub, yazılım geliştiricilerinin ve araştırmacılarının ML modellerinde bulabileceği, paylaşabileceği ve işbirliği yapabileceği çevrimiçi bir platformdur. Bu modeller, yazılım uygulamalarına gömülebilecek işlevler sağlar.
Güvenlik taramalarına göre “temizlenen” sarılma yüz merkezinde kötü niyetli bir model (kaynak: tersine dönme)
ML modelleri – yani matematiksel gösterimleri – çeşitli veri serileştirme formatlarında saklanabilir. Bunlar arasında turşu denir.
“Turşu, birçok ekibin ML model verilerini serileştirme ve serileştirme için kullandığı popüler bir Python modülüdür. Kullanımı kolay olsa da, turşu, Python kodunun ML modelinin seansiyasyon sırasında yürütülmesine izin verdiği için güvensiz bir veri biçimi olarak kabul edilir. [aka ‘unpickling’]”Reversing Labs araştırmacıları.
Araştırmacılar tarafından işaretlenen iki kötü niyetli model, serileştirme ve süzelleştirme için turşu modülünü kullanan Pytorch formatında saklandı, bu da onu bir pytorch sargısı ile etkili bir şekilde sıkıştırılmış bir turşu dosyası haline getirdi.
ReversingLabs Ters Mühendis Karlo Zanki, modeller Pytorch formatındayken, Pytorch’un varsayılan Torch.oad () işlevi kullanılarak yüklenmesini önleyen varsayılan zip biçimi yerine 7Z formatında sıkıştırıldığını buldu.
Zanki, “Şüpheli turşu dosyalarını tespit etmek için sarılan yüz tarafından kullanılan araç olan Picklescan’ın onları güvensiz olarak işaretlememesinin nedeni budur” dedi.
Picklescan, özel olarak hazırlanmış “kırık” turşu dosyaları tarafından engellendi: “Picklescan aracı, serileştirilmiş akışı kıran, ancak daha önce çağrılmasına rağmen tehlikeli fonksiyonların varlığını tespit edemediğinde bir hata gösterdi. Karşılaşılan akıştan ödün verdi. ”
Araştırmacıların “nullifai” olarak adlandırdığı bu savunma kaçırma tekniği, kötü niyetli kod yürütülmesine izin vermek için turşu dosyalarında serileştirilmiş kodun yürütülmesini etkili bir şekilde kullanıyor.
Yeni tehditlere karşı koymak
Hugging Face Security ekibi kötü niyetli modelleri kaldırdı ve Picklescan’ın kırık turşu dosyalarını algılamasını geliştirdi. Reversing Labs, uzlaşma göstergeleri yayınladı. Kötü niyetli modelleri barındıran (şimdi silinmiş) depoların ekran görüntülerine bakarak, sekiz aydan fazla fark edilmeden devam ettiler.
Zanki, “Turşu yazım hatası gibi ortak kaçınma tekniklerini kullanmasa veya popüler, meşru bir ML modelini taklit etmeye çalışmasa da, paketler yeni bir saldırı yöntemini test etmek için daha çok bir kavram kanıtı modeline benziyor” dedi.
Kötü niyetli modellerden birinin adı (“Ballr7”) daha önce JFrog’un araştırmacıları tarafından keşfedilen diğerlerine benzer.
Araştırmacıların onların arkasında olduklarına işaret eden göstergeler var, ancak JFrog araştırmacıları, araştırmacılar tarafından yüklenen modellere gömülü yüklerin genellikle güvenlik açıklarını göstermeyi veya zarar vermeden kavram kanıtlarını sergilemeyi amaçladığını söylüyor. Onlar tarafından keşfedilenler ve laboratuvarları tersine çevirerek keşfedilen bu ikisi, kullanıcıların makinesinde ters bir kabuk yaratır ve bunları kötü niyetli parazitlere açar.
Hugging Face Merkezi, yeni tehditlere ve maaş günü arayan böcek avcılarına karşı koymaya çalışan araştırmacılar için bir oyun alanı haline geldi. Ve bu iyi bir şey, çünkü kötü niyetli bireyler kesinlikle sarılma yüz merkezinde kötü niyetli paketler tohumlamanın yollarını bulmaya çalışıyorlar.