DevOps güvenlik firması JFrog, JavaScript geliştiricilerinin sorunlu paketlerin kurulumunu algılamasına ve engellemesine yardımcı olmak için npm ile ilgili son sorunlara yanıt olarak üç açık kaynaklı güvenlik aracı yayınladı.

Saldırganların npm, RubyGems ve PyPi gibi paket yöneticilerine ve depolara bilgi hırsızları, keylogger’lar ve diğer kötü amaçlı yazılım türlerini gizlice sokmasıyla yazılım tedarik zinciri saldırıları, açık kaynaklı yazılım ekosisteminde büyük bir sorun haline geliyor. Çoğu durumda, kötü amaçlı kodu içeren paketler, iyi bilinen, meşru paketlere benzer adlara sahiptir. Diğer durumlarda, paketlerin kendileri kurcalanmıştır. Geçen hafta, yaygın olarak kullanılan iki JavaScript kitaplığının arkasındaki bakıcı kasıtlı olarak bozuldu renkler.js ve faker.js, bu paketlere dayanan on binlerce JavaScript uygulamasında sorunlara neden oluyor.

JFrog’un ileri teknolojiler ve güvenlik araştırmaları kıdemli direktörü Ilya Khivrich, “En son npm olayı, dünya çapındaki kurumsal sistemlerde büyük hasara yol açma potansiyeli ile keşfedilen bir dizi açık kaynaklı yazılım güvenlik açığının sadece bir başka örneğidir” diyor. “Güvenilir olduğuna inandığımız yazılım havuzlarının bile tek bir günde kolayca kırılabileceğini hatırlatmak güzel bir şey – ve bu nedenle her zaman iyi bir siber hijyen uygulamamız gerekiyor.”

Yeni araçlar — package_checker bir paketin belirli bir sürümünün güvenilir olup olmadığını doğrulamak için, npm-güvenli yükleyici eksik paketleri engellemek için npm-shrinkwrap-lock.json dosya ve package_issues_history paketleri sorunlu güncellemeler için izlemek için – GitHub’da mevcut.

package_checker şirket, “bağımlılığı güncellemeye karar vermeden önce kullanılmış paketlerin yeni sürümlerini aktif olarak test etmek için veya kuruluşlar tarafından dahili olarak kullanılan tüm yeni paket sürümlerini izlemek için” kullanılabileceğini söylüyor. Araç, paketin tedarik zinciri saldırılarında kullanıldığına dair ipuçlarını arar ve yeni sürümlerle olası riskleri tanımlar. Paketin sürümünün güvenilir olmaması gerektiğine dair işaretler arasında sürüm numaralarında “önemli bir boşluk”, uzun süredir bakımı yapılmayan bir paket için bir güncelleme, npm’deki ve GitHub deposundaki sürüm arasındaki tutarsızlıklar ve bunun nasıl yapılacağı yer alır. son sürüm yayınlandı.

Kullanmak yerine npm kurulumu (resmi yükleyici) paketleri küresel olarak yüklemek için geliştiriciler sarmalayıcıyı kullanabilir npm-güvenli yükleyici yükleme işlemine güvenlik eklemek için. npm küçültmek benzer yerleşik bir mekanizmadır. paketler-lock.json, yayınlanan bir paket için gerekli paketlerin sürümlerini ve bunların alt öğelerini kilitler. Bu, tüm bağımlılıkların kesin sürümlerinin dondurulduğu ve yakın zamanda güncellenen hatalı bir yazılım bileşeninin kullanılması riskinin azaltıldığı anlamına gelir. Sarma aracı, paketin kilit dosyasını arar ve eksikse paketi yüklemeyi reddeder.

kullanma hakkında bir not npm-güvenli yükleyici: Khivrich, bazı yasal paketlerin bile karşılamadığı bir gereklilik (shrinkwrap kilit dosyasına sahip olmak) getirerek dikkatli olunduğunu söylüyor.

package_issues_history yeni bir paket sürümünün sorunlu kod içerip içermediğini belirlemeye çalışan bir “deneysel araçtır”. Araç, bildirilen herhangi bir sorun olup olmadığını görmek için sürümün yayınlanmasını takip eden günlerde paketin GitHub sorunlarını izler. Geliştirici, sorunların sorunlu olup olmadığını belirler. Şirket, “Yeterince popüler bir kütüphane için, bağımlı projelerin sayısı yeterince büyük olabilir, böylece bir kırılma değişikliğinden kaynaklanan fazla konular, değişiklikle ilgisi olmayan ‘arka plan’ sorunları açısından önemli olacaktır” diyor.

Khivrich, aracın geliştirici iş akışında somut bir adım yerine erken sorun belirtilerini yakalamaya çalışan araştırmacılara yönelik olduğunu söylüyor.

Sırasında package_checker ve package_issues_history Khivrich, şüpheli görünen paket sürümleri üzerinde bayraklar açacaklarını, dikkate alınmayan diğer göstergeleri kaçırabileceklerini veya yanlışlıkla iyi huylu sürümleri işaretleyebileceklerini söylüyor. Kötü niyetli veya bozuk paketleri yasal olanlardan ayırt etmek için mükemmel bir yöntem yoktur, bu nedenle tedarik zinciri sorunlarına karşı koruma “birkaç farklı koruma katmanı gerektiren endüstri çapında devam eden bir zorluktur” diyor.



siber-1

Bir yanıt yazın