API anahtarları veya belirteçler gibi sırların yanlışlıkla çevrimiçi olarak sızdırılmasını önlemeyi amaçlayan bir güvenlik özelliği olan GitHub push koruması, tüm genel depolar için varsayılan olarak açıktır.
Microsoft yan kuruluşu, “Bu, halka açık bir depoya yapılan herhangi bir gönderimde desteklenen bir sır tespit edildiğinde, bu sırrı taahhütlerinizden kaldırma veya sırrın güvenli olduğunu düşünüyorsanız bloğu atlama seçeneğine sahip olacağınız anlamına gelir” dedi.
Sızan sırlar birçok risk taşıyor
2022'de kodlayıcılar 1,027 milyar kayıtta 10.000.000'den fazla sırrı sızdırdı.
Şirket ayrıca, bu yılın başından bu yana GitHub'un halka açık depolarda 1 milyonun üzerinde sırrın sızdırıldığını tespit ettiğini de paylaştı.
Sızdırılan sırlar uzlaşmalara ve veri ihlallerine yol açabileceğinden (ve yol açacağından) bu olayların en aza indirilmesi çok önemlidir.
Güvenlik özelliği hakkında
GitHub, push korumasını geçen yıl tüm halka açık depoların sahiplerinin kullanımına sunmuştu, ancak şimdi bu özelliği varsayılan olarak açıyor.
Push koruması, kod taahhütlerini gönderilmeden önce tarar ve bir sır içeriyorsa geliştiriciler, entegre geliştirme ortamlarında (IDE) veya komut satırı arayüzünde (CLI) bir uyarı alır.
Daha sonra bloğu geçersiz kılmaya veya sırrı kaldırmaya ve taahhütlerini yeniden itmeye karar verebilirler.
“Her ne kadar tavsiye etmesek de, push korumasını tamamen kullanıcı güvenliği ayarlarınızdan da devre dışı bırakabilirsiniz. Ancak, bloğu atlama seçeneğini her zaman elinizde tuttuğunuz için, push korumasını etkin bırakmanızı ve gerektiğinde istisnalar yapmanızı öneririz,” diye açıkladı GitHub'dan Eric Tooley ve Courtney Claessens.
Bu özellik, 180 hizmet+ sağlayıcısından gelen 200'den fazla jeton türünü ve modelini algılar.
“Belirli tokenlerin eski sürümleri, push koruması tarafından desteklenmeyebilir, çünkü bu tokenlar, en yeni sürümlerinden daha fazla sayıda hatalı pozitif sonuç üretebilir. Push koruması eski belirteçler için de geçerli olmayabilir. Şirket, Azure Storage Keys gibi tokenlar için GitHub'un eski modellerle eşleşen tokenleri değil, yalnızca yeni oluşturulan tokenları desteklediğini belirtiyor.