NPM omborida yashirincha zararli kod joylashtirilgan paketlar topildi

🔍 Kiberjinoyatchilar NPM omboriga zararli kodlarni joylashtirish uchun tobora murakkab usullardan foydalanmoqda. 2023-2024 yillarda zararli dasturlar soni kamaygani kuzatilgan bo‘lsada, 2024 yilda bu tendensiya davom etmayapti.

Yaqinda xavfsizlik tadqiqotchilari ethers-provider2 va ethers-providerz nomli ikkita NPM paketini aniqladilar. Ular o‘zining zararli niyatlarini ustalik bilan yashirgan bo‘lib, dasturchilarni chalg‘itish uchun mohirona usullardan foydalanadi. Ushbu paketlar foydalanuvchilarning lokal tizimiga reverse shell yaratish orqali hujumchiga masofadan nazorat o‘rnatish imkonini beradi.

Ushbu zararli paketlar lokal muhitda o‘rnatilgan ethers paketini nishonga oladi. Hujumchilar ularni «downloader» sifatida ishlatib, qurbon tizimiga qo‘shimcha zararli kodlarni tushirish imkoniyatini qo‘lga kiritadilar.

Zararli kod asosiy uch bosqichda ishlaydi:

  1. O‘rnatish paytida maxsus kodni yuklab olish – zararli skript masofaviy serverdan qo‘shimcha yuklamalarni oladi va darhol o‘zini o‘chirib tashlaydi.
  2. Ethers paketi tarkibini o‘zgartirishprovider-jsonrpc.js fayliga zararli kod kiritiladi va yangi loader.js fayli yaratiladi.
  3. Reverse shell yaratish – o‘zgartirilgan kod tizimda doimiy bo‘lib qoladi va hujumchining buyruqlarini bajaradi, hatto zararli NPM paketi o‘chirib tashlansa ham.

ethers-provider2 paketi keng ishlatiladigan ssh2 paketini taqlid qiladi. Biroq, bu paket ichida install.js fayliga zararli kod kiritilgan bo‘lib, o‘rnatilish jarayonida masofaviy serverdan ikkilamchi zararli dastur yuklab olinadi va darhol ishga tushiriladi.

Bu ikkilamchi zararli kod ethers paketining lokal versiyasini o‘zgartirish orqali uning tarkibiga hujumchi buyruqlarini bajara oladigan skriptlarni joylashtiradi. Shuningdek, loader.js fayli yaratiladi, bu esa tizimda «patching» jarayonini doimiy ravishda amalga oshiradi.

Eng xavflisi, bu zararli kod tizimdan ethers-provider2 paketi o‘chirib tashlansa ham ishlashda davom etadi, bu esa hujumchilarga doimiy nazorat imkoniyatini beradi.

ethers-providerz paketi ham xuddi shunday usulda ishlaydi. Unga uch xil versiya chiqarilgan bo‘lib, dastlabki versiyasi sinov varianti bo‘lgani taxmin qilinmoqda. Ikkinchi va uchinchi versiyalar esa ethers-provider2 bilan deyarli bir xil zararli kodni o‘z ichiga oladi.

Biroq, install.js faylidagi kod noto‘g‘ri yo‘llarni ishlatgan bo‘lib, u @ethersproject/providers paketini o‘zgartirishni maqsad qilgan, lekin bu to‘liq amalga oshmagan.

Shunga qaramay, loader.js fayli hosil qilingan va masofaviy serverdan ikkilamchi zararli yuklamani olish mexanizmi mavjud bo‘lgan.

Tadqiqotchilar bu kampaniya bilan bog‘liq bo‘lishi mumkin bo‘lgan qo‘shimcha paketlarni ham aniqladilar:

  • reproduction-hardhat
  • @theoretical123/providers

Hozirda bu paketlarning barchasi NPM platformasidan olib tashlangan, ammo bunday xavflar takrorlanmasligi kafolatlanmagan.

🔴 Zararli paketlar quyidagi xavflarni keltirib chiqarishi mumkin:

  • Lokal dasturlarni buzish va teskari (reverse shell) orqali nazorat o‘rnatish
  • Ishlatilayotgan paketlarga zararli kod qo‘shish va uni bexabar ravishda ishlab chiqaruvchilarga tarqatish
  • Kompaniyalar va dasturchilar uchun ta’minot zanjiri xavfsizligini buzish
  • Maxfiy ma’lumotlarning, jumladan, login va parollar hamda API kalitlarning o‘g‘irlanishi

Ushbu hujumlar faqat ishlab chiquvchilarga emas, balki oxirgi foydalanuvchilarga ham xavf soladi, chunki zararli kod mahsulot kodiga joylashtirilgach, uni ishlatuvchi har bir kishi ta’sirlanishi mumkin.

🔹 NPM foydalanuvchilari nimalarga e’tibor berishlari kerak?

NPM paketlarini yuklashda ehtiyot bo‘ling

  • Notanish yoki shubhali nomga ega paketlarni tekshirmasdan o‘rnatmang.
  • Ishonchli va keng ishlatiladigan paketlardan foydalaning.

Paketlarning manbasini tekshiring

  • npm audit buyrug‘i orqali yuklab olingan paketlarning xavfsizligini tekshiring.
  • Paketning GitHub sahifasi yoki rasmiy hujjatlarini ko‘rib chiqing.

Kodlarni o‘rnatishdan oldin ko‘rib chiqing

  • package.json va install.js fayllarini tekshirib, shubhali kodlar bor-yo‘qligini aniqlashga harakat qiling.

Automatlashtirilgan xavfsizlik vositalaridan foydalaning

  • Snyk, Dependabot, ReversingLabs, yoki npm audit kabi xavfsizlik vositalari orqali paketlarni skanerlash tavsiya etiladi.

Muhitni izolyatsiya qiling

  • Paketlarni avval sinov muhitida o‘rnatib, keyin ishlab chiqarish muhitiga o‘tkazing.
  • Docker kabi izolyatsiya vositalaridan foydalaning.

NPM omborlarida zararli kodlar kiritilgan paketlar soni kamaygandek tuyulsa ham, 2024 yilda bunday hujumlarning murakkabligi oshmoqda. ethers-provider2 va ethers-providerz paketlari orqali hujumchilar lokal paketlarni buzish, teskari shell yaratish va doimiy nazorat o‘rnatish imkoniyatini qo‘lga kiritganlar.

Shuning uchun dasturchilar, kompaniyalar va foydalanuvchilar yanada hushyor bo‘lishlari, xavfsizlik tekshiruvlarini doimiy ravishda amalga oshirishlari zarur.

📢 Eslatma: Dasturiy ta’minot xavfsizligini ta’minlash uchun ta’minot zanjiri xavfsizligini mustahkamlash, paketlarni doimiy tekshirish va kuchli xavfsizlik choralarini joriy etish muhimdir! 🚨