Detekce tajemství
TL;DR
Detekce tajemství nachází citlivé informace jako API klíče, hesla, tokeny a přihlašovací údaje ve zdrojovém kódu, konfiguračních souborech nebo logách, což pomáhá předcházet náhodnému odhalení.
Nástroj pro detekci tajemství skenuje repozitáře, pipeline a kontejnery, aby pomohl předcházet únikům dat a neoprávněnému přístupu.
Včasné zachycení problémů s tajemstvími pomáhá chránit vaše aplikace, API a cloudové služby před útočníky.
Co je detekce tajemství?
Detekce tajemství je proces skenování kódových základen, CI/CD pipeline a cloudu za účelem identifikace odhalených tajemství, jako jsou API klíče, přihlašovací údaje, šifrovací klíče nebo tokeny. To je klíčové, protože útočníci, jako jsou boti pro vyplňování přihlašovacích údajů nebo únosci cloudových zdrojů, mohou tyto odhalené tajemství zneužít k získání neoprávněného přístupu.
Tato “tajemství” se často používají k autentizaci uživatelů nebo k připojení ke službám, jako jsou webhooky Slack nebo platební API Stripe. Když jsou náhodně nahrána do veřejného repozitáře jako GitHub, útočníci je mohou zneužít k získání přístupu k systému, databázi nebo cloudovému účtu, ke kterému se připojujete.
Proč je detekce tajemství důležitá?
Tajemství se mohou objevit v souborech prostředí, zdrojovém kódu, konfiguračních souborech YAML a CI/CD logách.
Pokud jsou tajemství odhalena, mohou způsobit vážné bezpečnostní narušení.
Pochopení a zmírnění těchto rizik může významně zvýšit bezpečnost a shodu. Čtyři největší rizika jsou:
- Zabraňte neoprávněnému přístupu: Odkrytý tajný klíč může útočníkovi umožnit přístup k produkčním datům nebo cloudovým službám.
- Vyhněte se nákladným únikům: Kompromitované přihlašovací údaje jsou jednou z hlavních příčin úniků dat, jako byl únik Uberu v roce 2022, který začal odhaleným PowerShell skriptem obsahujícím pevně zakódované přihlašovací údaje.
- Podpora souladu: Rámce jako SOC 2, GDPR a ISO 27001 vyžadují ochranu citlivých dat a tajemství.
- Snižte lidskou chybu: Automatizace detekce tajemství vám pomůže zachytit úniky před nasazením kódu do produkce, čímž se zabrání větším únikům.
Jak funguje detekce tajemství
Nástroje pro detekci tajemství používají porovnávání vzorů, analýzu entropie a strojové učení k nalezení a klasifikaci citlivých informací ve vašem kódu nebo infrastruktuře.
Zde je typický pracovní postup:
- Skenování kódu a konfigurací: Nástroj skenuje repozitáře, kontejnery a šablony IaC (Infrastructure as Code) pro přihlašovací údaje a tokeny.
- Identifikace vzoru: Detekuje běžné typy tajemství jako AWS přístupové klíče, JWT tokeny nebo SSH soukromé klíče.
- Korelace kontextu: Nástroje posuzují, zda je detekovaný řetězec skutečně tajemstvím nebo falešně pozitivním nálezem.
- Upozornění a náprava: Týmy dostanou upozornění, což jim umožňuje zrušit a otočit kompromitovaná tajemství.
- Nepřetržité monitorování: Integrujte detekci do verzovacího systému nebo CI/CD pro nepřetržitou ochranu.
Kdo používá detekci tajemství
- Vývojáři: Zachyťte hardcodované tajné klíče před jejich odesláním do repozitáře.
- DevSecOps týmy: Integrujte skenování tajných klíčů do pipeline.
- Bezpečnostní inženýři: Monitorujte repozitáře a kontejnery pro úniky.
- Týmy pro dodržování předpisů: Zajistěte, aby byly přihlašovací údaje spravovány bezpečně.
Kdy by mělo být detekování tajných klíčů implementováno?
- Před odesláním (zvažte použití git commit-msg hook): Použijte pre-commit hooky k zablokování expozice tajných klíčů před jejich odesláním.
- Během CI/CD (v souladu s git push): Automatizujte detekci s každým sestavením nebo nasazením, abyste zachytili jakékoli tajné klíče před konečnou integrací.
- Průběžně (považujte to za součást procesu git pull nebo post-deploy): Pravidelně monitorujte produkční prostředí pro jakékoli nově odhalené tajné klíče.
Příklad v praxi
Vývojový tým omylem nahraje AWS přihlašovací údaje do veřejného GitHub repozitáře. Během několika hodin se útočníci pokusí použít tyto klíče k spuštění EC2 instancí, což způsobí náklady přibližně 15 000 dolarů za neautorizované použití během šesti hodin.
S povolenou detekcí tajných klíčů systém okamžitě označí expozici, automaticky zruší platnost odhaleného přihlašovacího údaje a upozorní tým DevSecOps, aby zabránil potenciálnímu ohrožení cloudu.
Klíčové schopnosti nástrojů pro detekci tajných klíčů
| Schopnost | Popis |
|---|---|
| Rozpoznávání vzorů | Detekuje běžné formáty přihlašovacích údajů (API klíče, tokeny, SSH). |
| Skenování entropie | Nachází náhodně vypadající řetězce, které by mohly být tajemstvími. |
| Automatizovaná revokace | Ruší nebo rotuje kompromitované přihlašovací údaje. |
| Integrace do pipeline | Automaticky skenuje kód v CI/CD pracovních postupech. |
| Centralizovaný dashboard | Poskytuje přehled o tom, kde jsou tajemství nalezena. |
| Vynucování politiky | Blokuje commity obsahující tajemství. |
Populární nástroje pro detekci tajemství
- Plexicus ASPM – Jednotná platforma AppSec kombinující detekci tajemství, SCA a skenování IaC.
- GitGuardian – Detekuje odhalené přihlašovací údaje napříč repozitáři.
- TruffleHog – Open-source nástroj pro skenování repozitářů a historie commitů.
- Gitleaks – Lehký skener pro detekci tajemství v Git repozitářích.
- SpectralOps – Monitoruje tajemství v CI/CD, kontejnerech a API.
Nejlepší praxe pro správu tajemství
- Nikdy nezapisujte tajemství přímo do zdrojového kódu.
- Používejte správce tajemství jako AWS Secret Manager nebo HashiCorp Vault.
- Pravidelně měňte přihlašovací údaje.
- Neustále monitorujte nově odhalená tajemství.
- Školte vývojářský tým v nejlepších postupech bezpečného kódování.
Související pojmy
- SCA (Analýza složení softwaru)
- ASPM (Řízení bezpečnostního postoje aplikací)
- DevSecOps
- Řízení bezpečnostního postoje cloudu (CSPM)
- Bezpečnost CI/CD
FAQ: Detekce tajemství
1. Jaký je rozdíl mezi detekcí tajemství a správou tajemství?
Detekce tajemství nachází odhalená tajemství; správa tajemství je bezpečně ukládá, rotuje a kontroluje přístup k nim.
2. Může detekce tajemství automaticky zabránit únikům?
Ano, mnoho nástrojů automaticky blokuje commity nebo odvolává klíče, když jsou nalezena tajemství.
3. Je detekce tajemství pouze pro zdrojový kód?
Ne, také skenuje logy, kontejnery, soubory IaC a cloudové úložiště.
4. Co se stane po nalezení tajemství?
Klíč by měl být odvolán, rotován a okamžitě nahrazen.