Resumo

  • draft-ietf-httpbis-layered-cookies-02 trata SameSite como condição de envio em contextos entre sites. O atributo pode mitigar classes de CSRF, mas não autentica a pessoa nem prova intenção.
  • O navegador anexar uma cookie demonstra sua decisão sob regras de armazenamento e recuperação. O servidor ainda precisa validar proveniência, sessão, principal, permissão da ação e resultado.

O pedido sensível chegou com uma cookie SameSite=Strict. A aplicação marcou a operação como consentida, argumentando que um site externo não poderia ter carregado a credencial naquele contexto.

O atributo podia reduzir uma rota de ataque. Não dizia quem iniciou a navegação, se a interface induziu a ação, se a sessão pertencia ao operador atual ou se aquela operação estava autorizada.

A revisão 02 de Cookies: HTTP State Management Mechanism foi publicada em 21 de maio de 2026 como Internet-Draft ativo do grupo HTTP da IETF, com expiração em 22 de novembro. Pretende Standards Track e, se aprovada, substituiria RFC 6265 e 6265bis. Continua sendo trabalho em andamento, não RFC ou estudo universal de implementação.

SameSite decide contexto de envio

Cookies são anexadas automaticamente quando as regras de escopo e política são satisfeitas. SameSite acrescenta condições relacionadas ao contexto de site, restringindo quando o estado acompanha requisições entre sites.

Esse controle é importante contra fluxos em que um atacante designa o alvo e o navegador fornece autoridade ambiente. Ainda assim, ele não observa a mente da pessoa. Uma navegação same-site pode ser automatizada, induzida ou ocorrer dentro de uma sessão comprometida.

O recibo correto diz que, naquele contexto calculado pelo agente, o atributo permitiu o envio. Ele não diz que o usuário confirmou a operação. A aplicação precisa de prova de intenção adequada ao risco.

Controles de contexto e controles de autorização podem cooperar, mas um não deve herdar o mandato do outro.

Autoridade ambiente chega sem o segredo ser conhecido

O projeto descreve cookies como autoridade ambiente. Uma parte remota pode emitir uma requisição ou designar uma URL sem conhecer o valor da cookie; o agente do usuário a anexa.

O servidor vê credencial válida e pode executar a ação escolhida pelo terceiro. Essa separação entre designação e autorização sustenta ataques de deputado confuso e CSRF.

SameSite reduz alguns contextos, mas não elimina toda forma de designação, mudança de estado ou engenharia de interface. Ação sensível requer material vinculado à requisição, freshness, confirmação ou mecanismo equivalente.

Depois disso, o servidor ainda decide se o principal tem permissão e se o commit ocorreu. Cookie é entrada, não recibo final.

Secure e HttpOnly não ampliam o mandato

Secure condiciona o envio a canal seguro. TLS protege transporte e autentica o par em seu modelo. Não reconstitui quem colocou o valor no armazenamento.

HttpOnly reduz leitura por APIs não HTTP. Não impede anexo automático e não prova que apenas a aplicação confiável estabeleceu a cookie.

Empilhar Secure, HttpOnly e SameSite é prudente. A pilha continua sendo três decisões distintas. Nenhuma verifica o registro servidor, a revogação, o principal ou a autorização daquela ação.

Uma tela que mostra apenas “todos os atributos presentes” cria certificação inexistente. A revisão precisa mostrar ameaça coberta e risco residual.

Domain e irmãos afetam proveniência

Sem Domain, a cookie é host-only. Com Domain, alcança domínio e subdomínios elegíveis. Regras de sufixo público evitam escopo sobre registries compartilhados, mas não garantem confiança entre irmãos.

Um irmão pode estabelecer cookie de domínio pai e fazê-la chegar ao outro. O receptor pode não distingui-la do valor próprio. SameSite não resolve essa integridade entre irmãos porque ambos podem estar no mesmo site calculado.

Host-only e __Host- ajudam a estreitar. O servidor ainda precisa validar valor, audiência e sessão. O nome do domínio é topologia, não assinatura de equipe.

Novos subdomínios e mudanças de hospedagem alteram a superfície mesmo sem mexer na aplicação principal.

Path e porta não são contêineres de confiança

Path governa seleção por caminho, mas não impede uma resposta de outro caminho de definir o valor. Serviços não confiáveis não devem depender de Paths diferentes para proteger estado sensível.

Cookies também não são isoladas por porta. O modelo de origem web distingue porta, porém o armazenamento de cookies usa outra fronteira. Um painel administrativo em porta diferente pode receber a mesma credencial.

Essa divergência precisa constar do mapa de controle. Separar processo, porta ou prefixo URL não separa automaticamente autoridade ambiente.

Quando há desconfiança, separar host e vincular estado no servidor ao contexto esperado é a decisão robusta.

Expiração limita, mas não promete presença

Expires e Max-Age definem máximo de vida. O agente pode expulsar antes por quota, memória, privacidade ou ação do usuário.

Ausência posterior não prova logout nem revogação. Presença não prova sessão válida; o servidor pode rejeitar ou rotacionar. Cliente e servidor têm livros separados.

Ao excluir, Path e Domain precisam corresponder ao estado original. Um logout com mesmo nome e escopo errado pode deixar outra cookie viva.

Revogação profissional invalida o servidor primeiro, tenta limpeza exata e verifica rejeição posterior. A página “saiu” não é o recibo de todas as etapas.

Nomes duplicados e ordem não criam prioridade

Nomes diferenciam maiúsculas. Cookies com mesmo nome em escopos diferentes podem ser serializadas juntas, e o servidor não deve depender da ordem.

Um parser que escolhe sempre o primeiro valor inventa prioridade. Um irmão ou path vizinho pode explorar esse hábito sem quebrar a sintaxe.

Logs devem conservar ambiguidade estrutural, nunca segredo bruto. A aplicação deve rejeitar combinações inesperadas ou resolver com regra explícita e testada.

A posição no cabeçalho não é cadeia de custódia.

Fontes e limites

O pacote congelado contém a revisão 02, registros Datatracker, HTTP WG, RFC 6265 e 6265bis, HTTP, TLS 1.3, origem e URL WHATWG, IANA e Public Suffix List.

As fontes estabelecem texto, não conformidade de navegador, incidente ou implantação. A abertura sobre consentimento é cenário analítico.

Fontes