Manifest Karışıklık Saldırısı, Kötü Amaçlı Yazılımlara Kapı Açıyor


05 Temmuz 2023Ravie LakshmananTedarik Zinciri / Yazılım Güvenliği

Manifest Karışıklık Saldırısı

Node.js JavaScript çalışma zamanı ortamı için npm kaydı, adı verilen şeye karşı hassastır. açık kafa karışıklığı potansiyel olarak tehdit aktörlerinin proje bağımlılıklarında kötü amaçlı yazılımları gizlemesine veya kurulum sırasında rastgele komut dosyası yürütmesine izin verebilecek bir saldırı.

Eski bir GitHub ve npm mühendislik yöneticisi olan Darcy Clarke, geçen hafta yayınlanan teknik bir yazıda, “Bir npm paketinin bildirimi, tarball’ından bağımsız olarak yayınlanır” dedi. “Bildiriler, tarball’ın içeriğine göre asla tam olarak doğrulanmaz.”

Clarke, “Ekosistem, genel olarak manifesto ve tarball’ın içeriğinin tutarlı olduğunu varsaymıştır” diye ekledi.

Sorun, özünde, bildirim ve paket meta verilerinin ayrıştırılmış olması ve hiçbir zaman birbirleriyle çapraz referanslandırılmaması, dolayısıyla bir uyumsuzluk olduğunda beklenmedik davranışlara ve kötüye kullanıma yol açmasından kaynaklanmaktadır.

Sonuç olarak, bir tehdit aktörü, gizli bağımlılıklar içeren bir bildirim dosyasına (package.json) sahip bir modülü yayınlamak ve yükleme komut dosyalarını çalıştırmak için bu boşluktan yararlanabilir ve bu daha sonra bir tedarik zinciri saldırısına ve zehirlenmeye yol açabilir. bir geliştiricinin ortamı.

Sonatype araştırmacısı ve gazeteci Axe Sharma, “Etkili DevSecOps iş akışları ve araçları yerinde olmayan geliştirme ortamlarında, özellikle de uygulamalar körü körüne açık kaynak paketlerinde bulunan gerçek (savunmasız veya kötü niyetli) dosyalardan ziyade uygulama tezahürlerine güvendiğinde, açık kafa karışıklığı sorunlu hale geliyor.”

Bulgu, açık kaynak deposundan bir paket indirirken tek başına paket bildirim dosyalarında bulunan meta verilere güvenilemeyeceğinin altını çiziyor ve bu da kullanıcıların paketleri herhangi bir anormal özellik ve istismar için taramasını gerektiriyor.

Manifest Karışıklık Saldırısı

Clarke’a göre GitHub’ın sorunun en azından Kasım 2022’nin başından beri farkında olduğu söyleniyor ve Microsoft yan kuruluşu, Mart 2023 itibarıyla sorunu dahili olarak çözmeyi planladığını belirtiyor. Ancak sorun bugüne kadar çözülmedi.

Resmi bir düzeltmenin yokluğunda, güvenlik araştırmacısı Felix Pankratz, npm modüllerindeki bildirimler arasındaki uyumsuzlukları test etmek için kullanılabilecek bir Python betiği kullanıma sunmuştur.

Geliştirme aynı zamanda, geliştirici güvenlik şirketi Snyk’in Redhunt Labs ile ortaklaşa olarak, en iyi 1.000 GitHub kuruluşundan 11.900 depoyu güvensiz bağımlılıklar açısından inceleyerek 15.584 savunmasız bağımlılık dosyasında 1.229.601 kusur ortaya çıkarmasıyla geldi.

Çalışmada, “Güvenilmeyen verilerin serisini kaldırma, Java depolarında 130.831 büyük olayla en yaygın güvenlik açığı türüydü ve bu, tanımlanan toplam güvenlik açıklarının yüzde 40’ını oluşturuyor” dedi.

JavaScript tabanlı projelerde, prototip kirliliği 343.332 olayla önde gelen eksiklik olarak ortaya çıktı. Hizmet reddi (DoS) kusurları, sırasıyla 19.652 ve 56.331 olayla Python ve Ruby projelerinde en fazla katkıda bulunmuştur.

Güvenlik araştırmacıları Umair Nehri ve Vandana Verma Sehgal, “Yazılım tedarik zincirlerinin güvenlik durumunu bozan savunmasız bağımlılık tehdidi kalıcıdır” dedi. “Bu nedenle geliştiriciler, projelerinde kullandıkları bağımlılıklara dikkat etmeli ve bilinen herhangi bir güvenlik açığından yamalanmış halde tutmak için onları güncel tutmalıdır.”

Bu makaleyi ilginç buldunuz mu? Bizi takip edin twitter ve yayınladığımız daha özel içerikleri okumak için LinkedIn.





Source link