Fra 2019 til 2022 oversteg den gjennomsnittlige årlige økningen i angrep på programvareforsyningskjeden 700 %, en voksende trend med en økonomisk innvirkning som forventes å overstige 80 milliarder dollar i 2026. I erkjennelse av alvorlighetsgraden av dette problemet, National Security Agency (NSA) og Byrået for nettsikkerhet og infrastruktursikkerhet (CISA) utgitt viktige retningslinjer å sikre CI/CD miljøer, og adresserer den økende trusselen fra såkalte ondsinnede cyberaktører (MCA-er) som utnytter sårbarheter.
Disse retningslinjene fokuserer spesielt på å forhindre avsløring av hemmeligheter innen CI/CD pipelines og tilby spesifikke innsikter.
Hva er de mest kritiske CI/CD sikkerhetstrusler?
Som NSA-retningslinjene sier, sikring av en CI/CD miljøet krever at man gjenkjenner og forsvarer seg mot ulike typer sikkerhetstrusler som kan påvirke CI/CD operasjoner. Her er noen vanlige risikoer som finnes i CI/CD pipelines, sammen med OWASP Topp 10 CI/CD Sikkerhetsrisiko:
- Utilstrekkelige flytkontrollmekanismerDenne risikoen refererer til mangelen på skikkelige kontroller for å styre dataflyten og oppgavene i CI/CD pipelineUten disse kontrollene kan uautoriserte endringer bli introdusert i pipeline, noe som fører til potensielle sikkerhetssårbarheter.
- Mangelfull identitets- og tilgangshåndteringDenne risikoen innebærer å ikke administrere ordentlig hvem som har tilgang til CI/CD pipeline og hva de kan gjøre. Uten riktig identitets- og tilgangshåndtering kan uautoriserte personer få tilgang til pipeline og introdusere ondsinnede endringer.
- Misbruk av avhengighetskjedenDenne risikoen refererer til potensialet for at angripere kan utnytte sårbarheter i avhengighetene som brukes av programvaren din. Hvis disse avhengighetene ikke administreres og sikres på riktig måte, kan de gi en vei for angrep.
- Forgiftet Pipeline GjennomføringDenne risikoen innebærer at angripere potensielt kan introdusere skadelig kode i CI/CD pipelineDette kan føre til kjøring av skadelig kode i produksjonsmiljøet.
- Utilstrekkelig PBAC (Pipeline-Baserte tilgangskontroller)Denne risikoen refererer til mangelen på skikkelige tilgangskontroller basert på pipelineUten disse kontrollene kan uautoriserte personer få tilgang til sensitive deler av pipeline.
- Utilstrekkelig legitimasjonshygieneDenne risikoen innebærer å ikke administrere og sikre legitimasjon som brukes i CI/CD pipelineHvis disse påloggingsinformasjonene blir kompromittert, kan det gi en angriper tilgang til pipeline.
- Usikker systemkonfigurasjonDenne risikoen refererer til potensielle sikkerhetssårbarheter på grunn av
feil konfigurerte systemer i CI/CD pipelineAngripere kan utnytte disse sårbarhetene. - Uregulert bruk av tredjepartstjenesterDenne risikoen innebærer bruk av tredjepartstjenester uten skikkelig tilsyn og kontroll. Disse tjenestene kan introdusere sikkerhetsproblemer hvis de ikke administreres og sikres riktig.
- Feil validering av artefaktintegritetDenne risikoen refererer til mangelen på skikkelig validering av artefakter produsert av CI/CD pipelineUten skikkelig validering kan skadelige eller kompromitterte artefakter bli introdusert i produksjonsmiljøet.
- Utilstrekkelig logging og synlighetDenne risikoen innebærer utilstrekkelig logging og innsyn i
aktiviteter i CI/CD pipelineDet kan være vanskelig å oppdage og reagere på sikkerhetshendelser uten skikkelig logging og synlighet
Verste trusselscenarioer og hvordan man kan håndtere dem
Angripere tilegner seg en utviklerlegitimasjon for å få tilgang til et Git-repositorium:
- Minimer bruken av langsiktige legitimasjonsbevis.
- Bruk topersonsregler (2PR) for alle kodeoppdateringer.
- Sikre brukerkontoer og implementer retningslinjer for færrest rettigheter.
- Implementer nettverkssegmentering og trafikkfiltrering
- SSCS verktøy som Xygeni automatisk oppdage feilkonfigurasjoner i disse områdene og håndheve anvendelsen av sikre bedriftspolicyer.
Kompromittering av forsyningskjeden til et applikasjonsbibliotek, verktøy eller containerbilde i en CI/CD pipeline:
- Begrens upålitelige biblioteker og verktøy og analyser committede verktøy.
- Implementer EDR-verktøy og revisjon.
- Hold CI/CD verktøy, programvare og operativsystemer oppdatert.
- Xygeni plattformen automatisk oppdaterer skannefunksjonene sine i hver skanning for å oppdage de nyeste skadelige komponentene som kan påvirke programvareutgivelsen din.
Kompromiss av et CI/CD miljø som endrer konfigurasjoner eller injiserer ondsinnede avhengigheter:
- Analyser committed-kode og integrer sikkerhetsskanning i CI/CD.
- Implementere SBOM og SCA og implementere EDR-verktøy.
- Legg til signaturer til CI/CD konfigurer og bekreft det.
- Xygeni evner i analysere hele settet med ressurser involvert i programvareutviklingen, bygging og levering muliggjøre deteksjon av enhver trussel under CI/CD behandle og generere SBOM som bevis for revisjonen og kundene dine.
Følgende bilde viser forskjellige angrepsvektorer ved hjelp av eksemplet med en CI/CD pipelineDisse angrepsvektorene er svært like de som brukes i andre CI/CD angrep.

Muliggjøring av en ekte nulltillitstilnærming:
NSA aktive herdingsstrategier
Denne retningslinjen lister opp flere strategier som kan brukes for å forbedre beskyttelsen av programvareforsyningskjeden. Her finner du en oversikt over de viktigste:
Ta i bruk NSA-anbefalt kryptografi
Bruk av utdaterte og svake kryptografiske algoritmer utgjør betydelig risiko for CI/CD pipelines. Det kan føre til eksponering av sensitive data, datalekkasjer, kompromittert autentisering og usikre økter.
Ved å utnytte disse sårbarhetene kan ondsinnede aktører omgå CI/CD pipeline og kompromittere programvarens forsyningskjede. For å redusere disse risikoene, NSA og CISEn anbefaling om å implementere og konfigurere robuste kryptografiske algoritmer, slik som de som er spesifisert av National Institute of Standards og teknologi (NIST) når du konfigurerer skyapplikasjoner og -tjenester.
Minimer langsiktig bruk av legitimasjon
Når det gjelder menneskelig autentisering, bør du alltid prioritere identitetsføderasjon og sikkerhetstokener som er motstandsdyktige mot phishing-angrep. Disse tiltakene bør brukes for å få tak i midlertidig SSH og andre nøkler.
På samme måte, for programvare-til-programvare-autentisering, er det tilrådelig å minimere bruken av programvarebaserte langsiktige legitimasjonsoplysninger når det er mulig.
Detektorer fra verktøy som Xygeni støtter deteksjon av alle typer legitimasjon og hemmeligheter i titalls formater langs hele programvareforsyningskjeden: kode, pipelines, IaC konfigurasjoner, osv.
Legg til signaturer til CI/CD konfigurasjon og bekreft dem alltid
Gjennom hele CI/CD Uansett utviklingsstadium er det avgjørende å sikre at koden signeres konsekvent og korrekt, og at signaturen verifiseres.
Hvis signaturen ikke valideres, bør årsaken til valideringsproblemet undersøkes grundig.
Reduser passordrisikoer gjennom flerfaktorautentisering (MFA)
Det kan også suppleres med rollebasert tilgangskontroll (RBAC). I dag brukes MFA ofte i alle typer tjenester. Det bidrar til å håndheve sikkerheten, samtidig som det brukes for både interne og eksterne brukere.
RBAC følger prinsippet om minste privilegium og sørger for at brukere kun får de nødvendige tillatelsene som kreves for å utføre sine spesifikke oppgaver.
Bedriftspolicyer bør ta hensyn til dagens obligatoriske konfigurasjoner. Automatiserte samsvars- og revisjonsfunksjoner for SSCS verktøy håndhever dem alle på tvers av hele DevOps-infrastrukturen.
Implementer retningslinjer for færrest privilegier for CI/CD Adgang
Det er avgjørende å kun gi utviklere tilgang til pipelineog komponenter som er direkte relevante for deres tildelte oppgaver.
Det er avgjørende å implementere separasjon av oppgaver, der utviklere som er ansvarlige for å sjekke inn kildekoden ikke trenger rettighetene til å oppdatere byggemiljøet. På samme måte trenger ikke ingeniører som fører tilsyn med byggeprosjekter lese- og skrivetilgang til kildekoden. For en mer detaljert veiledning om implementering av sikkerhetskontroller, se NIST SP 800-53.
Bruk topersonsregelen (2PR) for kodeoppdateringer
Å følge praksisen med to-personers regler fremmer ikke bare kodekvaliteten, men reduserer også sannsynligheten for å introdusere skadelig kode hvis en utviklers legitimasjon kompromitteres.
SSCS Verktøy som Xygeni inkluderer vanligvis en spesifikk sjekk som avgjør om prosjektet krever kodegjennomgang før pull requests (sammenslåingsforespørsler) slås sammen.
Denne sjekken følger gjeldende Open SSF-sikkerhet standard.
Sikre brukerkontoer og hemmeligheter
Det er avgjørende å revidere brukerkontoer og konfigurere tilgangskontroller basert på prinsippene om minste mulige rettigheter og separasjon av oppgaver.
I tillegg er sikker håndtering av hemmeligheter, tokener og legitimasjon innenfor CI/CD pipeline er viktig.
Overfør aldri hemmeligheter i klartekst noe sted i pipeline, slik at de aldri blir innebygd i programvare som kan reverskonstrueres.
Oppretthold en omfattende oversikt over alle tredjeparts- og åpen kildekode-komponenter i kodebasen ved å implementere en programvareliste (SBOM):
Ocuco SBOM hjelper organisasjoner med å forstå potensielle sårbarheter i kode og forhindre bruk av utdaterte og uautoriserte komponenter. Samsvar med forskrifter, som FDA-krav til medisinsk utstyr, kan kreve bruk SBOMs.
Andre viktige tiltak under utviklingsprosessen
Til identifisere sårbarheter, er det avgjørende å integrere sikkerhetsskanning i CI/CD pipeline lettIntegrering bør anses som enkel på alle trinn: på arbeidsstasjonen (før opplasting), i en commit, eller i den nattlige bygningen ved hjelp av rekkverk.
Oppretthold oppdatert programvare, operativsystemer og CI/CD verktøy: Oppdater regelmessig CI/CD verktøy, da de kan inneholde feil og sårbarheter. Bruk sentraliserte systemer for oppdateringsbehandling, inkludert programvareintegritet og valideringsprosesser for operativsystemer og programvareoppdateringer.
Begrens upålitelige biblioteker og fjern midlertidige ressurserBruk kun programvare, verktøy, biblioteker og artefakter fra pålitelige og sikre kilder for å minimere trusler mot CI/CD pipelineSørg alltid for at konfigurasjonen er passende for å forhindre potensiell kodekjøring eller introduksjon av bakdører. Det er også viktig åfjern unødvendige applikasjoner og beskytt endepunkter.
Lær mer om Xygeni-plattformen, last ned Xygenis plattformdatablad





