Desativar cookie __cfduid do Cloudflare

13

Existe uma configuração do Cloudflare que corresponde à criação do __cfduidcookie da sessão?

Atualmente estou testando CF; principalmente para o gerenciamento puro do DNS e a CDN implícita. Mas o WAF básico é possivelmente uma adição tão boa quanto o Apaches mod_security / CRS. No entanto, não sei ao certo qual é o objetivo dos cookies e preferiria me livrar disso.

A configuração mais óbvia

Perfil de segurança: essencialmente desligado

Parece também ter essencialmente nenhum efeito na criação de __cfduidcom cada resposta HTTP. O objetivo dos cookies é, presumivelmente, optar por excluir usuários únicos das regras de firewall, captchas repetidos do cloudflare, etc.

A documentação de suporte alude a isso. Onde a primeira revisão de 09/2012 ( https://support.cloudflare.com/hc/en-us/articles/200169536-What-does-the-cfduid-cookie-do- ) diz que esse comportamento nunca pode ser desligado. Uma entrada dois meses depois do 11/2012 ( https://support.cloudflare.com/hc/en-us/articles/200170156-What-does-the-CloudFlare-cfduid-cookie-do- ), no entanto, omite essa observação.

Embora o próprio Cloudflares TOS verifique como plausível, esse cookie tem todas as propriedades de uma sessão de rastreamento dc41f5a78bc3e27d44b70fca4606e4262283407700773. A vida útil excessiva de cookies de 6 anos é muito estranha para o exemplo de caso de uso do visitante de cibercafés. E como eu pessoalmente evito sessões desnecessárias e não quero colocar uma nota de privacidade (à luz da infame lei de cookies da UE) como todos os outros, eu prefiro que ela ocorra por padrão.

Uma solução alternativa como:

  Header add Set-Cookie "__cfduid= ; path=/; domain=.example.org; HttpOnly"

Evita seu armazenamento, mas mantém dois cabeçalhos desnecessários e não parece excessivamente confiável.

Então, existe outra configuração de CF para isso?

mario
fonte
1
Além de coisas divertidas como essa , a única solução disponível é proxy da conexão e remover o cookie antes que ele atinja o cliente.
Synchro

Respostas:

4

Não, não há como desativar o cookie se estivermos executando proxy do registro (se um subdomínio não estiver sendo executado através do nosso proxy nas configurações de DNS, não adicionaremos o cookie, pois ele vai direto para o servidor) . O cookie é basicamente o que faz a segurança (como uma página de desafio) funcionar.

damoncloudflare
fonte
8
"Faz o trabalho de segurança" ainda é muito indescritível. Como ajuda a segurança contra, por exemplo, bots que normalmente não estão enviando cookies de sessão? Se é apenas para CAPTCHAS, para que serve o tempo de expiração excessivo de cookies?
mario
2
Eu suspeito que é para estabelecer quem é confiável, não quem não é confiável. Se você não possui o cookie da sessão, está no estado de menor confiança. Se você tiver o cookie de sessão, poderá não ser confiável ou confiável ou em qualquer outro lugar. Portanto, não enviar o cookie da sessão significa que você será tratado de maneira mais hostil pelo WAF, e não menos. Concluiria então que ele tem um tempo de validade de cookie 'excessivo' para impedir que você seja desnecessariamente incomodado ou estrangulado no futuro.
Rushyo
Acontece que o cloudflare hospeda muitas coisas que costumo procurar (documentação da API, projetos de código aberto), que são inúteis para mim agora. Não. Não vou habilitar a injeção de cookies de sessão aleatória em domínios que não têm nada a ver com o cloudflare (como jqueryui.com, expressjs.com). __cfduidquebra os padrões da internet. Está errado.
Martin Algesten
4

Qual é o problema com este cookie? Você está usando o serviço deles e deseja se beneficiar do serviço e da segurança deles - de acordo com o Cloudflare, esse cookie ajuda especialmente por razões de segurança. Independentemente disso, esse tipo de cookie está isento da mensagem da lei de cookies:

No entanto, alguns cookies estão isentos deste requisito. O consentimento não é necessário se o cookie for:

· Usado com o único objetivo de realizar a transmissão de uma comunicação, e

· Estritamente necessário para que o provedor de um serviço da sociedade da informação solicite explicitamente o usuário para fornecer esse serviço.

Leia mais: http://ec.europa.eu/ipg/basics/legal/cookies/index_en.htm

Este cookie Cloudflare está definitivamente isento da lei de cookies.

Luca Steeb
fonte
1
"por razões de segurança" é precisamente a explicação insolente que desencadeou essa pergunta. Para que é usado agora? Por que ele ainda está lá quando os recursos de "segurança" estão desativados ? Por que tem 6 anos de vida? A opinião legal sobre isso é principalmente ortogonal.
mario
Receio que alguém possa responder a essa pergunta em relação à segurança, mesmo que os funcionários do Cloudflare (presumo que a damoncloudfare seja uma) não possam lhe contar, independentemente de quais motivos.
Luca Steeb # 28/16
2
Aqui está um problema com este cookie: ele dispara vários falsos positivos nos scanners vuln / PCI. Por exemplo, o Saintbot / Controlscan vê a resposta com uma sessão de base de cookies var e a sinaliza como phprpc vuln, mesmo que o phprpc não esteja presente (404). É irritante que falhemos constantemente nas verificações de PCI programadas por causa desse cookie simples. Claro que é culpa dos fornecedores, mas depois de mais ou menos 20 atestados + tickets e chamando-os, eles ainda não consertaram o filtro de verificação. Devido a essa falha no reparo, esse cookie CF causa falha na PCI sob a premissa de falso positivo (ainda uma falha).
dhaupin
Eu diria que você deve culpar os scanners, não Cloudflare ..
Luca Steeb
O outro problema, além dos scanners de vulnerabilidades que fornecem falsos positivos, é o impacto no desempenho, embora seja insignificante, existe e não deveria.
Ray Foss
2

Etapas para desativar um cookie - php. Eu não posso assumir o crédito por isso, não é minha solução, mas estou feliz em espalhar a riqueza.

function deleteSpecificCookies() {

    var cookies = document.cookie.split(";");
    var all_cookies = '';

    for (var i = 0; i < cookies.length; i++) {

        var cookie_name  = cookies[i].split("=")[0];
        var cookie_value = cookies[i].split("=")[1];

        if( cookie_name.trim() != '__utmb' ) {

            all_cookies = all_cookies + cookies[i] + ";";

        }

    }

    if(!document.__defineGetter__) {

        Object.defineProperty(document, 'cookie', {
            get: function(){return all_cookies; },
            set: function(){return true},
        });

    } else {

        document.__defineGetter__("cookie", function() { return all_cookies; } );
        document.__defineSetter__("cookie", function() { return true; } );

    }
}
Alfie
fonte