Evet, @(-.-)/env adında bir NPM paketi var ve diğerleri bunun gibi

2 yıl önce

Garip bir şekilde-, @!-!/-, @(-.-)/env gibi NPM paketleri adlandırılır ve --vepl internetin en büyük yazılım kayıt defterinde var olmaya devam eder.

Bunların hepsi mutlaka bariz bir güvenlik riski oluşturmasa da, bazıları NPM zorunlu adlandırma yönergelerinden önce adlandırılmış ve potansiyel olarak araçları kırabilir.

Meslektaşım ve Sonatype Kıdemli Yazılım Mühendisi Lex Vorona, adlandırma kurallarını kesinlikle takip etmeyen veya oldukça çarpıcı isimlere sahip olan birkaç NPM paketine rastladı.

"@!-!/-npmjs.com'da ararsanız, size böyle bir paket olmadığını söyleyecektir. Ama bunu URL'ye koyarsanız, bunun bir paket olduğunu göreceksiniz: https: // www.npmjs.com/package/@ !-!/-, "Vorona BleepingComputer ile paylaştı.

Bir "@" ile başlayan paket adları, sembolün kapsamları veya NPM kayıt defterindeki ad alanlarını belirtmek için kullanıldığı için paketin kapsamını belirtir.

Örneğin, "Örnek Inc." adlı bir şirket NPM paketlerini "foo" ve "bar" ı @example kapsamı altında yayınlamayı seçebilir, bu paketleri @örnek/foo olarak görünür ve npmjs.com'da @örnek/bar. @ İşaretini takip eden ileri eğik çizgi (/), kapsam ile paket adı arasında bir sınırlayıcı veya ayırıcı olarak kullanılır.

Bu, paketin kendisine "-" denir, ancak garip bir şekilde adlandırılmış bir kapsam altında yayınlanır "!-!" Tamamen korkak bir takma ad.

Vorona, "Ayrıca aranamaz olan@----/--ve@-)/Utils var." Dedi.

NPM güvenlik platformuna göre, Socket, @----/-boş bir pakettir-manifest dışında işlevsel kod içermeyen, @-)/utils kullanımdan kaldırılır. @!-!/- minimal kod içerir.

Mühendis, bazıları bir metin emojisi içeren kapsam adlarına sahip garip bir şekilde adlandırılmış paketlerin bir listesini derledi:

Bu paketlerin tümü kötü niyetli olmasa da bir tehdit oluşturmasa da, bunlar kesinlikle alışılmadık isimlerle paketleri ayrıştırmaya alışık olmayan yazılım geliştirme araçlarını kesinlikle karıştırabilir veya kırabilir.

Özel bir raporda, BleepingComputer daha önce boş bir NPM paketine ışık tutmuştu "-" 700.000'den fazla indirme ile.

Bunun nedeni, NPM I gibi komut satırı talimatlarında yanlışlıkla ekstra bir tire ("-") yazdıkları, NPM istemcilerinin bu boş paketi indirmesine neden olacak şekilde geliştiricilerin, amaçladıkları pakete ek olarak bu boş paketi indirmesine neden oldu. indirmek.

"---Hepl" ("--help" yerine) gibi taktiksel olarak adlandırılan paketler, yazım hatası potansiyelleri göz önüne alındığında benzer bir etki elde edebilir.

BleepingComputer gözlemlendi, "--vepl" yüklenir yüklenmez, geliştiricinin konsolunda "PWND'siniz" mesajını görüntüler ve onu bir kavram kanıtı (POC) egzersizi yapar. Tüm paketler bu affedici olmayabilir.

Gerçekçi olsa da, çoğu durumda, bir komut satırı argümanı olarak "--vepl" sağlamak, araçlarınızın onu geçersiz bir seçenek olarak reddetmesine ve orada durmasına neden olabilir.

Tek harfli paketlerin diğer örnekleri veya NPM komutlarına benzeyenler arasında, ancak bunlarla sınırlı olmamak üzere: i, g, install, d ve s.

2017'den başlayarak, NPM, her iki paket adlarında büyük harflerin kullanılmasına izin vermeyerek hem de yazım yazılarına gizlice girme girişiminde noktalama işaretlerinin vicdansız kullanımına izin vererek yazım hatalarını engellemek için adlandırma kurallarında revizyonlar yaptı. Ancak, yürürlüğe giren bu kurallardan önce yayınlanan mevcut paketleri temizlemek daha zor olabilir.

Google Haftalık Krom Güvenlik Güncellemeleri ile Hacker'la savaşmak için

Yeni Python Aracı, Manifest Karışıklık Sorunları için NPM paketlerini kontrol ediyor

Microsoft Mac için Visual Studio Retires, Destek Bir Yılda Sonar

Bitwarden serbest ve açık kaynaklı E2EE Sırlar Yöneticisi

Winrar Zero-Day Nisan ayından bu yana Ticaret Hesaplarını Hacklemek

Kaynak: Bleeping Computer

More Posts