# Cookies Hacking {{#include ../../banners/hacktricks-training.md}} ## Atributos de Cookies Las cookies vienen con varios atributos que controlan su comportamiento en el navegador del usuario. Aquí hay un resumen de estos atributos en una voz más pasiva: ### Expires y Max-Age La fecha de caducidad de una cookie se determina por el atributo `Expires`. Por el contrario, el atributo `Max-age` define el tiempo en segundos hasta que una cookie se elimina. **Opta por `Max-age` ya que refleja prácticas más modernas.** ### Dominio Los hosts que recibirán una cookie se especifican mediante el atributo `Domain`. Por defecto, esto se establece en el host que emitió la cookie, sin incluir sus subdominios. Sin embargo, cuando el atributo `Domain` se establece explícitamente, abarca también los subdominios. Esto hace que la especificación del atributo `Domain` sea una opción menos restrictiva, útil para escenarios donde compartir cookies entre subdominios es necesario. Por ejemplo, establecer `Domain=mozilla.org` hace que las cookies sean accesibles en sus subdominios como `developer.mozilla.org`. ### Ruta Un camino de URL específico que debe estar presente en la URL solicitada para que se envíe el encabezado `Cookie` se indica mediante el atributo `Path`. Este atributo considera el carácter `/` como un separador de directorios, permitiendo coincidencias en subdirectorios también. ### Reglas de Ordenación Cuando dos cookies tienen el mismo nombre, la que se elige para enviar se basa en: - La cookie que coincide con la ruta más larga en la URL solicitada. - La cookie establecida más recientemente si las rutas son idénticas. ### SameSite - El atributo `SameSite` dicta si las cookies se envían en solicitudes que provienen de dominios de terceros. Ofrece tres configuraciones: - **Strict**: Restringe el envío de la cookie en solicitudes de terceros. - **Lax**: Permite que la cookie se envíe con solicitudes GET iniciadas por sitios web de terceros. - **None**: Permite que la cookie se envíe desde cualquier dominio de terceros. Recuerda, al configurar cookies, entender estos atributos puede ayudar a garantizar que se comporten como se espera en diferentes escenarios. | **Tipo de Solicitud** | **Código de Ejemplo** | **Cookies Enviadas Cuando** | | --------------------- | --------------------------------------- | ---------------------------- | | Enlace | \\ | NotSet\*, Lax, None | | Prerender | \ | NotSet\*, Lax, None | | Formulario GET | \