350.000’den fazla açık kaynak deposu, yama uygulanmamış 15 yıllık bir güvenlik açığı içeren bir Python modülü içerdikleri için tehlikeye açık olabilir.
Bu, CVE-2007-4559 deliğinin Python’un tarfile modülünde olduğunu söyleyen Trellix’teki araştırmacıların bulgusu. Araştırmacılar, bir geliştiricinin yanlışlıkla güvenlik açığını kendi koduna dahil edebileceğini söylüyor – ve geliştiricilerin bunu yıllardır yaptığını öne sürüyorlar.
“Bugün, denetlenmeyen bu güvenlik açığı, dünya çapında yüz binlerce açık ve kapalı kaynaklı projeye kasıtsız olarak eklendi ve önemli bir yazılım tedarik zinciri saldırı yüzeyi oluşturdu.” Araştırmacılar Çarşamba günü bir blogda söyledi.
Uzun zamandır unutulan delik, araştırmacılar ilgisiz bir güvenlik açığını araştırırken keşfedildi. Güvenlik açığı başlangıçta yalnızca 6.8 önem derecesi olarak işaretlenmiş olsa da, araştırmacılar çoğu durumda bir saldırganın rastgele bir dosya yazma işleminden kod yürütme elde edebileceğini doğrulayabildi. CVE’nin ayrıntılı teknik anlayışı ve bir saldırının teknik sonuçları için bu ayrı bölüme bakın. Blog.
GitHub’ın işbirliğiyle araştırmacılar, yaklaşık 588.000 benzersiz depoda Python’un tarfile modülünü içeren yaklaşık 2.87 milyon açık kaynaklı dosya olduğunu belirleyebildiler. Bunlardan, çok sayıda endüstride tahminen 350.000 benzersiz açık kaynak deposu saldırılara karşı savunmasız olacaktır.
Blog, Python belgelerinin geliştiricileri tarfile sorunu hakkında uyardığını ve onları önceden incelemeden güvenilmeyen kaynaklardan arşivleri asla çıkarmamaya çağırdığını belirtiyor.
Kısaca, asıl güvenlik açığı, sterilize edilmemiş tarfile.extract() veya yerleşik tarfile.extractall() varsayılanlarını kullanan iki veya üç satır koddan kaynaklanır. tarfile.extract() veya tarfile.extractall() çağrılmadan önce tarfile üyesinin dosyalarını sterilize etmek için herhangi bir güvenlik kodu yazılmaması, kötü bir aktörün dosya sistemine erişmesini sağlayan bir dizin geçiş güvenlik açığına neden olur.
Trellix, GitHub ve diğer kod web sitelerinde gördüğü açık kaynak kodu için düzeltmeler yayınlamaya başlamak için otomatik araçlar oluşturdu. Şimdiye kadar, çekme isteklerine hazır 11.005 depo için yamaları var. Her yama, çatallı bir depoya eklenecek ve zaman içinde bir çekme isteği yapılacak. Trellix, bunun hem bireylerin hem de kuruluşların sorunun farkına varmasına ve onlara tek tıklamayla düzeltme sağlamasına yardımcı olacağını söylüyor.
Önümüzdeki birkaç hafta içinde, tüm Çekme İstekleri proje sahipleri tarafından kabul edilirse, yüzde 12’nin biraz üzerinde – yaklaşık 70.000 proje – düzeltilebilir.
Trellix araştırmacısı Charles McFarland, “Gerçek çözüm, sorunun köküne inmektir” diyor. “Yani, açık kaynak kodunun özenli güvenlik değerlendirmeleri ve zamanında yama. N-günler yıllarla değil günlerle ölçülmelidir. OSS’yi denetlemek için gereken özeni gösterdiğimizden emin olmalıyız [open-source software] ve istismar edilecek vahşi doğada savunmasız kod bırakmayın. Bu tarfile güvenlik açığı herhangi bir göstergeyse, ne yazık ki geride kaldık ve OSS’nin güvenli olmasını sağlamak için çabalarımızı artırmamız gerekiyor.”
Kaynak : https://www.itworldcanada.com/article/hundreds-of-thousands-of-applications-at-risk-from-unpatched-python-bug-say-researchers/504333