__security_init_cookie

 

Para obtener la documentación más reciente de Visual Studio 2017 RC, consulte Documentación de Visual Studio 2017 RC.

Inicializa la cookie de seguridad global.

void __security_init_cookie(void);  

La cookie de seguridad global se utiliza para la protección de saturación del búfer en código compilado con /GS (Buffer Security Check) y en el código que utiliza el control de excepciones. En la entrada a una función con protección de saturación, la cookie se coloca en la pila y, en la salida, el valor de la pila se compara con la cookie global. Cualquier diferencia en la comparación indica que se ha producido una saturación del búfer y da lugar a la finalización inmediata del programa.

Normalmente, el CRT llama a __security_init_cookie al inicializarse. Si se omite la inicialización de CRT, por ejemplo, si utiliza /Entry para especificar un punto de entrada, se debe llamar __security_init_cookie usted mismo. Si no se llama a __security_init_cookie, la cookie de seguridad global se configura en un valor predeterminado y se pone en peligro la protección de saturación del búfer Dado que un atacante puede aprovechar este valor de cookie predeterminado para invalidar las comprobaciones de saturación del búfer, se recomienda que llame siempre a __security_init_cookie al definir su propio punto de entrada.

La llamada a __security_init_cookie se debe hacer antes de especificar ninguna función de protección contra saturación, ya que de lo contrario se detecta una saturación del búfer falsa. Para obtener más información, consulte Error de tiempo de ejecución de C R6035.

Vea los ejemplos de Error de tiempo de ejecución de C R6035.

RutinaEncabezado necesario
__security_init_cookie<process.h>

__security_init_cookie es una extensión de Microsoft de la biblioteca estándar en tiempo de ejecución de C. Para obtener información sobre la compatibilidad, vea Compatibilidad.

No es aplicable. Solo se debe llamar a esta función desde código nativo, no administrado.

Comprobación de seguridad del compilador

Mostrar: