3 puan yazan GN⁺ 2024-06-03 | 1 yorum | WhatsApp'ta paylaş
  • Bu haftanın başlarında Spaces platformunda secret’larla ilgili yetkisiz erişim tespit edildi ve bazı secret’lara dışarıdan erişilmiş olma ihtimali var
  • İlk müdahale kapsamında secret’larda yer alan çeşitli HF token’ları iptal edildi; etkilenen kullanıcılara e-posta ile bilgilendirme gönderildi
  • Kullanıcılara ilgili key ve token’ları yeniden oluşturmaları ve varsayılan hâle gelen fine-grained access tokens modeline geçmeleri öneriliyor
  • Hugging Face, harici siber güvenlik adli bilişim uzmanlarıyla birlikte soruşturma yürütüyor; güvenlik politika ve prosedürlerini de yeniden gözden geçiriyor
  • Spaces altyapısında org tokens kaldırıldı, KMS devreye alındı, sızan token’ları tespit etme ve geçersiz kılma güçlendirildi; olay ilgili kurumlara da bildirildi

Spaces secret’larına yetkisiz erişim ve kullanıcıların yapması gerekenler

  • Hugging Face, Spaces platformunda Spaces secrets ile ilgili yetkisiz erişim tespit etti
  • Bazı Spaces secret’larına yetkisiz şekilde erişilmiş olma ihtimali var
  • İlk kurtarma sürecinde secret’larda yer alan çeşitli HF tokens iptal edildi
    • Token’ı iptal edilen kullanıcılar e-posta ile zaten bilgilendirildi
  • Kullanıcılara key veya token’larını yeniden oluşturmaları öneriliyor
  • HF tokens için yeni varsayılan olan fine-grained access tokens modeline geçilmesi öneriliyor

Spaces altyapısında güvenlik güçlendirmesi ve sonraki adımlar

  • Hugging Face, harici siber güvenlik adli bilişim uzmanlarıyla birlikte olayı araştırıyor ve güvenlik politika ile prosedürlerini gözden geçiriyor
  • Son birkaç gün içinde Spaces altyapısının güvenliği güçlendirildi
    • İzlenebilirliği ve denetim kabiliyetini artırmak için org tokens tamamen kaldırıldı
    • Spaces secrets için anahtar yönetim hizmeti (KMS) devreye alındı
    • Sızan token’ları tanımlama ve proaktif olarak geçersiz kılma konusunda sistemin kabiliyeti güçlendirildi ve genişletildi
    • Genel güvenlik iyileştirildi
  • fine-grained access tokens işlevsel eşdeğerliğe ulaştığında yakın gelecekte “classic” read/write tokens’ın tamamen kullanımdan kaldırılması planlanıyor
  • Olası ilgili olaylara yönelik soruşturma devam ediyor
  • Hugging Face, bu olayı kolluk kuvvetlerine ve veri koruma otoritelerine de bildirdi
  • Sorular için security@huggingface.co adresi kullanılabilir

1 yorum

 
GN⁺ 2024-06-03
Hacker News yorumları
  • İki gün önce bir güvenlik konferansının slaytlarına göz attım; Jossef Harush Kadouri, Hugging Face gibi yerlerdeki modelleri kullanırsanız model yazarının makinenizde keyfi kod çalıştırabileceğini göstermişti.
    Slaytların başka bir yere yüklenip yüklenmediğini bilmiyorum; dosya olarak aldığım kopya burada: https://dro.pm/c.pdf (45MB) 188. slayt
    O anda bunun yalnızca model yazarı için değil, Hugging Face bir mahkeme emri aldığında ya da hacklendiğinde de aynı şeyin mümkün olduğu anlamına geldiğini fark etmemiştim. Özellikle de ihlal bir süre fark edilmezse¹
    Yapay zeka sektörünün dışında olduğum için bu modelleri hiç kendim çalıştırmadım, ama sektörün formatları bu kadar hızlı standartlaştırmış olması beni şaşırttı. Model dosyasının büyük sayı matrisleri ve biraz metaveriden ibaret olduğunu sanıyordum; fakat 186 ve 195. slaytlara bakınca modelin aslında neredeyse istediğini yapabilen bir Python betiği olduğunu, bu yüzden standartlaştırmanın kolay olduğunu düşündüm. Herkesin istediğini yapmasına izin verirseniz sorun etrafından dolaşılmış oluyor, ama bunun da bir maliyeti var.
    ¹ https://www.verizon.com/business/resources/articles/s/how-to... adresine göre ihlallerin %20’si aylarca fark edilmiyormuş. Elbette bu duruma ve saldırganın davranışına göre değişir.
    • “Model dosyasının büyük sayı matrisleri ve biraz metaveriden ibaret olduğunu sanıyordum” kısmına gelirsek, ONNX[1] genel olarak buna oldukça yakın bir yapıda.
      Ancak hemen karşınıza çıkan sorun, özel katmanlar/operatörler ve bunların çıkarım mantığı oluyor. Bunları yalnızca desteklenen işlemlerle uygulamak gerekiyor; bu pratikte zor ya da imkansız olabiliyor. Ya da runtime’da operatör uygulamasını sağlamanız gerekiyor ki bu da sizi başa döndürüyor.
      [1] https://onnx.ai/
    • Bu yüzden host üzerinde kod çalıştıramayan .safetensors formatı yok mu zaten?
    • Başkalarının da belirttiği gibi bu formata bağlı. Bu başlıkta güvenli tarafta henüz adı geçmeyen formatlardan biri, llama.cpp ve türev projelerin kullandığı GGUF.
      Neredeyse “büyük sayı matrisleri ve biraz metaveri”den ibaret bir format; bazı açıklar bulunup yamalandı.
      [1] https://www.databricks.com/blog/ggml-gguf-file-format-vulner...
    • Bildiğim kadarıyla bu sorun yalnızca model pickle ile serileştirilip/deserileştirildiğinde ortaya çıkıyor[0].
      [0]: https://huggingface.co/docs/hub/en/security-pickle
    • dro.pm bağlantısının süresi yakında dolacak. Geçici bağlantı olduğu için kısa; belki daha kalıcı bir servis kullanmalıydım.
      Sonradan okuyacaklar için sunum videosunu buldum: https://m.youtube.com/watch?v=8XysLIq-e3s
  • “Şüpheleniyorlar” diye başlaması fazlasıyla kaçış payı bırakan bir ifade. Bu tür bir iletişimde yer alacak bir cümle için uygunsuz görünüyor.
    • Bence aksine oldukça iyiydi. Bu tür sızıntı duyurularında genelde, hacker içeri girdikten sonra ne yaptığını “bilemedikleri” için “gizli değerlere erişildiğine dair kanıt yok” gibi ifadeler kullanılır.
      Hugging Face en azından “muhtemelen gizli değerlere erişilmiş olabilir, ama doğrulayamıyoruz” demiş oldu; bu daha dürüst görünüyor.
  • “Son birkaç gün içinde Spaces altyapısının güvenliğini önemli ölçüde iyileştirdik” deyip organizasyon token’larını tamamen kaldırdıklarını, izlenebilirlik ve denetim özelliklerini güçlendirdiklerini, Spaces gizli değerleri için KMS getirdiklerini, sızan token’ları tespit edip proaktif olarak geçersiz kılmayı geliştirdiklerini ve genel güvenlik iyileştirmeleri yaptıklarını söylüyorlar; “birkaç gün” içinde bitirmek için epey büyük bir iş yükü.
    Bu tür işler, canlıya almadan önce güvenlik denetimi ya da sızma testi gibi daha fazla zaman alan süreçleri tetiklememeli mi?
    • Umarım bunlar zaten bir süredir devam eden işlerdi ve zarar çoktan oluştuğu için şimdi dağıtıma almış olma ihtimalleri vardır.
    • İçinde özel bir güvenlik ekibi de olan bir SRE departmanına sahip daha büyük bir organizasyon için bu doğru olurdu; ama benim izlenimime göre Hugging Face henüz o ölçekte bir organizasyon değil.
  • Anthropic anahtarım sızdı ve biri 10 bin dolarlık fatura çıkardı. Hugging Face bunu telafi edecek mi?
    • Benim OpenAI anahtarım da sızdı ve birinin kullandığını fark ettim. Neyse ki zarar çok daha küçüktü; birkaç dolarlık GPT-4 kullanımı kadardı ve o sırada uygulamalarım o modeli bile kullanmıyordu.
      Neredeyse kesin olarak HF Space’in gizli değerleri üzerinden sızdığını düşünüyorum. Birkaç gün önce Spaces’larımın bazılarının etkilendiğine dair bir uyarı mesajı aldım.
    • O anahtarın gerçekten yalnızca Space’in gizli değerlerinde saklandığından emin misin? Değişkenler herkese açık, .env dosyasına koydukların da herkese açık.
    • Bulut sağlayıcı platformlarda genelde harcama için azami limit belirlenebildiğini sanıyordum.
  • Birkaç hafta önce bazı OpenAI anahtarlarımın ele geçirildiğini fark ettim; bu anahtarlar yalnızca Hugging Face Space gizli değerleri olarak etkin durumdaydı.
    Birkaç gün önce ilgili Spaces’ların ihlal edildiğine dair e-posta aldım; dolayısıyla bu sorun en az birkaç haftadır devam ediyor gibi.
  • Uygunsuz şekilde oluşan maliyetlerin nasıl ele alınacağına dair bir şey söylenmemiş. Gizli değerlere erişilebildiyse API çağrıları yapıp masraf biriktirmek mümkün değil mi?
    Yoksa bu tamamen veri/kod hırsızlığıyla ilgili bir mesele mi?
    • İkisi de mümkün. Benim durumumda anahtar OpenAI çağrıları için kullanıldı ve neredeyse kesin olarak Spaces gizli değerlerinden sızdığını düşünüyorum.
  • ‘Space’ nedir?
    • Hugging Face’in Spaces ürününün kısaltılmış söylenişi.
      https://huggingface.co/docs/hub/en/spaces-overview
      Frontend/portal tarafı gibi görünüyor ve muhtemelen Python ile yazılmıştır. Django gibi bir şey de olabilir.
    • Kullanıcının kodunu çalıştıran bir sanal makine.
  • HF neden “gizli değer” saklıyor?
    Sadece açık anahtarları saklayıp, kullanıcının gizli anahtarı elinde tutarak istekleri imzalamasını sağlayamazlar mı?
    • HF üzerinde barındırılan bir uygulama oluşturup OpenAI veya Anthropic gibi harici API’lere erişebilirsiniz. Bu durumda API anahtarı HF gizli değerlerinde saklanır.
    • Genelde bir tarayıcı oturumu içinde gerçekten çalışması için bir tür token gerekir. Bu olay, iptal edilmesi gereken token’larla ilgili gibi görünüyor; parolalara benzerler ama tamamen aynı şey değiller.