GitHub depoları, Dependabot olarak maskelenen bilgi çalma işlemleriyle bombardımana tutuldu


GitHub

Bilgisayar korsanları GitHub hesaplarını ihlal ediyor ve geliştiricilerin kimlik doğrulama sırlarını ve parolalarını çalmak için Dependabot katkıları gibi görünen kötü amaçlı kodlar ekliyor.

Kampanya, Temmuz 2023’te araştırmacıların, Dependabot’un taahhütleri gibi görünmek üzere yüzlerce kamu ve özel depoda olağandışı taahhütler keşfettiği zaman ortaya çıktı.

Dependabot, GitHub tarafından sağlanan, projeleri savunmasız bağımlılıklara karşı tarayan ve ardından güncellenmiş sürümleri yüklemek için otomatik olarak çekme istekleri yayınlayan otomatik bir araçtır.

Bugün Checkmarx tarafından bildirildiği üzere, bu sahte Dependabot katkıları, saldırganların projenin sırlarını çalmak için kötü amaçlı kod yerleştirme hedefiyle çalıntı GitHub erişim belirteçleri kullanılarak mümkün kılındı.

GitHub’ın Dependabot’unu taklit etme

Saldırı, saldırganların bir şekilde hedeflerinin kişisel GitHub erişim jetonlarını ele geçirmesiyle başladı; Checkmarx’ın bu konu hakkında hiçbir fikri yok.

Tehdit aktörleri daha sonra “dependabot” kullanıcı hesabı tarafından gönderilmiş gibi görünen “düzeltme” başlıklı sahte taahhüt mesajları oluşturmak için otomatik komut dosyaları kullanıyor gibi görünüyor[bot]”

Bu taahhütler, aşağıdaki iki eylemi gerçekleştiren projeye kötü amaçlı kod ekler:

  1. Hedeflenen GitHub projesindeki sırları çıkarın ve bunları saldırganın komuta ve kontrol sunucusuna gönderin.
  2. Web formu gönderimlerinden şifreleri çalan ve bunları aynı C2 adresine gönderen kötü amaçlı yazılım eklemek için, ihlal edilen veri havuzundaki mevcut JavaScript dosyalarını değiştirin.

Gizli bilgilerin sızması, GitHub eylem dosyası “hook.yml”nin, etkilenen depodaki her kod aktarma olayında tetiklenen yeni bir iş akışı olarak eklenmesiyle gerçekleştirilir.

Kötü niyetli taahhüt örneği
Kötü niyetli taahhüt örneği (Checmarx)

Parola hırsızı bileşeni, uzak bir siteden aşağıdaki komut dosyasını yükleyen tüm JavaScript (.js) dosyalarının sonuna karartılmış JavaScript enjekte eder. Bu komut dosyası, ‘password’ türündeki herhangi bir form girişinden şifre çalmak amacıyla gönderilen formları izleyecektir.

Şifre çalma kodu
Değiştirilen JS dosyaları tarafından çağrılan şifre çalma kodu (Checkmarx)

Güvenliği ihlal edilen birçok token özel depolara erişim sağladığından, saldırı hem genel hem de özel GitHub depolarını etkiledi.

Olası uzlaşma noktaları

Checkmarx’ın analistleri bazı kurbanların kayıtlarını inceledi ve hesaplarının çalıntı PAT’ler (kişisel erişim belirteçleri) kullanılarak ele geçirildiğini tespit etti.

Bu belirteçler, geliştiricinin bilgisayarlarında yerel olarak depolanır ve 2FA (iki faktörlü kimlik doğrulama) adımlarını geçmeden GitHub’da oturum açmak için kullanılabilir.

Checkmarx, “Ne yazık ki, belirtecin erişim günlüğü etkinliği hesabın denetim günlüğünde görünmüyor. Dolayısıyla, belirtecinizin güvenliği ihlal edilirse, erişim günlükleri eksik olduğundan emin olamazsınız” diye uyarıyor.

Saldırı zinciri
Saldırı zinciri (Checkmarx)

Siber güvenlik firması, saldırganların bu tokenleri tam olarak hangi yollarla çaldığı konusunda somut bir sonuca varamamış olsa da, bunun muhtemelen geliştiricinin cihazına kötü amaçlı bir paket aracılığıyla bulaşan kötü amaçlı yazılım bulaşması yoluyla olabileceğini varsayıyorlar.

Güvenliği ihlal edilen kullanıcıların çoğu Endonezya’dan geliyor ve bu da bu demografiye göre tasarlanmış hedefli bir saldırı anlamına geliyor. Ancak mevcut kanıtlar temayla ilgili spesifik ayrıntılar sağlamıyor.

Bu saldırılara karşı korunmak için önerilen bir önlem, GitHub’un her kullanıcıyı belirli izinlerle sınırlayan ve dolayısıyla uzlaşma durumunda riskleri azaltan ayrıntılı kişisel erişim belirteçlerine geçmektir.



Source link