Mõju
Saladuste, nagu API võtmete, žetoonide või mandaatide lekkimine võib kaasa tuua volitamata juurdepääsu tundlikele andmetele, teenuse kellegi teisena esinemise ja märkimisväärse rahalise kahju ressursside kuritarvitamise tõttu. [S1]. Kui saladus on paigutatud avalikku hoidlasse või liidetud kasutajaliidese rakendusse, tuleks seda pidada ohustatud [S1].
Algpõhjus
Algpõhjus on tundlike mandaatide lisamine otse lähtekoodi või konfiguratsioonifailidesse, mis on seejärel seotud versioonikontrolliga või edastatakse kliendile [S1]. Arendajad kodeerivad arenduse ajal mugavuse huvides sageli võtmeid või lisavad kogemata .env-faile oma kohustustesse [S1].
Betooniparandused
- Pöörake ohustatud saladusi: kui saladus lekib, tuleb see viivitamatult tühistada ja asendada. Saladuse lihtsalt eemaldamisest koodi praegusest versioonist ei piisa, sest see jääb versioonikontrolli ajalukku [S1][S2].
- Kasutage keskkonnamuutujaid: salvestage saladused keskkonnamuutujatesse, selle asemel, et neid kõvasti kodeerida. Veenduge, et
.env-failid lisataks failile.gitignore, et vältida juhuslikku sisestamist [S1]. - Rakendage salajane haldus: kasutage spetsiaalseid salahaldustööriistu või varahoidla teenuseid, et sisestada mandaadid rakenduskeskkonda käitusajal [S1].
- Tühjendage hoidla ajalugu: kui Gitile anti saladus, kasutage selliseid tööriistu nagu
git-filter-repovõi BFG Repo-Cleaner, et eemaldada jäädavalt tundlikud andmed hoidla ajaloos [S2] kõigist harudest ja siltidest.
Kuidas FixVibe seda testib
FixVibe sisaldab seda nüüd reaalajas skannides. Passiivne secrets.js-bundle-sweep laadib alla sama päritoluga JavaScripti paketid ja sobitab teadaolevad API võtme-, märgi- ja mandaadimustrid entroopia- ja kohatäiteväravatega. Seotud reaalajas kontrollid kontrollivad brauseri salvestusruumi, allikakaarte, autentimise ja BaaS kliendipakette ning GitHub repo allika mustreid. Giti ajaloo ümberkirjutamine jääb parandamise sammuks; FixVibe otseülekanne keskendub saadetud varade, brauseri salvestusruumi ja praeguse repo sisu saladustele.
