Npm-pakker - Smittsomt intervju

Npm-pakker forkledd som godartede brukergrensesnittbiblioteker i Nord-Koreas «smittsomme intervju»-forsyningskjedeangrep

Nylig oppdagede ondsinnede npm-pakker utgir seg for å være harmløse frontend-hjelpere, men inneholder ondsinnet, forvirret kode.

Sikkerhetsforskningsteamet på Xygeni fastslått at disse npm-pakkene: 'react-ui-notify', 'react-tmedia', 'react-ui-animates', 'react-medias', 'react-mandes' er modifiserte derivater av 'bingologger', i seg selv en ondsinnet fork som etterligner strukturen og dokumentasjonen til den populære loggpakken 'pino' for å virke legitim. Dette dekket brukes til å utnytte utviklernes tillit og tiltrekke seg nedlastinger. I virkeligheten inneholder kodebasen en urelatert obfuskert fil som kjører i Node-miljøer. 

Bakgrunn for trusselaktøren: Kampanjen «Smittsomt intervju»

Ocuco Smittsom intervjukampanje er knyttet til trusselklyngen kjent som 'UNC4034', som rapporterer koblinger til nordkoreanske tilknyttede aktører Lazarus-gruppen or APT38, en velkjent statsstøttet gruppe knyttet til det nordkoreanske regimet. Trusselaktørene bak denne kampanjen har en historie med å målrette utviklere gjennom åpen kildekode-økosystemer, og distribuere lignende pakker som kjører skjulte nyttelaster. Til syvende og sist stjele kryptorelaterte data, kildekode og legitimasjon fra infiserte systemer.

Ocuco taktikker, teknikker og prosedyrer (TTP-er) observert i disse npm-pakkene følger samme mønster:

  • Etterlign prosjektnavn som høres legitime ut for å virke troverdige.
  • Bygg inn obfuskert kode i testfiler og hjelpeskript.
  • Kjør skjulte nyttelaster som samler inn sensitive data og sender dem til en ekstern kommando- og kontrollserver (C2).

Tekniske funn: Analyse av obfuskert nyttelast

Nyttelasten som finnes inni '/test/fixtures/eval/node_modules/test.list' bruker obfuskert JavaScript (oppslag av indeks-/array-strenger, kodede blokker) for å skjule lesbare strenger, og kontrollflyten vil bli utført når pakken er installert på grunn av postinstall-skriptet. 'npm kjør test || npm transpile || npm kjør hopp over'innenfor pakke.json. 

Analysen vår viste at disse pakkene inneholder en adaptiv skadevare som er laget for å bevege seg på tvers av operativsystemer (Windows, macOS eller Linux) og brukermiljøer. En funksjon som tyder på et bevisst fokus på tekniske brukere som ofte jobber på tvers av ulike miljøer.

Når skadevaren har etablert seg på et system, undersøker den omgivelsene sine og samler inn detaljert systeminformasjon slik som vertsnavn, plattform, hjemmekatalog og system temp-mappe før den utvider rekkevidden til applikasjoner som lagrer sensitive data, som f.eks. nettlesere (Chrome/Brave/Edge/Opera) og digitale lommebøkerDen søker rekursivt på vanlige steder for nettleserprofiler, lommebokfiler, nøkkelringer og mange dokument-/filtyper. Søkeord inkluderer lommebok, frørelaterte termer og mange filtyper som sannsynligvis inneholder legitimasjonsbeskrivelser eller hemmeligheter (*.env, *.key, *.wallet, *.json, *.txt, *.doc, osv..). Den inneholder ekskluderingslister for vanlige kataloger for å unngå åpenbare systemfiler.

Nyttelasten skriver en lokal markør/låsefil for å forhindre flere samtidige kjøringer og skriver dataene sine i midlertidige OS-kataloger for å unngå deteksjon.

Den obfuskerte nyttelasten inneholder også en kommunikasjonskanal til en ekstern server som fungerer som kommando- og kontrollknutepunkt. Gjennom denne kanalen kan den utdrive stjålet informasjon og motta ytterligere instruksjonerSelv om infrastrukturen i seg selv virker begrenset og spesialbygd, bekrefter dens eksistens angriperens intensjon om å opprettholde vedvarende kontroll over infiserte systemer.

Når skadevaren finner sensitive data, samler den dem og prøver å laste dem opp til et eksternt endepunkt som ligger på en skyserver ved hjelp av flerdelte/skjemadata, slik at stjålne filer legges ved forespørsler.

Indikatorer for kompromiss og anbefalinger for avbøtende tiltak

Organisasjoner rådes til å fjerne disse ondsinnede avhengighetene (react-ui-notify, react-tmedia, react-ui-animates, react-medias, react-mandes, bingo-logger) og oppdater disse miljøene for å sikre integritet. Systemer som kan ha blitt eksponert, bør få all legitimasjon og tilgangstokener rotert umiddelbart.

Nettverksadministratorer bør begrense utgående trafikk til disse IP-adressene 23.227.202.24, 131.153.22.25 og gjennomgå nylige forbindelser for avvik. Det anbefales sterkt å gjenoppbygge berørte miljøer fra verifiserte, rene kilder for å forhindre reinfeksjon og sikre integriteten til forsyningskjeden.

Bredere kontekst

Alt i alt er disse pakkene et annet eksempel Med det nye modenhetsnivået innen JavaScript-baserte forsyningskjedeangrep, lager motstandere i økende grad like pakker som låner struktur og dokumentasjon fra pålitelige prosjekter, modulær utvidelse og tar i bruk bedre teknikker for å gjøre deteksjon og begrensning til en utfordring. 

Denne utviklingen øker sannsynligheten for utilsiktet installasjon av intetanende utviklere og gir motstandere dypere tilgang til byggemiljøer, CI/CD systemer og kildekodelagre.

Åpen kildekode-økosystemer har blitt en foretrukket distribusjonsplattform for slike kampanjer. Ved å utnytte den iboende tilliten utviklere har til fellesskapspakker, kan angripere infiltrere programvarens forsyningskjede med minimal innsats og ofte uten umiddelbar oppdagelse eller konsekvenser.

Tidlig varsling om skadelig programvare (MEW) av Xygeni

Denne hendelsen ble opprinnelig identifisert gjennom Xygenis Tidlig advarsel om skadelig programvare system, som kontinuerlig overvåker pakkeregistre med åpen kildekode som npm, PyPI og Maven for skadelige pakker.

Vår deteksjonsmotor flagget automatisk disse pakkene som mistenkelige på grunn av deres uvanlige struktur, etterinstallasjonsskript og obfuskerte nyttelast. Som et resultat ble de skadelige pakkene (react-ui-notify, react-tmedia, react-ui-animates, react-medias og react-mandes) ble bekreftet å være skadelige av sikkerhetsteamet vårt og rapportert til npm før de kunne nå bredere bruk.

Hvordan Xygeni Early Warning beskytter din pipelines

  • Trusseloppdagelse i sanntidSkanner alle nye eller oppdaterte pakker i avhengighetsgrafen din og flagger mistenkelig atferd som OS-systemkall, kommandokjøring, obfuskert kode, typosquatting og mye annet.
  • Umiddelbare varslerVarsler sikkerhets- og DevOps-teamene dine i Slack, Jira eller e-post så snart en ny trussel dukker opp i miljøet ditt.
  • Utbedring med ett klikk: Genererer pull requests som fjerner eller erstatter sårbare avhengighetsversjoner på tvers av prosjektene dine.
  • Støttede økosystemer: Inkluderer for øyeblikket npm, PyPI, Maven og Packagist.
  • Xygeni hjelper deg med å ligge i forkant av angrep i forsyningskjeden ved å fange opp skadelige pakker på et tidlig stadium, før de når bygget ditt.

👉 Prøv Xygeni Malware Early Warning gratis og se hvor raskt du kan oppdage og nøytralisere trusler i forsyningskjeden på egenhånd pipelines.

sca-tools-programvare-verktøy for komposisjonsanalyse
Prioriter, utbedre og sikre programvarerisikoene dine
Få din gratis konto.
Ingen kredittkort kreves.

Sikre programvareutviklingen og -leveringen din

med Xygeni-produktpakken