Åpen kildekode-pakker

Nye trusler på blokken: Skadelig programvare i pakker med åpen kildekode

Det åpne kildekode-økosystemet er en hjørnestein i moderne programvareutvikling, og fremmer innovasjon og samarbeid. Imidlertid gjør åpenheten det sårbart for ulike cybertrusler. I følge en rapport fra ComparitechI 2023 ble det identifisert mer enn 100 millioner typer skadelig programvare og potensielt uønskede applikasjoner (PUA), noe som viser at angrep relatert til skadelig programvare fortsatt er en alvorlig cybertrussel. 

Nye familier av skadelig programvare i pakker med åpen kildekode

Installering av manipulering av skadelig programvare

Slik fungerer de: Denne typen skadelig programvare tukler med installasjonsprosessen for pakker med åpen kildekode. Den injiserer skadelig kode under pakkeinstallasjonen, som deretter kan kjøres hver gang pakken brukes.

Sårbarheter utnyttet: Installer sabotasje skadevare utnytter tilliten som brukerne plass i åpen kildekode-repositorier og mangelen på strenge sikkerhetskontroller under pakkeinstallasjonsprosessen.

Beskyttelsesstrategier: For å beskytte mot manipulering av skadelig programvare er det avgjørende å bruke verifiserte og signerte pakker, aktivere tofaktorautentisering for lagringskontoer og gjennomføre regelmessige sikkerhetsrevisjoner av avhengigheter.

Eksempel på skadelig kode for installasjonsmanipulering: npm-pakken «colors» (2022)

Beskrivelse:

Pakken «colors» er et populært npm-bibliotek som brukes til å legge til fargeeffekter i konsolllogger. Den er mye brukt i forskjellige Node.js-applikasjoner.

Hvordan det fungerte:

Tidlig i 2022, en versjon av «Farger»-pakken ble ondsinnet endret for å inkludere et skript for uendelig løkke i hovedfilen. Denne endringen ble gjort av prosjektansvarlig selv, som angivelig gjorde det som en protest mot bedrifters bruk av åpen kildekode-prosjekter uten tilstrekkelig støtte eller donasjoner.

Innvirkning:

Denne modifikasjonen forårsaket at alle applikasjoner som brukte den kompromitterte versjonen av «colors» krasjet, noe som førte til omfattende forstyrrelser blant en rekke bedrifter og programvaresystemer som var avhengige av pakken for driften.

Leksjoner lært:

Denne hendelsen understreker sårbarhetene som ligger i den tillitsbaserte modellen for pakkehåndtering med åpen kildekode. Den fremhever behovet for at vedlikeholdere opprettholder etiske retningslinjer. standardog for brukere å gjennomføre grundige gjennomganger og tester av tredjepartsavhengigheter i utviklingsmiljøene sine. «Farger»-saken understreker også viktigheten av å støtte vedlikeholdere av åpen kildekode for å forhindre utbrenthet og uetiske gjengjeldelser.

Førstegangs bakdør

Slik fungerer de: Denne bakdøren aktiveres når en åpen kildekode-pakke importeres og brukes for første gang. Den kan sende systeminformasjon til en ekstern server eller laste ned ekstra nyttelaster.

Sårbarheter utnyttet: Førstegangsbruks-bakdører utnytter kjøringen av ubekreftet kode ved første gangs bruk av en pakke, og omgår ofte statiske analyseverktøy.

Beskyttelsesstrategier: Å gjennomgå og overvåke koden til nylig importerte pakker og bruke dynamiske analyseverktøy for å oppdage uvanlig oppførsel er nøkkelen til å forsvare seg mot bakdører for førstegangsbruk.

Eksempel på bakdør ved første gangs bruk: Webmin-bakdørhendelse (2019)

Beskrivelse:

Webmin er et populært nettbasert grensesnitt for systemadministrasjon for Unix. I 2019, det ble oppdaget at programvaren hadde blitt kompromittert med en backdoor som hadde vært tilstede i koden i over et år før den ble oppdaget.

Hvordan det fungerte:

Bakdøren ble i hemmelighet introdusert i Webmin GitHub-repositoriet gjennom en kompromittert byggeserver. Den skadelige koden var bare aktiv hvis administratoren endret passordet ved hjelp av Webmin-grensesnittet. Når den ble utløst, tillot den ekstern kommandokjøring med root-rettigheter.

Innvirkning:

Bakdøren ble levert med Webmin-versjoner fra 1.882 til 1.921, og påvirket potensielt over tre millioner nettsteder og servere. Bakdøren åpnet systemer for eksterne angripere som potensielt kunne få full kontroll over serveren, noe som førte til datatyveri, serverkapring og ytterligere nettverkskompromittering.

Leksjoner lært:

Denne hendelsen fremhever den kritiske sårbarheten som kan oppstå når byggeprosesser kompromitteres. Den understreker viktigheten av å sikre byggeservere og gjennomføre regelmessige sikkerhetsrevisjoner av programvareutviklingslivssyklusen. Webmin-saken demonstrerer også behovet for grundig kontroll av programvareoppdateringer, selv når de kommer fra pålitelige kilder.

Runtime-Compromise-orm

Slik fungerer de: Denne ormen ligger sovende i en åpen kildekode-pakke og aktiveres under kjøretid, og kan potensielt spre seg til andre pakker og systemer.

Sårbarheter utnyttet: Runtime-Compromise-ormer utnytter den sammenkoblede naturen til åpen kildekode-prosjekter, der én kompromittert pakke kan påvirke andre.

Beskyttelsesstrategier: Implementering av strenge systemer for overvåking av kjøretidsatferd og deteksjon av anomali kan bidra til å identifisere og redusere slike trusler.

Eksempel på P2PInfect som er kompromittert ved kjøring: Den rustne peer-to-peer selvreplikerende ormen

Beskrivelse:

P2PInfect er en peer-to-peer (P2P)-orm oppdaget av skyforskere ved Unit 42.

Denne ormen er skrevet i Rust, et svært skalerbart og skyvennlig programmeringsspråk, og er i stand til å infisere på tvers av plattformer og retter seg mot Redis, et populært databaseprogram med åpen kildekode som er mye brukt i skymiljøer.

Slik fungerer det:

Innledende utnyttelse:

  • P2PInfect utnytter sikkerhetsproblemet Lua sandbox escape, CVE-2022-0543, i sårbare Redis-instanser.
  • Sårbarheten lar ormen kjøre vilkårlig kode i Lua-skriptmiljøet.

Nyttelastlevering:

  • Når første tilgang er oppnådd, slipper P2PInfect en innledende nyttelast som etablerer P2P-kommunikasjon til et større nettverk.
  • Ormen trekker deretter ned ytterligere skadelige binærfiler, inkludert operativsystemspesifikke skript og skanneprogramvare.

Forplantning:

  • Den infiserte Redis-forekomsten blir med i P2P-nettverket, og gir tilgang til andre nyttelaster for fremtidige kompromitterte Redis-forekomster.
  • P2PInfect retter seg mot både Linux- og Windows-operativsystemer, noe som gjør den mer skalerbar og kraftig enn andre ormer.

Impact:

Forskere ved enhet 42 identifiserte over 307 000 unike Redis-systemer som kommuniserte offentlig i løpet av de siste to ukene, hvorav 934 kan være sårbare for denne P2P-ormvarianten.

P2PInfect fungerer som et eksempel på et alvorlig angrep trusselaktører kan utføre ved å bruke denne sårbarheten.

Leksjoner lært:

Utviklere må gjennomgå og verifisere pakkene sine, holde avhengigheter oppdatert og være forsiktige med pakkenavn og kildekode.

Årvåkenhet og kontinuerlig overvåking er avgjørende for å forhindre slike angrep i forsyningskjeden.

Avhengighetskjedeangrep

Slik fungerer de: Angripere kompromitterer én pakke i en avhengighetskjede, som deretter påvirker alle andre pakker som er avhengige av den.

Sårbarheter utnyttet: Dette angrepet utnytter tilliten til pakkeavhengigheter og den overlappende effekten av én kompromittert pakke.

Beskyttelsesstrategier: Bruk av et verktøy for analyse av programvaresammensetning for å spore og administrere komponenter med åpen kildekode og deres avhengigheter kan beskytte mot avhengighetskjedeangrep.

Eksempel på avhengighetskjedeangrep npm-pakken «event-stream» (2018): Et kompromiss i forsyningskjeden

Beskrivelse:

I 2018 ble den populære npm-pakken kalt «hendelsesstrøm» ble kompromittert.

Angrepet involverte en manipulasjon av avhengighetskjeden som påvirket intetanende brukere.

Hvordan det fungerte:

Innledende kompromiss:

  • Angriperen tok over en mindre brukt avhengighet kalt «flatmap-stream».
  • De injiserte ondsinnet kode i «flatmap-stream».

Formering:

  • Den kompromitterte «flatmap-stream» ble inkludert som en avhengighet i den mye brukte pakken «event-stream».
  • Mange prosjekter installerte uvitende den kompromitterte «event-stream»-pakken.

Innvirkning:

Angriperen fikk tilgang til sensitiv informasjon fra intetanende brukere.

Hendelsen fremhevet risikoen for angrep i forsyningskjeden via avhengigheter.

Leksjoner lært:

Utviklere må gjennomgå og verifisere pakkene sine, holde avhengigheter oppdatert og være forsiktige med pakkenavn og kildekode.

Årvåkenhet og kontinuerlig overvåking er avgjørende for å forhindre slike angrep i forsyningskjeden.

Beskytt dine åpen kildekode-prosjekter med Xygeni

Som diskutert er økosystemet med åpen kildekode et tveegget sverd – samtidig som det fremmer innovasjon, utsetter det også programvaren din for betydelige risikoer, som installere sabotasje skadelig programvare, bakdører ved første gangs bruk og avhengighetskjedeangrep. Konsekvensene av disse truslene er alvorlige, og det er avgjørende å beskytte programvarens forsyningskjede.

Xygeni tilbyr kraftige løsninger utviklet for å beskytte dine åpen kildekode-prosjekter mot disse utviklende truslene. Verktøyene våre sørger for at avhengighetene dine forblir sikre, slik at programvaren din holder seg robust og utviklingsprosessen din smidig.

Gjør smartere Decisioner med omfattende pakkeanalyse

Gitt kompleksiteten til pakker med åpen kildekode, er det avgjørende å ta informerte valg. Xygenis Komplett pakkeanalyse gir deg muligheten til å raskt evaluere sikkerheten til komponenter med åpen kildekode. Med plattformen vår kan du trygt velge trygge og pålitelige pakker, og unngå risikoen for usikre avhengigheter. Ved å lage smarte løsningercisMed joner på forhånd bygger du sterkere og sikrere applikasjoner som tåler tidens tann.

Forsvar proaktivt med sanntidsdeteksjon av skadelig programvare

Det er ikke nok å reagere på trusler etter at de har infiltrert systemet ditt. Derfor tilbyr Xygeni Sanntidsdeteksjon av skadelig programvare for å fange opp trusler som nulldagsskadevare i det øyeblikket de dukker opp. Systemet vårt blokkerer skadelig kode umiddelbart og forhindrer at den noen gang når utviklingsmiljøet ditt. Ved å handle raskt sikrer du at prosjektene dine forblir sikre helt fra starten av.

Sikre forsyningskjeden din med kontinuerlig overvåking

I den raske verdenen av programvareutvikling skjer det stadig endringer. Xygenis Kontinuerlig overvåking av forsyningskjeden holder et våkent øye med hver oppdatering. Vår proaktive beskyttelse oppdager og blokkerer mistenkelige endringer i avhengighetene dine, og forhindrer at kompromitterte pakker kommer inn i prosjektene dine. Med Xygeni opprettholder du en sikker og pålitelig forsyningskjede, og beskytter programvaren din mot potensielle trusler.

Ta kontroll over sikkerheten din med Xygeni

Som du har sett, er risikoene ved åpen kildekode-programvare reelle og økende. Xygenis sikkerhetsløsninger gir deg verktøyene for å håndtere disse risikoene effektivt. Ved å fokusere på tidlig deteksjon, omfattende pakkeanalyse og kontinuerlig overvåking kan du beskytte programvaren din mot nye trusler. Ikke la åpen kildekode-prosjektene dine være sårbare – forbedre sikkerhetsstrategien din i dag med Xygeni og få trygghet i vissheten om at programvaren og dataene dine er sikre.

Klar til å sikre åpen kildekode-prosjektene dine? La Xygeni hjelpe deg med å ligge i forkant av trusler og bygge robust programvare som kan håndtere hva enn som måtte komme.

Utforsk Xygenis funksjoner!
Se vår videodemo
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