Ei-inhimilliset identiteetit – API-avaimet, tokenit, palvelutilit ja työkuormaidentiteetit – ovat nykyään yksi helpoimmista tavoista päästä nykyaikaisiin pilviympäristöihin. Ei siksi, että hyökkääjistä olisi yhtäkkiä tullut neroja, vaan koska organisaatiot toimivat yhä useammin koneiden välisellä luottamuksella, ja tämä luottamus on usein liian laaja-alaista, pitkäikäistä ja huonosti valvottua.
Raporteissa esiin tuotu uusi analyysi viittaa tuttuun kaavaan laajassa mittakaavassa: tuhannet säilökuvat ja -repositoriot paljastavat vahingossa salaisuuksia, jotka hiljaisesti myöntävät pääsyn tuotantojärjestelmiin. Ongelmana ei ole vain se, että kehittäjät tekevät joskus virheitä. Ongelmana on, että oletustyökalut ja -kannustimet tekevät siitä...helppolähettää salaisuuksia jakovatodistaaksesi, ettet tehnyt niin.
Tämä on "näkymättömän tietomurron" tarina. Monet tietomurrot eivät ala hyökkäyksellä tai kovaäänisellä haittaohjelmatapahtumalla. Ne alkavat tunnuksella, joka todentaa puhtaasti – joten kaikki näyttää normaalilta – kunnes huomaat, että väärä päähenkilö on käyttänyt sitä.
Mitä "ei-inhimilliset identiteetit" ovat (selkeästi sanottuna)
Ei-inhimillinen identiteetti (NHI) on mikä tahansa tunniste, jonka avulla ohjelmisto voi todentaa itsensä luotettavaksi toimijaksi:
- pilvikäyttöavaimet ja istuntotunnukset
- palvelutilit ja työkuormien identiteetit
- Koontiprosessien käyttämät CI/CD-tunnistetiedot
- SaaS-työkalujen tokenit (GitHub, GitLab, Slack, valvonta-alustat)
- Kolmannen osapuolen palveluiden API-avaimet (maksupalveluntarjoajat, sähköpostipalveluntarjoajat, tekoälymallien API:t)
Tärkeä ero ihmisten kirjautumisiin on, että NHI:t tyypillisesti:
- ajaa jatkuvasti
- ovat upotettuja koodiin tai konfiguraatioon
- eivätkä usein käytä MFA:ta
Se tekee niistä houkuttelevia.
Jos hyökkääjä saa haltuunsa toimivan tunnuksen, hänen ei tarvitse "murtautua sisään". Hän todentaa itsensä.
Miksi tämä nyt pahenee
Kolme trendiä nostavat sairaanhoitokulujen riskiä "tärkeästä" "hallitsevaan riskiin":
1) Ohjelmistojen toimitusketjut ovat suurempia kuin koskaan
Nykyaikaiset sovellukset kootaan seuraavista osista:
- kontit
- avoimen lähdekoodin riippuvuudet
- infrastruktuuri koodina
- kymmeniä SaaS-integraatioita
Jokainen integraatio lisää uuden tunnistetiedon.
2) Automaatiota on kaikkialla
Organisaatiot haluavat:
- nopeampi käyttöönotto
- itsepalveluinfrastruktuuri
- lyhytaikaiset ympäristöt
Automaatio on hyvä asia, mutta sitä pyörittävät identiteetit, joilla on käyttöoikeudet.
3) Valtakirjat kestävät pidempään kuin ne luoneet ihmiset
Ihmiset vaihtavat rooleja ja lähtevät.
Mutta repossa tai säilössä oleva token voi:
- jatkuu kuukausia tai vuosia
- kopioida uusiin koontiversioihin
- ja pysyvät voimassa pitkään sen jälkeen, kun kukaan muistaa niiden olemassaolon
Joten hyökkäyspinta kasvaa hiljaa.
Kuinka salaisuudet vuotavat tosielämässä (ei aina ole kyse siitä, että "joku varasti avaimen")
Stereotyyppi on kehittäjä, joka sitoutuuAWS_SECRET_ACCESS_KEYGitHubiin.
Sitä tapahtuu edelleen. Mutta paljon vuotoja on vähemmän ilmeisiä:
- konttikerroksiin paistetut tokenit
- asetustiedostot kopioitu levykuviin koonnin aikana
- salaisuuksia sisältävät virheenkorjauslokit
- "Väliaikaiset" avaimet, jotka jaettiin chatissa ja myöhemmin liitettiin koodiin
- Väärin konfiguroitujen putkistojen tulostamat CI-muuttujat
Ja säilön kuvat ovat erityisen vaarallisia, koska:
- ne peilataan
- ne tallennetaan välimuistiin
- ne kopioituvat joukkueiden välillä
Vaikka poistaisit avaimen repositoriosta, avain voi jäädä vanhoihin kuvakerroksiin.
Miksi vuotaneet tokenit ovat vaarallisempia kuin monet hyökkäykset
Hyökkäykset ovat meluisia. Ne usein laukaisevat hälytyksiä.
Vuodetut tokenit ovat hiljaisia. Ne näyttävät usein normaalilta käytöltä:
- onnistunut todennus
- oikeat API-kutsuja
- lailliset päätepisteet
Se muuttaa puolustajan ongelman.
"Hyökkääjän" havaitsemisen sijaan sinun on havaittava:
- odottamatonrehtorikäyttämällä voimassa olevia tunnistetietoja
- epätavallisista paikoista
- epätavallisina aikoina
- epätavallisten toimien tekeminen
Tästä syystä kansalliset terveysongelmat ovat monille organisaatioille havaitsemisaukko.
Etuoikeusongelma: tokenit ovat usein liian tehokkaita
Monet salaisuudet luodaan "saa se toimimaan" -oikopolkuina:
- laajat pilvikäyttöoikeudet
- järjestelmänvalvojan tason API-käyttöoikeus
- pitkäikäiset avaimet
Ja kun järjestelmä toimii, ihmiset eivät halua koskea siihen.
Tämä luo vaarallisen epäsymmetrian:
- ihmistilillä voi olla MFA ja seuranta
- koneidentiteetillä voi olla laaja pääsy ja vain vähän valvontaa
Kun koneen tunnistetiedot vuotavat, räjähdyssäde voi olla suurempi.
Miltä hyvä NHI-strategia näyttää (konkreettiset käytännöt)
Tämä on ratkaistavissa, mutta vain jos kohtelet kansallisia terveyslaitoksia ensiluokkaisina turvallisuusvaroina.
1) Suosi lyhytaikaisia pätevyyksiä
Mahdollisuuksien mukaan:
- käytä väliaikaisia istuntotunnisteita
- kierrätä tokeneita usein
- Vältä "ei koskaan vanhene" -avaimia
Lyhytikäiset tokenit vähentävät vuotojen tuottoa.
2) Korvaa staattiset avaimet työkuorman tunnistetiedoilla, jos mahdollista
Nykyaikaisissa pilviympäristöissä työkuormia voi usein todentaa seuraavilla tavoilla:
- instanssin identiteetti
- OIDC-liitto
- hallittu identiteetti
Tämä vähentää staattisten avainten tallentamisen tarvetta.
3) Erota ympäristöt tiukasti toisistaan
Yleinen virhe on saman tunnuksen käyttäminen seuraavissa:
- kehittäjä
- lavastus
- tuotanto
Tunnusten tulisi olla ympäristösidonnaisia.
Jos kehityskuva vuotaa, sen ei pitäisi avata tuotoksen lukitusta.
4) Varasto ja omistajuus
Jokaisella merkityksellisellä tokenilla tulisi olla:
- omistaja
- tarkoitus
- odotettu käyttötapa
Jos tokenilla ei ole omistajaa, se on teknistä velkaa, joka odottaa tapahtumaksi tulemista.
5) Seuraa NHI:n käyttäytymistä samalla tavalla kuin seuraat ihmisten käyttäytymistä
Hyviä signaaleja ovat mm.
- mahdoton matkustaminen / epätavalliset maantieteelliset alueet
- epätavalliset API-kutsusekvenssit
- datan saatavuuden piikit
- uudet käyttöoikeudet myönnetty
- uusia tokeneita luotu
Tavoitteena ei ole täydellinen havaitseminen, vaan varhainen havaitseminen.
6) Käsittele CI/CD:tä riskialttiina identiteettitehtaana
CI-järjestelmissä on usein:
- käyttöönottoavaimet
- allekirjoitusavaimet
- pilvitunnistetiedot
Lukitse ne:
- vähiten etuoikeuksia
- erillään olevat juoksijat
- salainen peittäminen ja lokitietojen vuotojen estäminen
- tiukat hyväksynnät tuotantokäyttöönoton vaiheille
Missä joukkueet yleensä epäonnistuvat (ja miten se vältetään)
"Vaihdamme avaimia joskus" ei ole suunnitelma
Jos rotaatio on manuaalista ja kivuliasta, se ei tapahdu paineen alla.
Tee rotaatiosta rutiininomainen ja automatisoitu.
Turvallisuustyökaluista ilman valvontaa tulee "valvontateatteria"
Salaisuuksien etsiminen arkistoista on hyödyllistä, mutta se ei riitä.
Tarvitset myös:
- nopea peruutus
- hälytykset käytöstä
- ja ennaltaehkäisy rakennusputkissa
Säiliökerroksen ansa
Jos salaisuudet ovat joskus päätyneet säilön rakennuskontekstiin, oletetaan, että ne saattavat olla jossakin seuraavista:
- vanhoja kuvia
- välimuistissa olevat tasot
- CI-artefaktit
Korjaus ei ole vain "poista repo-avain". Se on:
- kierrä salaisuus
- kuvien uudelleenrakentaminen ja julkaiseminen
- mitätöi välimuistit mahdollisuuksien mukaan
Mitä katsoa seuraavaksi
Jos haluat seurata, parantavatko organisaatiot NHI:tä, etsi seuraavia tietoja:
- lyhytaikaisen identiteetin käyttöönotto (OIDC/työkuorman identiteetti)
- laajalle levinneet token-kierto-ohjelmat
- vahvemmat CI/CD-rajojen säädöt
- tapahtumaraportit, joissa ensisijaiseksi syyksi mainitaan "käytetyt voimassa olevat tunnistetiedot"
Tarkkaile myös työkaluja: parhaat työkalut siirtyvät "paljastuneiden merkkijonojen havaitsemisesta" "vähentämään olemassa olevien staattisten salaisuuksien määrää".
Taloustiede: miksi hyökkääjät rakastavat token-metsästystä
Token-metsästysvaa'at.
Hyökkääjä, joka varastaa yhden toimivan tunnisteen, voi usein:
- pääsy useisiin järjestelmiin (pilvi + versionhallinta + CI)
- käyttää samaa tekniikkaa uudelleen useissa organisaatioissa
- ja myydä käyttöoikeuksia markkinapaikoilla, jos ne eivät halua operoida niitä itse
Puolustajien kannalta tämä tarkoittaa, että uhka ei ole vain "meitä tähtäävä hakkeri". Se on "konetalous, joka hyötyy kaikista uudelleenkäytettävistä tunnisteista".
Siksi ennaltaehkäisy on tässä arvokkaampaa kuin reagointi. Jos avainta ei ole koskaan ollut staattisessa muodossa, sitä ei voida myöhemmin kerätä.
Betonin havaitsemiseen liittyviä ideoita (mistä varoitetaan)
Jos rakennat tunnistuksia NHI-infektioille, keskity käyttäytymisen muutoksiin taika-avainsanojen sijaan.
Esimerkkejä korkeasta signaalista:
- Palvelutili, jota käytetäänuusi maa/ASNsitä ei ole koskaan ennen käytetty.
- Tunnus, joka normaalisti kutsuu vain yhtä API:a, alkaa yhtäkkiä luetteloida resursseja tai ladata suuria määriä tiedostoja.
- CI-identiteetti, joka suorittaa toimintoja normaalin julkaisuikkunan ulkopuolella.
- Interaktiivisten käyttäjien päätepisteiden salaisuudet, joita käytettiin, kun ne oli tarkoitettu vain palvelinkuormille.
Jopa peruspoikkeamahälytykset voivat havaita "hiljaisen tunnistetietojen varkauden" kaavan varhaisessa vaiheessa.
Betonin kovettamisideoita (vähäinen vaiva, suuri vipuvaikutus)
Nämä ovat käytännön muutoksia, jotka useimmat tiimit voivat tehdä ilman massiivista uudelleensuunnittelua:
- Pienennä tunnuksen laajuutta: jakaa yhden laajan tunnuksen useisiin kapeasti rajattuihin tunnuksiin.
- Kierrä aikataulun mukaan: pyöriä, vaikka mikään ei olisi "vikaa", joten pyörimisestä tulee lihasmuistia.
- Porttien tuotanto: tuotantoympäristön käyttöönottoidentiteetit vaativat nimenomaisen hyväksynnän.
- Estä selkokieliset salaisuudet koontiversioissaCI:n pitäisi epäonnistua koonneissa, jos ilmenee ilmeisiä salaisia kaavoja.
Jokainen liike pienentää räjähdyssädettä, vaikka vuoto silti esiintyisi.
Yksinkertainen sisäinen käytäntö, joka estää paljon kipua
Jos haluat yhden käytännön, joka pakottaa parempaan käyttäytymiseen, se on tämä:
- Ei tuotantokelpoisia salaisuuksia kehittäjien kannettavissa tietokoneissa tai säilöjen rakennuskonteksteissa.
Tuo sääntö johtaa muutoksiin, kuten:
- palveluiden työkuorman identiteetti
- kehitysvaiheen tunnistetiedot
- ja nimenomaiset hyväksynnät tuotantokäyttöönoton vaiheille
Se on aluksi ärsyttävää, mutta se katkaisee helpoimmat vuotoreitit.
Lopputulos
Ei-inhimilliset identiteetit ovat modernin automaation selkäranka – ja myös merkittävä tietomurtojen ajuri, koska ne usein ohittavat ihmisille rakentamamme suojaukset.
Jos haluat käytännöllisen kynnysarvon: kun pystyt vastaamaan kysymykseen "missä pitkäikäiset tokenimme sijaitsevat, kuka omistaa ne ja kuinka nopeasti voimme peruuttaa/kiertää ne", olet siirtynyt toiveajattelusta todelliseen puolustusohjelmaan.
Käytännön ratkaisu ei ole yksi taikaskanneri. Se on ohjelma: minimoi staattiset salaisuudet, kutista käyttöoikeuksia, tee rotaatiorutiineista ja valvo koneiden identiteettejä samalla tavalla kuin valvot käyttäjätilejä.