Süregelen bir tedarik zinciri saldırısı binlerce geliştirici deposundan kimlik bilgisi ve hassas veri topluyor.
Devam eden bir saldırı, binlerce geliştirici deposundan bulut sırlarını ve kimlik bilgilerini toplamak için ele geçirilmiş GitHub tokenlarını kötüye kullanıyor; bu durum, ele geçirilmiş geliştirici hesaplarının kurumsal bulut ortamlarına kapı açabileceğini gözler önüne seriyor.
Wiz Research tarafından hafta sonu yayımlanan rapora göre Gheist adını alan kampanya, 850'den fazla ele geçirilmiş GitHub hesabında 13 bin 500'den fazla kötücül dal bıraktı.
Kampanya kişisel projelerden özel kurumsal depolarına kadar her şeyi etkiliyor. Rapora göre Temmuz ayında GitHub'ın getirdiği güvenlik önlemleri sayesinde açık depolar korunuyor.
Wiz araştırmacısı Rami McCarthy Dark Reading'e verdiği demeçte, GitHub'ın eklediği kontrolün açık depoları iş akışı kötüye kullanımına karşı korumaya odaklandığını söyledi. Ancak kurumsal bir kimlik bilgisi ele geçirildiğinde bu kontrolün uygulanmadığını ekledi.
Wiz, Gheist'ten etkilenen GitHub hesapları ile depo tabanlı kötü amaçlı yazılım dağıtımı, GitHub Actions'ı hesaplama kaynakları için sömürme girişimleri ve diğer kötü amaçlı yazılım operasyonlarıyla bağlantılı olası enfeksiyonlar gibi diğer kötüye kullanım kampanyaları arasında örtüşme buldu.
McCarthy, bu örtüşmenin Gheist'i benzer kampanyalardan ayırdığını ve çalınan geliştirici tokenlarının tehdit aktörleri arasında yeniden kullanıldığını ya da paylaşıldığını gösterdiğini, bunun da tehdit ortamının karmaşıklığını ve hareketliliğini ortaya koyduğunu söyledi.
Siber Hırsızlığı İş Akışı Yürütüyor
Kampanya, çalınan bir token aracılığıyla erişilebilen her depoya eklenen sync-check adlı bir iş akışına dayanıyor.
Araştırmacılar, iş akışının deponun sırlarını kendi iş akışı günlüğüne yazdırmaya çalıştığını belirtti. Ardından araç, günlüğü GitHub API üzerinden indiriyor ve çalışmayı saniyeler sonra siliyor. Araç API isteklerini gheist kullanıcı ajanı ile taşıyor; bu da kampanyaya adını veriyor.
Wiz, faaliyeti 15 Eylül'de izlemeye başladı ve 24 Ekim itibarıyla operasyonun aktif ve gelişen durumda olduğunu bildirdi. Araştırmacılar faaliyeti GitHub'a bildirdi ve söz konusu hesapların yaklaşık üçte ikisi artık erişilemiyor; bu durum muhtemelen müdahale faaliyetine işaret ediyor.
Çalınan Tokenlar Daha Fazla Sır Hırsızlığını Besliyor
Araştırmacılar, tokenların büyük ölçüde iki kaynaktan geldiğini kaydetti: infostealer kötü amaçlı yazılım ve daha önceki yazılım tedarik zinciri ihlallerinde açığa çıkan kimlik bilgileri.
GitHub tokenları kullanıcıları ve uygulamaları depolar, kod ve yönetimsel işlevlere erişim için yetkilendirir; bu da onları projeleri ve kuruluşları tehlikeye atmak isteyen saldırganlar için değerli kılar.
Gheist, çalınan GitHub tokenlarını ci-sync- ile başlayan ve ardından altı karakter gelen dallar oluşturmak için kullanıyor. Saldırganlar daha sonra .github/workflows/sync-check.yml konumuna GitHub Actions iş akışını ekliyor ve taahhüt mesajı olarak ci: sync config kullanıyor.
Araştırmacılar, taahhüdün imzalanmadığını ve token sahibinin adına yapıldığını yazdı. Ortaya çıkan itme olayı, ortam değişkenlerini ve depo sırlarını günlüğe yazdırmaya çalışan bir iş akışını tetikliyor. Saldırı, çıktıları Base32 ile kodlamadan önce günlükleri GitHub API üzerinden alıyor ve iş akışı çalışmasını saniyeler sonra siliyor.
Araştırmacılar, sırların GitHub'ın kendi API'si üzerinden çıktığı için saldırgan alan adı ya da engellenebilecek dış bağlantı bulunmadığını açıkladı.
Kurumlar Hedefte
Wiz'in önemli bir bulgusu, açık depo korumasının uygulanmadığı özel depolar ve kurumsal ortamlarda başarılı saldırılar gözlemlemesi oldu. McCarthy Dark Reading'e, GitHub'a yönelik faaliyetlerin çoğunun aksine öncelikle açık depoları etkilediğini söyledi.
Tedarik zinciri güvenliği firması Cloudsmith'te güvenlik sorumlusu James Matchett e-posta görüşmesinde, saldırının kuruluşların en güvenli gördüğü ortamlarda başarılı olduğunu söyledi. Bir insan için aylar önce verilmiş bir kimlik bilgisinin hâlâ tam yazma yetkisi taşıdığını vurguladı. Özel, bir kontrol değildir. Kapsamlı, kısa ömürlü kimlik bilgileri, neyin itip çekebileceğinin sıkı bir envanteri ve her olaydan sonra döndürme disiplini kontroldür dedi.
Wiz, saldırganların birden fazla kullanıcıya ve otomasyon hesabına ait tokenları dolaşıma soktuğunu ve kötü amaçlı iş akışlarını yerleştirmekten önce özel depoları klonladığını gözlemledi. Saatler içinde aynı kuruluşun bulut kimlik bilgileri AWS Secrets Manager'ı numaralandırmak için kullanıldı.
McCarthy, kampanyanın yaklaşık bir düzine şirketi etkilediğini tahmin ettiklerini söyledi. Ancak GitHub depolarının kitlesel klonlanması ve temel kimlik bilgisi hırsızlığı dışında tutarlı ya da otomatik kötüye kullanım görmediklerini ekledi.
Token Kötüye Kullanımına Karşı Savunma
Token kötüye kullanımı, saldırganların geliştirici hattı üzerinden kuruluşlara sızmasının giderek yaygın bir yolu haline geliyor. Geçen yıl Black Hat Europe'da sunulan araştırmaya göre, bir önceki yıl içindeki en önemli yazılım tedarik zinciri olaylarından bazıları tehdit aktörlerinin GitHub açıklarını sömürmesiyle gerçekleşti. Savunmacılar bu nedenle geliştirici projelerini kritik kurumsal varlıklar olarak ele almalı.
Gheist ve diğer token kötüye kullanımı biçimlerine karşı savunma için Wiz, güvenlik ekiplerinin kötü amaçlı GitHub Actions iş akışlarını avlamasını, açığa çıkan sırları döndürmesini ve ele geçirilmiş kendi barındırılan çalıştırıcıları olası altyapı ihlalleri olarak ele almasını istedi.
Araştırmacılar özellikle ci-sync- ile başlayan ve ardından altı karakter gelen dalları aramalarını, tek değişikliğin yeni bir .github/workflows/sync-check.yml dosyası olduğu ve taahhüt mesajının ci: sync config olduğu durumları incelemelerini önerdi. Yöneticiler ayrıca tamamlanmasının ardından bir dakika içinde silinen ci-sync-* dallarındaki iş akışı çalışmaları ve gheist kullanıcı ajanı aktivitesi için GitHub denetim günlüklerini gözden geçirmeli.
GitHub token kötüye kullanımına karşı daha geniş koruma için güvenlik firması Secure.com'da mühendislik sorumlusu Waseem Ahmed, kuruluşların uzun ömürlü kişisel erişim tokenlarını GitHub Apps veya kısa ömürlü ince taneli tokenlarla değiştirmesini ve üretim sırlarını tutan her ortamda inceleyici gerektirmesini önerdi. Bu önlemler, geçerli tokenlar elde edilse bile saldırganların hassas kimlik bilgilerine erişmesini sınırlamaya yardımcı olabilir.