Ondsindede ændringer registreret i afhængigheder for npm-pakken med PureScript-installationsprogrammet

Afhængigt af npm-pakken med PureScript-installationsprogrammet identificeret ondsindet kode, der vises, når du forsøger at installere en pakke renskrift. Ondsindet kode er indlejret via afhængigheder indlæs-fra-cwd-eller-npm и rate-kort. Det er bemærkelsesværdigt, at vedligeholdelsen af ​​pakker med disse afhængigheder udføres af den oprindelige forfatter af npm-pakken med PureScript-installationsprogrammet, som indtil for nylig vedligeholdt denne npm-pakke, men for omkring en måned siden blev pakken overført til andre vedligeholdere.

Problemet blev opdaget af en af ​​de nye vedligeholdere af pakken, til hvem vedligeholdelsesrettighederne blev overført efter mange uenigheder og ubehagelige diskussioner med den oprindelige forfatter til den purescript npm-pakke. De nye vedligeholdere er ansvarlige for PureScript-kompileren og insisterede på, at NPM-pakken og dens installatør skulle vedligeholdes af de samme vedligeholdere og ikke af en ekstern part. Forfatteren af ​​npm-pakken med PureScript-installationsprogrammet var ikke enig i lang tid, men gav derefter efter og overførte adgang til depotet. Nogle afhængigheder forblev dog under hans kontrol.

I sidste uge blev PureScript 0.13.2-kompileren frigivet og
de nye vedligeholdere forberedte en tilsvarende opdatering af npm-pakken med et installationsprogram, i hvis afhængighed skadelig kode blev identificeret. Forfatteren af ​​npm-pakken med PureScript-installationsprogrammet, som blev fjernet fra sin post som vedligeholder, sagde, at hans konto blev kompromitteret af ukendte angribere. Men i sin nuværende form var den ondsindede kodes handlinger begrænset til at sabotere installationen af ​​pakken, som var den første version fra de nye vedligeholdere. Ondsindede handlinger svarede til en løkke med en fejlmeddelelse, når du forsøgte at installere en pakke med kommandoen "npm i -g purescript" uden at udføre nogen åbenlys ondsindet aktivitet.

To angreb blev opdaget. Et par timer efter den officielle udgivelse af den nye version af purescript npm-pakken, oprettede nogen en ny version af afhængigheden load-from-cwd-or-npm 3.0.2, hvor ændringer førte til opkaldet til loadFromCwdOrNpm() i stedet for af listen over nødvendige til installation binære filer returnerede stream Gå igennem, spejler inputforespørgsler som outputværdier.

4 dage senere, efter at udviklerne fandt ud af kilden til fejlene og forberedte sig på at frigive en opdatering for at udelukke load-from-cwd-or-npm fra afhængigheder, udgav angriberne en anden opdatering, load-from-cwd-or-npm 3.0.4, hvor den skadelige kode blev fjernet. Men næsten øjeblikkeligt blev der frigivet en opdatering til en anden afhængighed, rate-map 1.0.3, som tilføjede en rettelse til at blokere download-tilbagekald. De der. i begge tilfælde havde ændringerne i de nye versioner af load-from-cwd-or-npm og rate-map karakter af åbenlys sabotage. Desuden havde den ondsindede kode et tjek, der kun udløste fejlbehæftede handlinger ved installation af en udgivelse fra nye vedligeholdere, og som ikke dukkede op på nogen måde ved installation af ældre versioner.

Udviklerne løste problemet ved at frigive en opdatering, hvor de problematiske afhængigheder blev fjernet. For at forhindre kompromitteret kode i at sætte sig på brugersystemer efter forsøg på at installere en problematisk version af PureScript, anbefales det at slette indholdet af node_modules-bibliotekerne og package-lock.json-filerne og derefter indstille purescript version 0.13.2 som nedre grænse.

Kilde: opennet.ru

Tilføj en kommentar