🛡️ Yapay Zeka / Tedarik Zinciri Güvenliği
Siber güvenlik araştırmacıları, Hugging Face platformunda barındırılan iki kötü amaçlı makine öğrenimi (ML) modelini tespit etti. Bu modeller, tespit edilmekten kaçınmak için olağandışı bir teknik kullanarak “bozuk” pickle dosyalarından yararlanıyordu.
ReversingLabs araştırmacısı Karlo Zanki, The Hacker News ile paylaşılan raporunda, “Bahsi geçen PyTorch arşivlerinden çıkarılan pickle dosyaları, dosyanın başında kötü amaçlı Python içeriği barındırıyordu,” dedi. “Her iki durumda da kötü amaçlı yük, önceden belirlenmiş bir IP adresine bağlanan tipik bir platforma özel ters kabuk (reverse shell) saldırısıydı.”
nullifAI: Yeni Bir Güvenlik Açığı
Bu yaklaşım, mevcut güvenlik önlemlerini atlatmayı amaçlayan net bir girişim olduğu için “nullifAI” olarak adlandırıldı. Hugging Face’te tespit edilen kötü amaçlı model depoları şu şekilde:
- glockr1/ballr7
- who-r-u0000/0000000000000000000000000000000000000
Araştırmacılar, bu modellerin aktif bir tedarik zinciri saldırısından çok bir kavram kanıtı (PoC) niteliğinde olabileceğini düşünüyor.
Makine öğrenimi modellerinin dağıtımında yaygın olarak kullanılan Pickle serileştirme formatı, güvenlik açısından sürekli bir risk oluşturuyor. Çünkü Pickle dosyaları yüklendiğinde ve ayrıştırıldığında (deserialize edildiğinde), rastgele kod yürütme imkanı sunuyor.
PyTorch Formatında Gizlenmiş Kötü Amaçlı Kod
Tespit edilen iki kötü amaçlı model, PyTorch formatında saklanmış olup aslında sıkıştırılmış Pickle dosyalarından oluşuyor. Normalde, PyTorch sıkıştırma için ZIP formatını kullanırken, bu modellerin 7z formatında sıkıştırıldığı belirlendi.
Bu yöntem sayesinde modeller, Hugging Face’in kötü amaçlı Pickle dosyalarını tespit etmek için kullandığı Picklescan aracından kaçmayı başardı ve kötü amaçlı olarak işaretlenmedi.
Zanki, “Bu Pickle dosyasıyla ilgili ilginç bir nokta, kötü amaçlı yük çalıştırıldıktan kısa bir süre sonra nesne serileştirmesinin bozulması ve nesnenin ayrıştırılmasının başarısız olmasıdır,” dedi.
Kötü Amaçlı Kod, Picklescan Tarafından Fark Edilmedi
Derinlemesine analiz, bozuk Pickle dosyalarının hala kısmen ayrıştırılabildiğini gösterdi. Picklescan tarafından hata mesajı verilmesine rağmen, ayrıştırma sürecindeki farklılık nedeniyle kötü amaçlı kodun yürütülmesine engel olunamıyor.
Açık kaynaklı bu güvenlik aracı, tespit edilen hatayı düzeltmek için güncellendi.
Zanki’ye göre, “Pickle dosyaları sıralı olarak ayrıştırılır. Pickle işlem kodları (opcodes), bulundukları sırayla çalıştırılır ve tüm kodlar yürütülene veya bozuk bir talimatla karşılaşılana kadar bu işlem devam eder. Tespit edilen modelde, kötü amaçlı yük Pickle akışının başına yerleştirildiğinden, Hugging Face’in mevcut güvenlik tarama araçları tarafından tehlikeli olarak algılanmadı.”
Bu olay, makine öğrenimi modellerinin güvenlik taramalarında daha güçlü analiz yöntemlerinin kullanılmasının gerekliliğini bir kez daha ortaya koyuyor.