✅ Notícias, temas e plug-ins da WEB e do WordPress. Aqui compartilhamos dicas e as melhores soluções para sites.

Pare o Clickjacking impedindo que seu site WordPress seja carregado em um quadro

42

O sequestro de cliques é um risco de segurança potencial causado por alguém que carrega seu site dentro de um frame em outro site e faz parecer que o site é legítimo.

Por exemplo, se seu site exige que um usuário faça login, o site malicioso pode estar registrando o nome de usuário e as senhas de usuários que fazem login por meio de seu site emoldurado por meio de um ataque de clickjacking.

Felizmente, evitar clickjacking no WordPress é bastante simples. Você pode simplesmente adicionar este pequeno trecho de código em seu functions.phparquivo para definir o X-FRAME-OPTIONScabeçalho paraSAMEORIGIN.


function wc_prevent_clickjacking() {
    header( 'X-FRAME-OPTIONS: SAMEORIGIN' );
}
add_action( 'send_headers', 'wc_prevent_clickjacking', 10 );

Isso enviará um cabeçalho junto com o WordPress que informa aos navegadores para impedir que as páginas apareçam em quadros que não estejam hospedados no mesmo domínio do seu site.

Clickjacking e navegadores mais antigos

Navegadores mais antigos (navegadores mais antigos que o Internet Explorer 8 (IE8)) não entendem o X-FRAME-OPTIONScabeçalho, então temos que recorrer ao JavaScript. Para isso você pode usar o seguinte código:


try { top.document.domain } catch (e) {
    var f = function() {
        document.body.innerHTML = '';
    };
    setInterval( f, 1 );
    if (document.body) {
        document.body.onload = f;
    };
}

Dentro do seu tema, crie uma pasta chamada JSe recorte e cole esse trecho de código em um arquivo chamado clickjack-protection.js.

É claro que queremos apenas enfileirar o script acima para carregar navegadores anteriores ao IE8, para que possamos usar uma boa e velha instrução condicional para fazer isso, colocando o seguinte código em seu functions.phparquivo:


 function wc_prevent_clickjacking_older_browsers() {
    $script_url = get_stylesheet_directory_uri(). 'js/clickjack-protection.js';
    wp_enqueue_script(
        'clickjack-protection-js',
        $script_url
    );

    wp_script_add_data( 'clickjack-protection-js', 'conditional', 'lt IE 8' );
}
add_action( 'wp_enqueue_scripts', 'wc_prevent_clickjacking_older_browsers', 10 );

Fonte de gravação: wholesomecode.ltd

Este site usa cookies para melhorar sua experiência. Presumiremos que você está ok com isso, mas você pode cancelar, se desejar. Aceitar Consulte Mais informação