# Cookies Hacking {{#include ../../banners/hacktricks-training.md}} ## Atributos de Cookies Cookies vêm com vários atributos que controlam seu comportamento no navegador do usuário. Aqui está um resumo desses atributos em uma voz mais passiva: ### Expires e Max-Age A data de expiração de um cookie é determinada pelo atributo `Expires`. Por outro lado, o atributo `Max-age` define o tempo em segundos até que um cookie seja excluído. **Opte por `Max-age`, pois reflete práticas mais modernas.** ### Domínio Os hosts que recebem um cookie são especificados pelo atributo `Domain`. Por padrão, isso é definido para o host que emitiu o cookie, não incluindo seus subdomínios. No entanto, quando o atributo `Domain` é explicitamente definido, ele abrange subdomínios também. Isso torna a especificação do atributo `Domain` uma opção menos restritiva, útil para cenários onde o compartilhamento de cookies entre subdomínios é necessário. Por exemplo, definir `Domain=mozilla.org` torna os cookies acessíveis em seus subdomínios como `developer.mozilla.org`. ### Caminho Um caminho de URL específico que deve estar presente na URL solicitada para que o cabeçalho `Cookie` seja enviado é indicado pelo atributo `Path`. Este atributo considera o caractere `/` como um separador de diretório, permitindo correspondências em subdiretórios também. ### Regras de Ordenação Quando dois cookies têm o mesmo nome, o escolhido para envio é baseado em: - O cookie que corresponde ao caminho mais longo na URL solicitada. - O cookie definido mais recentemente se os caminhos forem idênticos. ### SameSite - O atributo `SameSite` dita se os cookies são enviados em solicitações originadas de domínios de terceiros. Ele oferece três configurações: - **Strict**: Restringe o cookie de ser enviado em solicitações de terceiros. - **Lax**: Permite que o cookie seja enviado com solicitações GET iniciadas por sites de terceiros. - **None**: Permite que o cookie seja enviado de qualquer domínio de terceiros. Lembre-se, ao configurar cookies, entender esses atributos pode ajudar a garantir que eles se comportem como esperado em diferentes cenários. | **Tipo de Solicitação** | **Código de Exemplo** | **Cookies Enviados Quando** | | ----------------------- | --------------------------------------- | ---------------------------- | | Link | \\ | NotSet\*, Lax, None | | Prerender | \ | NotSet\*, Lax, None | | Formulário GET | \