secure only non identified headers expiration cookie http cookies session-cookies

http - only - ¿Cómo funciona la marca "Secure" de cookies?



httponly cookie php (2)

Sé que una cookie con bandera secure no se enviará a través de una conexión no encriptada. Me pregunto cómo funciona esto en profundidad.

¿Quién es responsable de determinar si la cookie se enviará o no?


El cliente establece esto solo para conexiones encriptadas y esto se define en RFC 6265 :

El atributo de seguridad limita el alcance de la cookie para "asegurar" canales (donde el agente de usuario define "seguro"). Cuando una cookie tiene el atributo Secure, el agente de usuario incluirá la cookie en una solicitud HTTP solo si la solicitud se transmite a través de un canal seguro (generalmente HTTP sobre Transport Layer Security (TLS) [RFC2818]).

Aunque aparentemente útil para proteger las cookies de los atacantes de red activos, el atributo de seguridad protege solo la confidencialidad de la cookie. Un atacante de red activo puede sobrescribir las cookies seguras de un canal inseguro, lo que altera su integridad (consulte la Sección 8.6 para obtener más información).


Solo otra palabra sobre el tema:

Omitir secure porque su sitio web example.com es completamente https no es suficiente.

Si su usuario está llegando explícitamente a http://example.com , se lo redireccionará a https://example.com pero ya es demasiado tarde; la primera solicitud contenía la cookie.