Aiemmin tällä viikolla tietoturvatyökalu Socket ilmoitti, että useat suositut NPM-paketit vaarantuivat, mikä todennäköisesti vaaransi kehittäjäkoneet. Katsotaanpa, miten tämä hyväksikäyttö toimi ja kuinka voit suojautua siltä 👇
Vaihe 1: NPM-julkaisijan käyttöoikeus Hakkerit käyttivät tietojenkalastelua vaarantaakseen tilit, joilla oli julkaisuoikeudet näihin paketteihin. Tämän ansiosta hakkerit pystyivät julkaisemaan haitallisia versioita näistä suosituista NPM-paketeista.
Vaihe 2: Riippuvuusasennus lataa haittaohjelmat Kun kehittäjä sitten asentaa uuden haitallisen version, NPM-paketin "postinstall"-komentosarja suoritetaan asennuksen jälkeen ja lataa + suorittaa haittaohjelmat kehittäjäkoneessa. Tämä voi vaarantaa lisää kehittäjätilejä tai varastaa tunnistetietoja heidän tietokoneeltaan.
Kuinka voimme pysyä turvassa tällaiselta hyväksikäytöltä? Paketin kirjoittajana: Käytä 2FA:ta, jotta tietojenkalastelukampanjat eivät todennäköisesti vaaranna pakettiesi julkaisuoikeuksia. Kehittäjänä: 1. Lukitse riippuvuudet. Tämä on onneksi jo normaali käytäntö, muuten tämän hyväksikäytön vaikutus olisi ollut paljon suurempi. 2. Vältä asennuksen jälkeisiä komentosarjoja mahdollisuuksien mukaan. Useimmat paketit eivät tarvitse postinstall-komentosarjaa toimiakseen, joten niiden poistaminen käytöstä on suositeltavaa. MetaMask on luonut tätä varten loistavan avoimen lähdekoodin työkalun nimeltä LavaMoat. 3. Tarkasta riippuvuudet. Paras tapa suojautua tällaisilta haavoittuvuuksilta on olla varovainen riippuvuuksien suhteen, jotka lisäät projektiisi. Socket on erittäin hyödyllinen työkalu tällaisen auditoinnin automatisoinnissa.
522