Sdílet prostřednictvím


__security_init_cookie

Inicializuje soubor cookie globálního zabezpečení.

Syntaxe

void __security_init_cookie(void);

Poznámky

Globální soubor cookie zabezpečení se používá pro ochranu proti přetečení vyrovnávací paměti v kódu zkompilovaném pomocí /GS (kontrola zabezpečení vyrovnávací paměti) a v kódu, který používá zpracování výjimek. Při vstupu do funkce chráněné proti přetečení se soubor cookie umístí do zásobníku a při ukončení se hodnota v zásobníku porovná s globálním souborem cookie. Jakýkoli rozdíl mezi nimi znamená, že došlo k přetečení vyrovnávací paměti a způsobí okamžité ukončení programu.

__security_init_cookie CrT je obvykle volána při inicializaci. Pokud vynecháte inicializaci CRT , například pokud použijete /ENTRY k zadání vstupního bodu, musíte volat __security_init_cookie sami sobě. Pokud __security_init_cookie není volána, globální soubor cookie zabezpečení je nastavený na výchozí hodnotu a ochrana před přetečením vyrovnávací paměti je ohrožena. Protože útočník může zneužít tuto výchozí hodnotu souboru cookie k porazit kontroly přetečení vyrovnávací paměti, doporučujeme, abyste vždy volali __security_init_cookie při definování vlastního vstupního bodu.

Volání __security_init_cookie musí být provedeno před vstupem jakékoli funkce chráněné proti přetečení. Jinak se zjistí přetečení vyrovnávací paměti. Další informace naleznete v tématu Chyba modulu C Runtime R6035.

Příklad

Podívejte se na příklady v chybě modulu C Runtime R6035.

Požadavky

Rutina Požadovaný hlavičkový soubor
__security_init_cookie <process.h>

__security_init_cookie je rozšíření Microsoftu pro standardní knihovnu modulu C Runtime. Informace o kompatibilitě najdete v tématu Kompatibilita.

Viz také

Středisko Microsoft Security Response Center