15 Yaşındaki Python Hatası, Hacker'ın Kod 350k Python Projelerinde Kod Yürütmesine İzin Verdi
Trellix Gelişmiş Tehdit Araştırma Ekibi, Python'un katran dosyası modülünde bulunan ve CVSS puanı 6.8 olan CVE-2007-4559 olarak izlenen yamalanmamış 15 yaşındaki bir Python hatasını gözlemledi.
Trellix güvenlik araştırmacısı Kasimir Schulz, "Güvenlik açığı, tarfile modülündeki extract ve extractall işlevlerinde, bir saldırganın TAR arşivindeki dosya adlarına ".." dizisini ekleyerek rastgele dosyaların üzerine yazmasına izin veren bir yol çapraz saldırısıdır" dedi.
Bu güvenlik açığından başarıyla yararlanıldığında, saldırgan dosya yazma işleminden kod yürütülmesine olanak sağlayabilir.
Tarfile Güvenlik Açığı
Raporlar, tarfiles'ın daha sonra tarfile'ı arşivden çıkarmak için kullanılan birden fazla farklı dosya ve meta veriden oluşan bir koleksiyon olduğunu söylüyor. Bu durumda, saldırganlar bir dosyanın ayıklanması amaçlanan dizinden kaçmayı ve kod yürütmeyi gerçekleştirmeyi mümkün kılan kötü amaçlı bir tarfile yükleyerek bu kusurdan yararlanabilir.
Tarfile modülü, kullanıcıların bir dosyanın meta verilerini tar arşivine eklenmeden önce ayrıştırmak ve değiştirmek için kullanılabilecek bir filtre eklemesine olanak tanır. Bu, saldırganların küçük kod satırlarıyla istismarlarını oluşturmalarını kolaylaştırır.
"tarfile.extract() tarfile.extractall() çağrısı yapmadan önce üye dosyalarını sterilize etmek için herhangi bir güvenlik kodu yazılmaması, dizin geçişi güvenlik açığına neden olarak kötü bir aktörün dosya sistemine erişmesine olanak tanır" – Charles McFarland Trellix güvenlik araştırmacısı
Güvenlik açığının kökü Python'un tarfile modülündeki ayıklama işlevinden alınmıştır, TarInfo nesnesindeki bilgilere açıkça güvenir ve ayıklama işlevine geçirilen yolu ve TarInfo nesnesindeki adı birleştirerek saldırganın dizin çapraz saldırısı gerçekleştirmesine olanak tanır.
Ek olarak, extractall işlevi ayıklama işlevine dayanır, uzmanlar extractall işlevinin de dizin çapraz saldırısına karşı savunmasız olduğunu söylüyor.
"Bir saldırganın bu güvenlik açığından yararlanabilmesi için, dosyanın ayıklanması gereken dizinden kaçmak için dosya adına işletim sisteminin ayırıcısıyla birlikte ".." ("/" veya "\") eklemesi gerekir", Trellix
Güvenlik açığından yararlanmak inanılmaz derecede kolaydır
Araştırmacılar, bu güvenlik açığından yararlanmanın kolay olduğunu, karmaşık güvenlik hakkında fazla bilgiye ihtiyaç duymadığını söylüyor. Sonuç olarak, Python'un tarfile modülü, dünya çapında altyapıyı korkutan çok büyük bir tedarik zinciri sorunu haline geldi.
Yazımı okuduğunuz için teşekkürler eder, Saygılar ve sevgilerle.
Kaynak: Cyber Security News