Ondsinnet kode funnet i purescript npm-installasjonsprogrammet

npm pureskript

For noen dager siden skadelig kode ble oppdaget i avhengighetene til npm-pakken med PureScript-installasjonsprogrammet, som manifesteres når du prøver å installere purescript-pakken.

Ondsinnet kode innebygd via load-from-cwd-or-npm avhengigheter og fartskartavhengigheter. Det skal bemerkes at den opprinnelige forfatteren av npm-pakken med PureScript-installasjonsprogrammet, som inntil nylig var engasjert i å vedlikeholde denne npm-pakken, men pakken ble sendt til andre vedlikeholdspersoner, er ansvarlig for å ledsage pakker med disse avhengighetene.

Om problemet

Problemet ble oppdaget av en av de nye analytikerne av pakken, som vedlikeholdsrettighetene ble overført til etter mange uenigheter og stygge diskusjoner med den opprinnelige forfatteren av npm purescript-pakken.

De nye vedlikeholderne er ansvarlig for PureScript-kompilatoren og de insisterte på at NPM-pakken med installatøren skulle repareres av vedlikeholdere selv, ikke av en utvikler utenfor prosjektet.

Forfatteren av npm-pakken med PureScript-installasjonsprogrammet var lenge uenig, men ga seg deretter og ga tilgang til depotet. Imidlertid ble noen avhengigheter igjen under hans kontroll.

I forrige uke ble lanseringen av PureScript 0.13.2-kompilatoren kunngjort og de nye vedlikeholdspersonene utarbeidet den tilsvarende oppdateringen av npm-pakken med installatøren, som den ondsinnede koden ble oppdaget for.

Den ondsinnede koden ble først satt inn i npm-pakken "load-from-cwd-or-npm" i versjon 3.0.2 og deretter i takstkartpakken fra versjon 1.0.3. I løpet av de siste dagene ble flere versjoner av begge pakkene publisert.

Skiftet fra innlegget som fulgte forfatteren av npm-pakken med PureScript-installatøren, sa han at kontoen hans ble kompromittert av ukjente angripere.

Imidlertid i gjeldende form var handlingene til den ondsinnede koden bare begrenset ved å sabotere pakkeinstallasjonen, som var den første versjonen av de nye vedlikeholdene. Ondsinnede handlinger ble løst ut når du forsøkte å installere en pakke med kommandoen "npm i -g purescript" uten å utføre noen eksplisitt ondsinnet aktivitet.

To angrep ble identifisert

Kort sagt koden saboterer installasjonsprogrammet for purescript npm for å forhindre nedlasting, som får installatøren til å henge under trinnet "Sjekk om det er gitt en forhåndskompilert binær for plattformen din".

Den første utnyttelsen gjorde dette ved å bryte lasten-fra-cwd-eller-npm-pakken slik at ethvert anrop til loadFromCwdOrNpm () vil returnere en gjennomgangssekvens i stedet for den forventede pakken (i dette tilfellet forespørselspakken, som vi brukte for å laste ned kompilatorbinariene). Den andre iterasjonen av utnyttelsen gjorde dette ved å endre en kildefil for å forhindre at en tilbakeringing fra nedlastingen ble sparket.

4 dager senere utviklerne forsto kilden til feilene og forberedte seg på å gi ut en oppdatering for å ekskludere belastning fra cwd-o-npm fra avhengigheter, ga angriperne ut en annen oppdatering load-from-cwd-or-npm 3.0.4, der den ondsinnede koden er fjernet.

Imidlertid ble en oppdatering til en annen avhengighet av Rate-Map 1.0.3 utgitt nesten umiddelbart, der en løsning ble lagt til som blokkerer tilbakeringingsanropet for nedlasting.

I begge tilfeller var endringene i de nye versjonene av last-fra-cwd-eller-npm og karthastigheten av et tilsynelatende avvik.

I den ondsinnede koden var det også en sjekk som utløste de mislykkede handlingene bare når du installerte versjonen av de nye vedlikeholdspersonene, og som ikke dukket opp når de tidligere versjonene ble installert.

Utviklerne løste problemet ved å gi ut en oppdatering der de problematiske avhengighetene ble fjernet.

For å forhindre at kompromittert kode blir installert på brukernes systemer, etter å ha prøvd å installere den problematiske versjonen av PureScript.

Endelig anbefaler utvikleren til alle som har nevnte versjoner av pakken på systemet sitt fjern innholdet i node_modules-katalogene og package-lock.json-filene, og sett deretter purescript-versjonen 0.13.2.


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.