Peatage klõpsamine, takistades oma WordPressi saidi raamis laadimist
Klikkimine on potentsiaalne turvarisk, mille põhjustab keegi, kes laadib teie veebisaidi mõne teise veebisaidi raami sisse ja jätab mulje, nagu see veebisait oleks seaduslik, kuid see kaaperdab teie suhtlust selle saidiga (nt vormide esitamine).
Näiteks kui teie veebisait nõuab kasutajalt sisselogimist, võib pahatahtlik veebisait logida nende kasutajate kasutajanimesid ja paroole, kes logivad sisse nende raamitud saidi kaudu klõpsamisrünnaku kaudu.
Õnneks on WordPressis klõpsamise ärahoidmine üsna lihtne. Päise määramiseks saate lihtsalt functions.php
faili lisada selle väikese koodilõiguX-FRAME-OPTIONS``SAMEORIGIN.
function wc_prevent_clickjacking() {
header( 'X-FRAME-OPTIONS: SAMEORIGIN' );
}
add_action( 'send_headers', 'wc_prevent_clickjacking', 10 );
See saadab koos WordPressiga päise, mis käsib brauseritel takistada lehtede kuvamist raamides, mida ei hostita teie veebisaidiga samas domeenis.
Klikkide äravõtmine ja vanemad brauserid
Vanemad brauserid (brauserid, mis on vanemad kui Internet Explorer 8 (IE8)) ei mõista X-FRAME-OPTIONS
päist, seega peame kasutama JavaScripti. Selleks saate kasutada järgmist koodi:
try { top.document.domain } catch (e) {
var f = function() {
document.body.innerHTML = '';
};
setInterval( f, 1 );
if (document.body) {
document.body.onload = f;
};
}
Looge oma teema sees kaust nimega JS
ning lõigake ja kleepige see koodilõik faili nimega clickjack-protection.js
.
Loomulikult tahame ülaltoodud skripti laadimiseks järjekorda panna ainult brauserite jaoks, mis on vanemad kui IE8, nii et saame kasutada selleks vana head tingimuslauset, lisades teie functions.php
faili järgmise koodi:
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 );