Alpine Linux bygde opp GitLab-serveren sin på nytt og tilbakestilte alle brukerpassord etter at angripere rettet seg mot en kritisk sårbarhet 20.–21. oktober. Selv om etterforskerne ikke fant bevis for vellykket kodekjøring, gjorde manglende logger det umulig å utelukke en kompromittering.
Angripere retter seg mot Alpine Linux» utviklingsinfrastruktur
Angrepene var rettet mot CVE-2026-97229, en sårbarhet for ekstern kjøring av kode i GitLab med høyeste alvorlighetsgrad. Sikkerhetsfeilen innebærer et heltallsoverløp i Onigmo, en motor for regulære uttrykk som følger med Ruby. Under visse forhold kunne uautentiserte angripere utnytte den gjennom spesialutformede CI/CD-pipelinekonfigurasjoner.
GitLab offentliggjorde sårbarheten og lanserte rettelser 12. oktober. Alpine installerte imidlertid først versjon 19.3.4 i stedet for den oppdaterte versjonen 19.3.5. En påfølgende oppgradering til versjon 19.3.6 etterlot også installasjonen sårbar fordi den underliggende Ruby-komponenten fortsatt trengte en sikkerhetsrettelse.
GitLab inkluderte denne Ruby-rettelsen i sine offisielle pakker. Alpines tilpassede containeravbildning manglet imidlertid den nødvendige endringen. Dermed var det ikke tilstrekkelig å oppdatere GitLab alene for å fjerne sårbarheten fra prosjektets miljø.
Skadelige pipelinekonfigurasjoner forårsaker åtte krasj
Under angrepene i oktober forårsaket skadelige CI-konfigurasjoner åtte krasj i arbeidsprosesser. Etterforskerne beskrev fire forsøk som delvis vellykkede, selv om de ikke fant bevis for at noen av dem førte til fullstendig kodekjøring. Likevel kunne de tilgjengelige opplysningene ikke endelig fastslå at alle forsøkene mislyktes.
Undersøkelsen viste også at angriperne hadde lastet ned Alpines GitLab-containeravbildning. Dette tydet på at de kan ha studert installasjonen mens de forberedte et mulig angrep på leverandørkjeden. Nedlastingen av avbildningen beviste imidlertid ikke at de klarte å kompromittere serveren.
Manglende logger og fraværet av registreringer over utgående forbindelser begrenset undersøkelsen. Derfor bygde teamet opp GitLab-instansen fra bunnen av i stedet for å fortsette å bruke et miljø de ikke lenger kunne verifisere fullt ut.
Ingen bevis for manipulering av pakker eller utgivelser
Alpine Linux tilbyr et lettvektsoperativsystem som ofte brukes som grunnlag for Docker-containeravbildninger. GitLab-infrastrukturen deres er vert for utviklingsarkiver, kodegjennomganger og automatiserte CI-jobber. Den inneholder også aports-byggeoppskriftene som brukes til å produsere programvarepakker.
Denne rollen gjør utviklingsplattformen til et attraktivt mål for angripere som ønsker tilgang til programvare lenger ned i leverandørkjeden. Alpines undersøkelse fant imidlertid ingen bevis for endringer i arkivenes commits, pakker eller utgivelser frem til 27. oktober. Teamet bekreftet også at GitLab-serveren ikke lagret nøkler for pakkesignering, slik at disse nøklene var utenfor den potensielle eksponeringen.
Hvis angriperne lyktes med å kjøre kode, kan de potensielt ha fått tilgang til brukerinformasjon, passordhasher og hemmeligheter for tofaktorautentisering. Annet materiale som kan ha blitt eksponert, omfatter CI/CD-hemmeligheter, integrasjonslegitimasjon og privat prosjektinnhold. Etterforskerne har imidlertid ikke bekreftet tilgang til noen av disse opplysningene.
Korrigert containeravbildning inkluderer Ruby-rettelsen
Etter gjenoppbyggingen anbefalte Alpine Linux GitLab-brukere å tilbakestille passordene sine. Prosjektet instruerte også brukere av GitLab-containeren om å hente avbildningen alpinelinux/gitlab:19.3.6, som ble publisert 27. oktober. Denne avbildningen inkluderer Ruby 3.3.13 og utbedrer sårbarheten.
Hendelsen viser hvorfor rettelser av avhengigheter er viktige i tillegg til programoppdateringer. I dette tilfellet var ikke GitLabs versjonsnummer alene nok til å bekrefte at systemet var beskyttet. Den tilpassede installasjonen trengte også den korrigerte Ruby-komponenten for å tette sikkerhetshullet.


0 responses to “Alpine Linux bygger opp GitLab på nytt etter forsøk på RCE-angrep”