Amazon Web Services (AWS), son dört yılda Neuron SDK aracılığıyla aynı uzaktan kod yürütme (RCE) güvenlik açığını üç kez ortaya çıkardı ve Python paketi yükleme süreçlerinin güvenliğindeki kritik eksiklikleri vurguladı.
Önceki uyarılara ve düzeltmelere rağmen aynı bağımlılık karışıklığı güvenlik açığı, yazılım ekosistemindeki yeni paket sürümleriyle yeniden ortaya çıktı.
Sorun ilk olarak Nisan 2022’de Giraffe Security’nin, AWS’nin özel donanımında makine öğrenimi iş yüklerini etkinleştiren bir dizi Python kütüphanesi olan AWS’nin Neuron SDK’sındaki bir güvenlik açığını işaretlemesiyle keşfedildi.
Sorun, AWS’nin aşağıdakine benzer bir komut öneren resmi kurulum talimatlarından ve belgelerinden kaynaklanıyordu:
pip install transformers-neuronx --extra-index-url=https://pip.repos.neuron.amazonaws.com
İlk bakışta komut basit görünüyor ve Python’a talimat veriyor. pip
Paketi yüklemek için paket yöneticisi transformers-neuronx
AWS’ye özel depodan (https://pip.repos.neuron.amazonaws.com
). Ancak bu yaklaşım, nasıl kök saldığı gizli bir tehlike içermektedir. pip
parametreleri yönetir.
Teknik Sorun
--extra-index-url
parametresi paket indirmelerini yalnızca belirtilen özel depoyla sınırlamaz.
Bunun yerine izin verir pip
Paketler için varsayılan genel PyPi deposunu aramak, eğer paket belirtilen dizinde bulunamazsa ona geri dönmek. Bu, kritik bir güvenlik açığı yaratır: Kötü niyetli kişiler PyPi’ye aynı adı taşıyan bir paket yükleyerek kullanıcıları kötü amaçlı kod indirmeleri ve çalıştırmaları için kandırabilirler.
2022 yılında Giraffe Security, aşağıdaki gibi korumasız AWS paket adlarını iddia ederek bu güvenlik açığını doğruladı: mx-neuron
PyPi’de ve kusurun AWS’nin hata ödül programı aracılığıyla bildirilmesi.
AWS, etkilenen paketlerin yer tutucu “kukla” sürümlerini PyPi’ye yükleyerek sorunu derhal çözdü ve daha fazla istismarın önüne geçti. Ancak asıl neden; --extra-index-url
parametre—adreslenmemiş olarak kaldı.
Investigate Real-World Malicious Links, Malware & Phishing Attacks With ANY.RUN – Try for Free
Bir İhmal Örneği: 2020 ve 2022
2022’de yapılan daha ayrıntılı araştırmalar, bunun böyle bir güvenlik açığının ilk örneği olmadığını ortaya çıkardı. Açık kaynaklı bir yazılım veritabanı olan Libraries.io’dan elde edilen geçmiş veriler, AWS’nin torch-neuron
Paket 2020’de de benzer şekilde açığa çıkmıştı ve bu da aynı bağımlılık karışıklığı riskinin daha önceki bir örneğini gösteriyordu.
O sırada bir güvenlik araştırmacısı, kusuru vurgulamak için paketin çok sayıda sürümünü PyPi’ye yüklemiş ve AWS’yi düzeltici önlem almaya zorlamıştı.
AWS, sorunun en az 2020’den beri farkında olmasına rağmen kalıcı bir çözüm uygulayamadı ve bu da 2022’de tekrarlanan güvenlik açıklarının açığa çıkmasına neden oldu.
Hat Trick: 2024’ün Keşfi
Yıllar boyunca yapılan çok sayıda uyarı ve düzeltmeye rağmen Giraffe Security’nin Aralık 2024’teki son araştırması, AWS’nin bir kez daha aynı güvenlik açığını ortaya çıkardığını ortaya çıkardı.
Neuron SDK’nın özel paket dizini önemli ölçüde genişlemişti ancak AWS, PyPi’ye yeni eklenen paket adlarını önceden talep etmeyi ihmal etmişti. Bu, Giraffe Security’nin yeni paket adlarından bazılarını kendi PyPi hesabı altında başarıyla kaydetmesine olanak tanıdı; bu, AWS’nin geçmişteki hatalardan ders alamadığının açık bir göstergesidir.
Amazon’un tekrarlanan yanlış adımları, bu sorunu çözmeye yönelik yaklaşımları hakkında soru işaretlerine yol açıyor. Bir yandan geçmiş raporlara hızlı yanıt vermeleri, güvenlik açığını ciddiye aldıklarını gösteriyor. Ancak aynı hatanın tekrarlanması, bunu önleyecek sistemik süreçlerin eksikliğine işaret ediyor.
Bu gözetimi yönlendiren farklı bakış açıları olabilir:
- Bir Dokümantasyon Yanlış Adımı: AWS bunu müşterilerin belgelerini yanlış yorumlamasından kaynaklanan bir yapılandırma sorunu olarak görebilir. Deneyimli Python geliştiricileri Python ile ilgili risklerin farkındadır.
--extra-index-url
AWS’nin resmi eğitimlerde bu parametreye güvenmesi muhtemelen yanıltıcıdır. - Düşük Öncelikli Bir Sorun: AWS, müşterilerin kurulumlarının güvenliğini sağlama sorumluluğunu üstlendiğine inandığı için sorunu kritik olarak değerlendirmeyebilir. Ancak bu duruş, AWS’nin resmi belgelerinin konuya doğrudan katkıda bulunduğu gerçeğini göz ardı ediyor.
Bu durum, kritik bir güvenlik dersinin altını çiziyor: Resmi AWS belgeleri gibi güvenilir kaynaklar bile hatalardan muaf değildir.
Geliştiriciler, paket kurulum süreçlerini üretim sistemlerine uygulamadan önce her zaman incelemeli ve tam olarak anlamalıdır. Daha güvenli alternatifler (örneğin, --index-url
İndirmeleri yalnızca özel depolarla sınırlama parametresi veya Poetry gibi modern paket yöneticilerinden yararlanılması dikkate alınmalıdır.
Bu yinelenen sorun özel bir güvenlik açığı gibi görünse de bulut ekosistemindeki güvenlik açısından daha geniş sonuçlara sahiptir.
Bağımlılık karışıklığı saldırıları, özellikle daha fazla kuruluşun PyPi veya npm gibi genel depolarla birlikte özel paket kayıtlarına güvenmesi nedeniyle giderek artan bir endişe haline geldi.
Bu riskleri azaltma sorumluluğu yalnızca son kullanıcılara değil aynı zamanda araçlarının ve belgelerinin güvenlikle ilgili en iyi uygulamalara uygun olmasını sağlaması gereken AWS gibi hizmet sağlayıcılara da aittir.
AWS’nin Sessizliği
Yorum yapmak için Amazon ile defalarca iletişime geçme girişimlerine rağmen Giraffe Security bir yanıt alamadı. Dünyanın en büyük bulut sağlayıcılarından biri olan AWS’nin bu durumda sağlam ve kalıcı bir çözüme sahip olmaması, özellikle güvenliğe öncelik verme konusundaki itibarı göz önüne alındığında şaşırtıcıdır.
AWS’nin, Neuron SDK’sında aynı RCE güvenlik açığını giderme konusunda tekrarlanan başarısızlıkları, güvenlik süreçlerinde endişe verici bir aksaklığın altını çiziyor. Bireysel raporlara yönelik acil düzeltmeler hızlı bir şekilde gerçekleştirilirken, altta yatan soruna kalıcı bir çözüm getirilememesi endişe verici olmaya devam ediyor.
Find this News Interesting! Follow us on Google News, LinkedIn, and X to Get Instant Updates!