Dopad
Únik tajemství, jako jsou klíče, tokeny nebo přihlašovací údaje API, může vést k neoprávněnému přístupu k citlivým údajům, předstírání identity služby a značným finančním ztrátám v důsledku zneužití zdrojů [S1]. Jakmile je tajemství předáno veřejnému úložišti nebo součástí frontendové aplikace, mělo by být považováno za ohrožené [S1].
Hlavní příčina
Hlavní příčinou je zahrnutí citlivých přihlašovacích údajů přímo do zdrojového kódu nebo konfiguračních souborů, které jsou následně svěřeny do správy verzí nebo doručeny klientovi [S1]. Vývojáři často napevno kódují klíče pro usnadnění během vývoje nebo náhodně zahrnou soubory .env do svých odevzdání [S1].
Opravy betonu
- Rotate Compromed Secrets: Pokud dojde k úniku tajemství, musí být okamžitě odvoláno a nahrazeno. Pouhé odstranění tajného klíče z aktuální verze kódu je nedostatečné, protože zůstává v historii správy verzí [S1][S2].
- Používejte proměnné prostředí: Ukládejte tajemství do proměnných prostředí, nikoli je pevně zakódujte. Ujistěte se, že soubory
.envjsou přidány do.gitignore, aby se zabránilo náhodnému potvrzení [S1]. - Implementujte správu tajných informací: Použijte vyhrazené nástroje pro správu tajných klíčů nebo služby úschovny k vložení přihlašovacích údajů do prostředí aplikace za běhu [S1].
- Vyčistit historii úložiště: Pokud bylo tajemství předáno Gitu, použijte nástroje jako
git-filter-reponebo BFG Repo-Cleaner k trvalému odstranění citlivých dat ze všech větví a značek v historii úložiště [S2].
Jak to testuje FixVibe
FixVibe to nyní zahrnuje do živých skenů. Pasivní secrets.js-bundle-sweep stahuje balíčky JavaScriptu stejného původu a odpovídá známým klíčům, tokenům a vzorům pověření API s entropií a zástupnými hradly. Související živé kontroly kontrolují úložiště prohlížeče, zdrojové mapy, ověřování a klientské balíčky BaaS a vzory zdrojů úložiště GitHub. Přepis historie Git zůstává krokem nápravy; Živé zpravodajství FixVibe se zaměřuje na tajemství přítomná v dodávaných aktivech, úložišti prohlížeče a aktuálním obsahu repo.
