Tedarik Zinciri Saldırıları: Kötü Amaçlı Paketler ve Ele Geçirilmiş Cüzdan Kütüphaneleri
Kripto tedarik zinciri saldırısı, kötü amaçlı kodu güvendiğiniz yazılımın içine gizler. Ele geçirilmiş paketlerin ve cüzdan kütüphanelerinin nasıl çalıştığını ve kendinizi nasıl koruyacağınızı öğrenin.
Kripto tedarik zinciri saldırısı, suçluların cüzdanların, uygulamaların veya web sitelerinin bağımlı olduğu bir yazılımı, örneğin açık kaynaklı bir paketi, tarayıcı eklentisini veya güncelleme sunucusunu ele geçirerek kötü amaçlı kodun kullanıcılara güvenilir bir kanal üzerinden ulaşmasını sağlamasıdır. Kod genellikle hedef adresleri değiştirir, bir web sitesine wallet drainer enjekte eder veya kurtarma ifadelerini çalar; kurbanlar da çoğu zaman zaten güvendikleri bir ürünü kullanmak dışında hiçbir hata yapmaz.
Bu saldırılar yalnızca geliştiricileri değil, kriptodaki herkesi ilgilendirir. Modern cüzdanlar ve merkeziyetsiz uygulamalar yüzlerce üçüncü taraf bileşenden oluşur ve tek bir ele geçirilmiş bileşen aynı anda birçok ürünü etkileyebilir. Bu rehber saldırıların nasıl işlediğini, nelere dikkat etmeniz gerektiğini ve bir kullanıcı ya da geliştirici olarak riskinizi nasıl azaltabileceğinizi açıklıyor.
Tedarik Zinciri Saldırısı Nasıl İşler?
Bir kripto uygulamasının “tedarik zinciri”, onu oluşturan her şeydir: kod kütüphaneleri, derleme araçları, barındırma sağlayıcıları, içerik dağıtım ağları ve güncelleme sunucuları. Bir saldırı genellikle şu adımları izler:
- 1Erişim elde etme. Saldırgan popüler bir kütüphanenin bakımcısına oltalama yapar, terk edilmiş bir paketi satın alır, zayıf bir parolayı tahmin eder veya bir derleme sunucusundaki açığı istismar eder.
- 2Kötü amaçlı kod ekleme. Gizli kod içeren yeni bir sürüm yayımlar; bu kod çoğunlukla gizlenmiştir ve yalnızca belirli koşullarda, örneğin bir kripto cüzdanı bulunduğunda etkinleşecek şekilde tasarlanmıştır.
- 3Güncellemelerle yayılma. Kütüphanenin en son sürümünü otomatik olarak çeken uygulamalar kötü amaçlı kodu bir sonraki derlemelerine, web sitelerinde ise betik yüklenir yüklenmez dahil eder.
- 4Çalma. Kod panoya kopyalanan adresleri değiştirebilir, sahte bir işlem isteği gösterebilir, kurtarma ifadesi isteyebilir veya merkeziyetsiz bir uygulamanın ön yüzüne drainer enjekte edebilir.
- 5İz gizleme. Saldırganlar kodu kullandıktan sonra genellikle hızla kaldırır ve bu da soruşturmayı zorlaştırır.
Bu kalıbı izleyen belgelenmiş gerçek olaylar vardır. 2018’de popüler bir JavaScript paketine eklenen kötü amaçlı bir bağımlılık, belirli bir bitcoin cüzdan uygulamasının kullanıcılarından çalmak için tasarlanmıştı. Aralık 2023’te Ledger’ın Connect Kit kütüphanesinin ele geçirilmiş bir sürümü, kısa bir süre boyunca birkaç merkeziyetsiz uygulamanın kullanıcılarına wallet drainer göstermesine yol açtı. Her iki vaka da zayıf noktanın kullanıcılar değil, paylaşılan kod olduğunu gösteriyor. Daha ayrıntılı bilgi için Vanity Adres Riskleri ve Benzer Görünen Adresler yazımıza göz atın.
Yaygın Giriş Noktaları
| Giriş noktası | Nasıl kötüye kullanılır | Kimler etkilenir |
|---|---|---|
| Açık kaynaklı paketler (npm, PyPI ve benzerleri) | Kötü amaçlı bir sürüm yayımlanır veya adı çok benzeyen bir paket yüklenir | Paketi kullanan uygulamalar ve geliştiriciler |
| Üçüncü taraflardan yüklenen ön yüz betikleri | Betik, bir drainer enjekte edecek şekilde değiştirilir | Sitenin her ziyaretçisi |
| Tarayıcı eklentileri | Eklenti satılır veya ele geçirilir, ardından kötü amaçlı kodla güncellenir | Eklentiyi yüklemiş kullanıcılar |
| Uygulama güncellemeleri | Güncelleme sunucusu veya imzalama anahtarları ele geçirilir | Güncellemeyi yükleyen kullanıcılar |
| Geliştirici araçları ve yapay zekânın önerdiği paketler | Makul görünen sahte paket adları | Kontrol etmeden yükleyen geliştiriciler |
Typosquatting, yani popüler bir paketin adına çok benzeyen bir adla paket yüklemek özellikle yaygındır. Bir paket adını yanlış yazan geliştirici fark etmeden kötü amaçlı yazılım yükleyebilir.
Varsayımsal Bir Örnek
Bu gerçek bir vaka değil, açıklayıcı ve birleştirilmiş bir örnektir. Herkese açık bir paket kayıt deposundan popüler bir cüzdan bağlantı kütüphanesini yükleyen küçük bir merkeziyetsiz borsa düşünün. Bir sabah kütüphanenin bakımcısı oltalamaya kurban gider ve saldırgan yeni bir sürüm yayımlar. Borsanın web sitesi en son sürümü otomatik olarak yükler.
Birkaç saat boyunca cüzdanını bağlayan her kullanıcı normal bir swap isteğine benzeyen bir şey görür. Gerçekte bu, tokenlarını saldırganın sözleşmesine onaylama talebidir. Cüzdanlarının onay ekranını dikkatle okuyan kullanıcılar tanımadıkları bir sözleşme fark edip durur. Okumadan tıklayıp geçenler tokenlarını kaybeder. Borsa ekibi sorunu kullanıcılar kayıp bildirince fark eder ve bir uyarı yayımlar, ancak o sırada kod çoktan kaldırılmıştır.
Kullanıcılar İçin Uyarı İşaretleri
- Tanıdık bir uygulama birden daha önce hiç istemediği bir kurtarma ifadesi veya “cüzdan doğrulama” adımı ister.
- Rutin bir işlem, sınırsız onay veya bilinmeyen bir sözleşme için imza gibi olağandışı bir cüzdan isteği oluşturur.
- Donanım cüzdanınızın ekranında görünen adres, göndermek istediğiniz adresle eşleşmez.
- Bir tarayıcı eklentisi güncellenir ve özellikle tüm web sitelerindeki verileri okuyup değiştirmek için yeni izinler ister.
- Bir proje veya güvenlik araştırmacıları bir siteyi ya da uygulamayı kullanmamak için acil uyarılar yayımlar.
Bunların çoğu, benzer teknikler kullanan pano kötü amaçlı yazılımları ve sahte cüzdan uygulamaları ile örtüşür. Ayrıca bakınız: Kripto Kullanıcılarını Hedef Alan Sahte Tarayıcı Güncellemesi ve Captcha Kötü Amaçlı Yazılımları.
Kendinizi Nasıl Korursunuz?
Kullanıcı Olarak
- 1Bir donanım cüzdanı kullanın ve onaylamadan önce ekranındaki adresi, tutarı ve sözleşmeyi okuyun.
- 2Eklentileri en aza indirin. Kullanmadıklarınızı kaldırın ve bir eklentinin sahibi değiştiğinde ya da yeni izinler istediğinde dikkatli olun.
- 3Fonlarınızı ayırın. Uzun vadeli varlıklarınızı web sitelerine nadiren bağlanan bir cüzdanda tutun, günlük DeFi için başka bir cüzdan kullanın.
- 4Güvenlik uyarılarından sonra durun. Bir uygulama sorunun giderildiğini doğrulayana kadar onu kullanmaktan kaçının.
- 5Gereksiz onayları düzenli olarak iptal edin.
Geliştirici veya Proje Olarak
- Bağımlılık sürümlerini sabitleyin ve kilit dosyaları kullanın; yükseltmeden önce değişiklikleri inceleyin.
- Paket adlarını dikkatle kontrol edin ve bakımı iyi yapılan kütüphaneleri tercih edin.
- Paket kayıt deposu ve kod barındırma hesapları için çok faktörlü kimlik doğrulamayı zorunlu kılın.
- Kullanıcıların ikili dosyaları doğrulayabilmesi için imzalı sürümler ve mümkün olduğunda tekrarlanabilir derlemeler kullanın.
- Üçüncü taraf betikleri için content security policy ve subresource integrity kullanın.
Etkilendiyseniz Ne Yapmalısınız?
- 1Etkilenen uygulamayı veya eklentiyi kullanmayı bırakın ve tüm cüzdanların bağlantısını kesin.
- 2İşlem geçmişinizde etkilenen döneme ait onayları veya transferleri kontrol edin.
- 3Şüpheli onayları iptal edin ve kurtarma ifadeniz açığa çıkmış olabilirse kalan fonlarınızı yeni bir kurtarma ifadesine sahip yeni bir cüzdana taşıyın.
- 4İşlem hash’lerini ve adresleri toplayın, ardından olayı projenin resmi kanalları ve dolandırıcılık bildirim formumuz aracılığıyla bildirin.
Cüzdanınız ele geçirildiyse hemen yapmanız gerekenler yazısındaki kontrol listesinin tamamını izleyin.
Sonuç
Tedarik zinciri saldırıları güvenilir yazılımı bir hırsızlık kanalına dönüştürür; bu yüzden yalnızca şüpheli bağlantılardan kaçınmaya güvenemezsiniz. Donanım cüzdanınızın ekranını ve cüzdan isteklerini son kontrol noktası olarak görün, kullandığınız yazılım sayısını az tutun ve resmi güvenlik uyarılarına hızla tepki verin. Sorumluluğun büyük kısmı geliştiricilerdedir: yayımladığınız her şeyi sabitleyin, inceleyin ve imzalayın.
Sıkça sorulan sorular
Kriptoda tedarik zinciri saldırısı nedir?
Suçluların kullanıcılara doğrudan saldırmak yerine, diğer ürünlerin bağımlı olduğu bir yazılımı, örneğin bir kod kütüphanesini, tarayıcı eklentisini veya uygulama güncellemesini ele geçirdiği bir saldırıdır. Güvenilen yazılım güncellendiğinde kötü amaçlı kod, ona bağlı her uygulamaya ve kullanıcıya ulaşır; amaç çoğu zaman kripto çalmak veya adresleri değiştirmektir.
Tedarik zinciri saldırısı bir donanım cüzdanını etkileyebilir mi?
Donanım cüzdanının ekranı, bilgisayarınız veya bir web sitesi ele geçirilmiş olsa bile sizi korumak için tasarlanmıştır, çünkü gerçek adresi ve tutarı cihaz üzerinde onaylarsınız. Yine de ekranı okumazsanız saldırılar sizi kötü amaçlı bir işlemi onaylamaya kandırabilir; bu yüzden ayrıntıları her zaman cihazın kendisinde doğrulayın.
Kullandığım bir web sitesinin etkilenip etkilenmediğini nasıl anlarım?
Genellikle bunu etkilenen projenin resmi duyurularından veya güvenlik araştırmacılarından öğrenirsiniz. Kullandığınız bir proje ele geçirilmiş bir kütüphane veya ön yüz bildirirse, etkilenen dönemde herhangi bir şey imzalayıp imzalamadığınızı kontrol edin, onayları iptal edin ve gerekirse fonlarınızı yeni bir cüzdana taşıyın.
Açık kaynaklı cüzdanlar tedarik zinciri saldırılarına karşı güvende mi?
Açık kaynak, kodu daha fazla kişi inceleyebildiği için yardımcı olur ama yazılımı bağışık hâle getirmez. Kötü amaçlı kod bağımlılıklar, ele geçirilmiş bakımcı hesapları veya derleme sistemleri üzerinden sızabilir. Tekrarlanabilir derlemeler, imzalı sürümler ve dikkatli bağımlılık yönetimi riski azaltır.
