I npm-pakkens afhængigheder med PureScript-installatoren blev der identificeret skadelige ændringer

I afhængighederne til npm-pakken med PureScript-installatoren opdaget skadelig kode, der viser sig ved forsøg på installation af pakken purescript. Skadelig kode er indlejret gennem afhængigheder load-from-cwd-or-npm og rate-map. Bemærkelsesværdigt er, at vedligeholdelsen af pakker med disse afhængigheder håndteres af den oprindelige forfatter af npm-pakken med PureScript-installatoren, som indtil for nylig har været ansvarlig for denne npm-pakke, men for omkring en måned siden blev pakken overdraget til andre vedligeholdere.

Problemet blev opdaget af en af de nye vedligeholdere af pakken, som fik rettighederne til vedligeholdelsen overdraget efter mange uenigheder og svære diskussioner med den oprindelige forfatter af npm-pakken purescript. De nye vedligeholdere er ansvarlige for PureScript-kompilatoren og insisterede på, at npm-pakken med dens installator skulle vedligeholdes af de samme vedligeholdere og ikke af en udenforstående. Forfatteren af npm-pakken med PureScript-installatoren var længe uenig, men efterfølgende gav han efter og overførte adgangen til repository. Nogle afhængigheder forblev dog under hans kontrol.

I sidste uge blev der udgivet en ny version af PureScript-kompilatoren 0.13.2, og
de nye vedligeholdere har forberedt en opdatering til npm-pakken med installatoren, i afhængighederne til hvilken den skadelige kode blev identificeret. Den afsatte vedligeholder af npm-pakken med installatoren PureScript har hævdet, at hans konto blev kompromitteret af ukendte angribere. Ikke desto mindre var de skadelige handlinger i deres nuværende form begrænset til at sabotere installationen af pakken, som blev den første version fra de nye vedligeholdere. De skadelige aktiviteter bestod i en tilbageholdelse, der resulterede i en fejlmeddelelse, når man forsøgte at installere pakken med kommandoen «npm i -g purescript» uden at udføre nogen åbenlys skadelig aktivitet.

Der blev identificeret to angreb. Flere timer efter den officielle udgivelse af den nye version af npm-pakken purescript blev der dannet en ny version af afhængigheden load-from-cwd-or-npm 3.0.2, hvor ændringerne medførte, at kaldet til loadFromCwdOrNpm() i stedet for listen af nødvendige binære filer til installation returnerede en strøm PassThrough, der spejlede indgående anmodninger som udgående værdier.

Efter 4 dage, da udviklerne havde fundet årsagen til fejlene og forberedte sig på at udsende en opdatering for at udelukke load-from-cwd-or-npm fra afhængighederne, blev der af angribere udgivet endnu en opdatering af load-from-cwd-or-npm 3.0.4, hvor den ondsindede kode blev fjernet. Ikke desto mindre blev der næsten straks udsendt en opdatering af en anden afhængighed, rate-map 1.0.3, hvor der blev tilføjet en rettelse, som blokerede callback-kald til indlæsning. Det vil sige, at ændringerne i de nye versioner af load-from-cwd-or-npm og rate-map var klare sabotagehandlinger. Desuden var der i den ondsindede kode en kontrol, der aktiverede fejlhandlinger kun ved installation af versionen fra nye maintainere og overhovedet ikke viste sig ved installation af ældre versioner.

Udviklerne løste problemet ved at udsende en opdatering, hvor de problematiske afhængigheder blev fjernet. For at udelukke spredning af kompromitteret kode på brugernes systemer efter et forsøg på at installere den problematiske version, anbefales det at slette indholdet i mapperne node_modules og filerne package-lock.json, hvorefter versionen af purescript bør sættes til minimum 0.13.2.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster