Nastavení kontroly tajných kódů

Vystavené přihlašovací údaje v technických systémech poskytují snadno zneužitelné příležitosti pro útočníky. Kvůli ochraně před touto hrozbou GitHub Advanced Security pro Azure DevOps vyhledá přihlašovací údaje a další citlivý obsah ve zdrojovém kódu. Ochrana proti push útokům také zabraňuje úniku přihlašovacích údajů v prvé řadě. Potřebujete buď Pokročilé zabezpečení GitHubu pro Azure DevOps, nebo pokud používáte samostatné prostředí, je povolená služba GitHub Secret Protection pro Azure DevOps.

Skenování tajných informací ve vašem úložišti vyhledává všechny tajné informace, které už mohou existovat ve zdrojovém kódu v historii. Ochrana před odesláním brání zpřístupnění nových tajných informací ve zdrojovém kódu.

Pokročilé zabezpečení GitHubu pro Azure DevOps funguje s Azure Repos. Pokud chcete používat GitHub Advanced Security s úložišti GitHub, přečtěte si téma GitHub Advanced Security .

Požadavky

Kategorie Požadavky
Oprávnění – Zobrazení souhrnu všech výstrah pro úložiště: Přispěvatel oprávnění k úložišti.
– Chcete-li zavřít výstrahy v rozšířeném zabezpečení: oprávnění pro správce projektu.
- Správa oprávnění v rozšířeném zabezpečení: Člen skupiny správců kolekce projektů nebo Rozšířené zabezpečení: správa nastavení oprávnění nastavena na Povolit.

Další informace o pokročilých oprávněních zabezpečení naleznete v tématu Správa oprávnění Advanced Security.

O upozorněních kontroly tajných informací

Když povolíte Pokročilou ochranu nebo Ochranu tajemství konkrétně, prohledává úložiště pro tajemství vydaná různými poskytovateli služeb a generuje upozornění na kontrolu tajemství.

Pokud přístup k prostředku vyžaduje spárované přihlašovací údaje, vytvoří kontrola tajných kódů výstrahu pouze v případě, že jsou obě části dvojice zjištěny ve stejném souboru. Párování zajišťuje, že nejdůležitější úniky nejsou skryté za informacemi o částečném úniku. Párování také pomáhá snížit falešně pozitivní výsledky, protože oba prvky páru musí být použity společně pro přístup k prostředkům poskytovatele.

Karta Pokročilé zabezpečení v rámci Repos>Advanced Security v Azure DevOps je centrem pro zobrazení vašich výstrah zabezpečení. Výběrem karty Tajnosti zobrazíte výstrahy ze skenování tajných informací. Můžete filtrovat podle stavu a typu tajného kódu. Další podrobnosti najdete v upozornění, včetně pokynů k nápravě. Po povolení rozšířeného zabezpečení se pro vybrané úložiště spustí kontrola, včetně všech historických potvrzení. Postupně, jak sken postupuje, se začínají zobrazovat upozornění.

Přejmenování větví nemá vliv na výsledky. Zobrazení nového názvu ale může trvat až 24 hodin.

Snímek obrazovky zobrazující výstrahy aktivního skenování tajných informací.

Pokud chcete napravit vystavené tajné kódy, zneplatníte vystavené přihlašovací údaje a vytvořte nový na svém místě. Nově vytvořené tajemství by se pak mělo bezpečně uložit způsobem, který ho přímo neuloží zpět do kódu. Tajný klíč může být například uložený ve službě Azure Key Vault. Většina prostředků má primární i sekundární autentizační údaje. Metoda převrácení primárních přihlašovacích údajů na sekundární přihlašovací údaje jsou shodné, pokud není uvedeno jinak.

Správa upozornění skenování tajných informací

Zobrazení upozornění pro úložiště

Výběrem karty Tajemství zobrazíte všechna upozornění ke skenování tajných údajů.

Pokud bylo pro vaše úložiště nedávno povolené rozšířené zabezpečení, může se zobrazit karta, která indikuje, že rozšířené zabezpečení stále kontroluje vaše úložiště.

Snímek obrazovky znázorňující vyhledávání tajných kódů

Po dokončení kontroly se zobrazí všechny výsledky. Pro každé zjištěné jedinečné přihlašovací údaje se vygeneruje jedna výstraha ve všech větvích a historii úložiště. Nejsou k dispozici žádné filtry větví, protože jsou sloučeny do jedné výstrahy.

Tajemství, která nejsou od poskytovatelů, lze zobrazit tak, že v rozevírací nabídce spolehlivosti na kartě kontrola tajemství vyberete "Jiné".

Snímek obrazovky s filtrem spolehlivosti kontroly tajných kódů Advanced Security na GitHubu

Podrobnosti výstrahy

Když otevřete výstrahu, zobrazí se podrobné zobrazení výstrahy a odhalí více podrobností o nálezu a poskytne konkrétní kroky k odstranění této výstrahy.

Snímek obrazovky zobrazující podrobnosti pro upozornění kontroly tajných kódů

Poznámka:

Obrázek obsahuje hodnotu formátovanou tak, aby připomínala token PAT (Personal Access Token). Tato hodnota není platná pat a používá se pouze pro ilustrativní účely. GitHub Advanced Security pro Azure DevOps provádí kontroly platnosti zjištěných tajných kódů. Nástroj sice může zpočátku zjišťovat hodnoty, které odpovídají očekávanému formátu PAT, ale provede další ověření pro ověření pravosti. Pokud token selže s touto ověřovací kontrolou (to znamená, že není platným tokenem PAT), kontrola tajných kódů ji rozpozná jako neplatnou a neaktivuje upozornění detekce. To pomáhá snížit falešně pozitivní výsledky a zajistit, že výstrahy budou generovány pouze skutečnými platnými tajemstvími.

Sekce Vysvětlení
Umístění Část Umístění podrobně popisuje cesty, kde kontrola tajných kódů zjistila uniklé přihlašovací údaje. V historii může existovat více umístění nebo více commitů, které obsahují uniklé přihlašovací údaje. Všechna tato umístění a commity se zobrazí v umístěních s přímým odkazem na fragment kódu a commit, ve kterých byly identifikovány.
Doporučení Část doporučení obsahuje pokyny k nápravě nebo odkaz na pokyny k nápravě identifikovaných přihlašovacích údajů v dokumentaci jiné společnosti než Microsoft.
Zavřít upozornění Není k dispozici žádné automatické opravy pro upozornění na skenování tajných kódů. Všechna upozornění na skenování citlivých dat musí být ručně potvrzena jako opravená na stránce s podrobnostmi výstrahy. Vyberte tlačítko Zavřít pro ověření, že je tajemství odvoláno.
Závažnost Všechny výstrahy kontroly tajných dat jsou označené jako kritické. Jakékoli vystavené přihlašovací údaje mohou být příležitostí pro aktéra se zlými úmysly.
Vyhledání podrobností Typ přihlašovacích údajů a pravidla použitého k vyhledání přihlašovacích údajů jsou uvedené v části Hledání podrobností na bočním panelu stránky s podrobnostmi výstrahy.

U tajemství, která nejsou poskytovatele, se v zobrazení podrobností výstrahy také objeví značka Confidence: other vedle odznaku závažnosti.

Snímek obrazovky s podrobnými informacemi o obecných upozorněních kontroly tajných kódů Advanced Security GitHubu

Oprava výstrah kontroly tajných kódů

Každé tajemství má jedinečné kroky pro nápravu, které vás provedou postupem odvolání a vytvoření nového tajemství na jeho místo. Podrobnosti výstrahy poskytují konkrétní kroky nebo dokumentaci pro každou výstrahu.

Výstraha kontroly tajných údajů zůstane otevřená, dokud není uzavřena. K potvrzení, že byla opravena výstraha při skenování tajných údajů:

  1. Přejděte na výstrahu, kterou chcete zavřít, a vyberte výstrahu.
  2. Vyberte rozevírací seznam Zavřít upozornění.
  3. Pokud ještě není vybraná, vyberte Opravit.
  4. Výběrem možnosti Zavřít odešlete a zavřete výstrahu.

Snímek obrazovky znázorňující, jak zavřít upozornění na kontrolu tajemství

Zavření upozornění skenování citlivých informací

Pokud chcete výstrahu zavřít, proveďte následující kroky:

  1. Přejděte na výstrahu, kterou chcete zavřít, a vyberte ji.
  2. Vyberte rozevírací seznam Zavřít upozornění.
  3. Pokud ještě není vybraný, vyberte jako důvod uzavření buď Riziko přijato nebo Falešně pozitivní.
  4. Do textového pole Komentář přidejte volitelný komentář.
  5. Výběrem možnosti Zavřít odešlete a zavřete výstrahu.
  6. Stav výstrahy se změní z otevření na uzavřeno a zobrazí váš důvod zamítnutí.

Snímek obrazovky zobrazující podrobnosti o zavření upozornění na kontrolu tajných kódů

Všechny dříve zamítnuté výstrahy můžete otevřít ručně.

Zabezpečení ohrožených tajných kódů

Jakmile se tajemství uloží do úložiště, je kompromitováno. Microsoft doporučuje pro ohrožené tajné kódy následující akce:

Důležité

Zvažte použití bezpečnějších tokenů Microsoft Entra nad tokeny s vyšším rizikem pro osobní přístupové tokeny. Další informace najdete v tématu Snížení využití PAT. Projděte si doprovodné materiály k ověřování a zvolte správný mechanismus ověřování pro vaše potřeby.

  • V případě ohrožení osobního přístupového tokenu Azure DevOps odstraňte ohrožený token, vytvořte nový token a aktualizujte všechny služby, které používají starý token.
  • U všech ostatních tajných kódů nejprve ověřte, že je tajný kód potvrzený do Azure Repos platný. Pokud ano, vytvořte nový tajný kód, aktualizujte všechny služby, které používají starý tajný klíč, a odstraňte starý tajný kód.
  • Identifikujte všechny akce prováděné ohroženým tokenem u prostředků vaší organizace.

Při aktualizaci tajného kódu uložte nový tajný kód bezpečně a ujistěte se, že se nikdy neuloží jako prostý text. Jednou z možností je použití služby Azure Key Vault nebo jiných řešení pro správu tajných kódů.

Ochrana tajných pushů

Ochrana pushů kontroluje všechna příchozí data na přítomnost vysoce důvěrných informací a zabraňuje jejich odeslání. Chybová zpráva zobrazí všechny identifikované tajné kódy, které můžete odebrat, nebo v případě potřeby dál odesílat tajné kódy.

Informace o upozorněních pro ochranu přetlačování

Upozornění push ochrany jsou uživatelská upozornění, která generuje push ochrana. Kontrola tajných kódů jako nabízená ochrana v současné době prohledává úložiště tajných kódů vydaných některými poskytovateli služeb.

Pokud přístup k prostředku vyžaduje spárované přihlašovací údaje, může kontrola tajných kódů vytvořit výstrahu pouze v případě, že jsou obě části dvojice zjištěny ve stejném souboru. Párování zajišťuje, že nejdůležitější úniky nejsou skryté za informacemi o částečném úniku. Párování také pomáhá snížit falešně pozitivní výsledky, protože oba prvky páru musí být použity společně pro přístup k prostředkům poskytovatele.

Ochrana push notifikací nemusí blokovat starší verze některých tokenů, jelikož tyto tokeny mohou generovat vyšší počet falešně pozitivních než jejich nejnovější verze. Ochrana před nabízenými oznámeními také nemusí blokovat starší tokeny. U tokenů, jako jsou klíče azure Storage, advanced Security podporuje pouze nedávno vytvořené tokeny, nikoli tokeny, které odpovídají starším vzorům.

Nabízená ochrana z příkazového řádku

Push ochrana je nativně integrovaná do Azure DevOps Git. Pokud potvrzení obsahují identifikovaný tajný klíč, zobrazí se následující chyba, že vaše nabízená oznámení byla odmítnuta.

Snímek obrazovky znázorňující blokování git push z VS Code

Přímá ochrana z webového rozhraní

Ochrana push funguje také z webového rozhraní. Pokud je tajemství identifikováno v commitu, zobrazí se následující blok chyby, který vám zabrání v odeslání vašich změn.

Snímek obrazovky znázorňující zablokování push operace z uživatelského rozhraní AzDO

Co dělat, když jsou vaše push oznámení zablokována?

Nabízená ochrana blokuje tajné kódy nalezené v souborech prostého textu, které jsou obvykle (ale ne omezené na) textové soubory, jako je zdrojový kód nebo konfigurační soubory JSON. Tyto tajné kódy jsou uložené ve formátu prostého textu. Pokud zlovolná osoba získá přístup k souborům a ty jsou publikovány do veřejného úložiště, mohou tajné informace používat kdokoliv.

Odeberte tajný kód ze souboru s příznakem a pak tajný kód odeberte z historie potvrzení. Pokud je označený tajný kód zástupný nebo ukázkový tajný kód, aktualizujte falešný tajný kód tak, že před něj přidáte řetězec Placeholder.

Pokud bylo tajemství přidáno v předchozím commitu, upravte commit a vytvořte nový commit:

  1. Odeberte tajné informace z vašeho kódu.
  2. Potvrzení změn pomocí git commit --amend
  3. Znovu proveďte změny.

Pokud byl tajný kód přidán později v historii, upravte potvrzení pomocí interaktivního přenesení změn:

  1. Použijte git log k určení, ve které revizi jste tajemství poprvé uložili.
  2. Provedení interaktivního rebase: git rebase -i [commit ID before credential introduction]~1
  3. Určete potvrzení, které chcete upravit, změnou pick na edit na prvním řádku textu, který se zobrazí v editoru.
  4. Odeberte tajné informace z vašeho kódu.
  5. Potvrďte změnu pomocí git commit --amend.
  6. Dokončete rebase spuštěním git rebase --continue příkazu.

Odeslání blokovaného tajemství

Neobcházejte označená tajemství, protože to může ohrozit zabezpečení vaší společnosti. Pokud potvrdíte, že identifikovaný tajný klíč není falešně pozitivní, odeberte tajný kód z celé historie větví, než se pokusíte změny znovu odeslat.

Pokud se domníváte, že blokované tajemství je falešně pozitivní nebo bezpečné k odeslání, můžete obejít ochranu před odesíláním. Do zprávy potvrzení zahrňte řetězec skip-secret-scanning:true . I když vynecháte ochranu nabízených oznámení, v uživatelském prostředí upozornění se vygeneruje upozornění na kontrolu tajných kódů, jakmile se tajný kód odešle.

O kontrolách platnosti

Kontroly platnosti tajných kódů pomáhají určit prioritu výstrah tím, že udávají, jestli je zjištěný tajný kód stále použitelný. U podporovaných typů tajných kódů GitHub Advanced Security pro Azure DevOps automaticky osloví vydávajícího poskytovatele, aby zjistil, zda jsou přihlašovací údaje aktivní, a po povolení kontroly tajných kódů není vyžadován žádný samostatný přepínač funkce.

Snímek obrazovky se seznamem ověření tajných kódů rozšířeného zabezpečení

Když máte gitHub Advanced Security pro sadu Azure DevOps nebo ochranu tajných kódů, automaticky povolíte kontroly platnosti.

Co získáte

  • Automatické ověření podporovaných typů tajných kódů partnera (bez dodatečného nastavení)
  • Stav zobrazený v seznamu výstrah skenování skrytých kódů a v podokně podrobností.
  • Filtrování podle stavu ověření, abyste se mohli zaměřit na aktivní tajné kódy.
  • Volitelně můžete v zobrazení upozornění provést kontrolu platnosti tajného kódu na vyžádání.

Významy stavu

Stav Meaning Činnost
Active Poskytovatel potvrdil, že tajný kód je stále použitelný. Otevřete výstrahu a postupujte podle pokynů k doporučením a nápravě.
Neznámý Žádný konečný signál činnosti; může být neaktivní nebo ověření selhalo kvůli službě, síti nebo jiným neočekávaným chybám. Považovat za pravděpodobně aktivní; zkuste ověření zopakovat nebo otočit, pokud je citlivá.

Typický pracovní postup

  1. Stav ověření filtru = Active pro zobrazení výstrah s nejvyšším rizikem
  2. Pro každé aktivní tajemství otevřete výstrahu a postupujte podle doporučení a nápravných opatření zobrazených ve výstraze.
  3. Po nápravě použijte ověření na vyžádání a potvrďte změny stavu.
  4. Řešte neznámá tajemství – zkuste ověření na vyžádání nebo s nimi zacházejte jako s aktivními, pokud jsou data citlivá.
  5. Po dokončení kroků nápravy v upozornění zavřete upozornění podle vaší zásady.

Ověření na vyžádání

Po provedení doporučení a nápravy nebo pokud předchozí pokus vrátil hodnotu Neznámé, použijte "ověření tajemství" (v podrobnostech výstrahy). Časové razítko se po dokončení aktualizuje.