Vaikutus
Vuotavat salaisuudet, kuten API-avaimet, tunnukset tai valtuustiedot, voivat johtaa luvattomaan pääsyyn arkaluontoisiin tietoihin, toisena henkilönä esiintymiseen ja merkittäviin taloudellisiin menetyksiin resurssien väärinkäytön vuoksi. [S1]. Kun salaisuus on siirretty julkiseen tietovarastoon tai liitetty käyttöliittymäsovellukseen, sitä on pidettävä vaarantuneena [S1].
Perussyy
Perimmäinen syy on arkaluonteisten valtuustietojen sisällyttäminen suoraan lähdekoodiin tai määritystiedostoihin, jotka on sittemmin sitoutunut versionhallintaan tai toimitettu asiakkaalle [S1]. Kehittäjät koodaavat usein avaimia käyttömukavuuden vuoksi kehitystyön aikana tai sisällyttävät vahingossa .env-tiedostoja sitoumuksiinsa [S1].
Betonikorjauksia
- Kierrä vaarantuneita salaisuuksia: Jos salaisuus vuotaa, se on peruutettava ja korvattava välittömästi. Pelkkä salaisuuden poistaminen koodin nykyisestä versiosta ei riitä, koska se pysyy versionhallintahistoriassa [S1][S2].
- Käytä ympäristömuuttujia: Tallenna salaisuudet ympäristömuuttujiin sen sijaan, että koodaa niitä. Varmista, että
.env-tiedostot lisätään tiedostoon.gitignore, jotta estetään vahingossa tapahtuvat sitoumukset [S1]. - Ota salainen hallinta käyttöön: Käytä erityisiä salaisuuden hallintatyökaluja tai varastopalveluita valtuustietojen syöttämiseen sovellusympäristöön suoritusaikana [S1].
- Tyhjennä arkistohistoria: Jos Gitissä oli salaisuus, käytä työkaluja, kuten
git-filter-repotai BFG Repo-Cleaner poistaaksesi pysyvästi arkaluonteiset tiedot kaikista arkistohistorian [S2] haaroista ja tunnisteista.
Kuinka FixVibe testaa sitä
FixVibe sisältää tämän nyt reaaliaikaisissa skannauksissa. Passiivinen secrets.js-bundle-sweep lataa samaa alkuperää olevia JavaScript-paketteja ja vastaa tunnettuja API-avain-, tunnus- ja valtuustietomalleja entropia- ja paikkamerkkiporttien kanssa. Aiheeseen liittyvät reaaliaikaiset tarkistukset tarkastavat selaimen tallennustilan, lähdekartat, todennus- ja BaaS-asiakaspaketit sekä GitHub-repo-lähdemallit. Git-historian uudelleenkirjoittaminen on edelleen korjausvaihe; FixVibe:n suora lähetys keskittyy toimitetussa omaisuudessa, selaimen tallennustilassa ja nykyisessä reposisällössä oleviin salaisuuksiin.
