Bulut tabanlı depo barındırma hizmeti GitHub, kötü amaçlı depolar oluşturmak ve tedarik zinciri saldırıları başlatmak için kullanılabilecek yüksek önemdeki bir güvenlik açığını ele aldı.
bu RepoJacking teknik, ifşa Checkmarx tarafından, adı verilen bir koruma mekanizmasının baypas edilmesini gerektirir. popüler depo ad alanı emekliliğigeliştiricilerin aynı ada sahip güvenli olmayan depoları çekmesini önlemeyi amaçlayan .
Sorun, sorumlu açıklamanın ardından 19 Eylül 2022’de Microsoft’a ait yan kuruluş tarafından ele alındı.
RepoJacking, bir veri havuzunun yaratıcısı kullanıcı adını değiştirmeyi tercih ettiğinde meydana gelir ve potansiyel olarak bir tehdit aktörünün eski kullanıcı adını talep etmesine ve kullanıcıları indirmeleri için kandırmak amacıyla aynı ada sahip sahte bir veri havuzu yayınlamasına olanak tanır.
Microsoft’un karşı önlemi “emekliyken[s] Sahibinin hesabının yeniden adlandırılmasına veya silinmesine kadar geçen hafta içinde 100’den fazla klonu olan herhangi bir açık kaynak projesinin ad alanı,” Checkmarx bunun “depo transferi” özellik.
Bunun çalışma şekli aşağıdaki gibidir –
- Bir tehdit aktörü, “kurban” adlı bir kullanıcının sahip olduğu ancak farklı bir kullanıcı adı altında (“yardımcı” gibi) kullanımdan kaldırılan havuzla aynı ada sahip bir havuz oluşturur (örneğin, “repo”)
- “yardımcı”, “repo”nun sahipliğini “saldırgan” kullanıcı adıyla ikinci bir hesaba aktarır
- “saldırgan”, hesabın kullanıcı adını “kurban” olarak yeniden adlandırır
- “Kurban/repo” ad alanı artık düşmanın kontrolü altında
Başka bir deyişle, saldırı, GitHub’ın yalnızca ad alanını kullanımdan kaldırılmış olarak kabul ettiği tuhaflığa, yani kullanıcı adı ve depo adının birleşimine, kötü bir aktörün depo adını rastgele bir kullanıcı adıyla birlikte yeniden kullanmasına izin vermesine bağlıdır.
Başarılı sömürü saldırganların zehirli depoları zorlamalarına etkin bir şekilde izin vererek, yeniden adlandırılan kullanıcı adlarını tedarik zinciri saldırılarının kurbanı olma riskine sokabilirdi.
Checkmarx araştırmacısı Aviad Gershon, “Açıkça yönlendirilmezse, GitHub’daki tüm yeniden adlandırılan kullanıcı adları, Go, Swift ve Packagist paket yöneticilerinde 10.000’den fazla paket de dahil olmak üzere bu kusura karşı savunmasızdı.” Dedi.