{"id":228144,"date":"2022-10-12T09:25:00","date_gmt":"2022-10-12T06:25:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=228144"},"modified":"2022-11-09T00:56:52","modified_gmt":"2022-11-08T21:56:52","slug":"detenga-el-secuestro-de-clics-evitando-que-su-sitio-de-wordpress-se-cargue-en-un-marco","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/es\/detenga-el-secuestro-de-clics-evitando-que-su-sitio-de-wordpress-se-cargue-en-un-marco\/","title":{"rendered":"Detenga el secuestro de clics evitando que su sitio de WordPress se cargue en un marco"},"content":{"rendered":"<p><a href=\"https:\/\/hashnode.com\/@wholesomecode\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external\"><\/a><\/p>\n<p>El secuestro de clics es un riesgo de seguridad potencial causado por alguien que carga su sitio web dentro de un marco en otro sitio web y hace que parezca que el sitio web es leg\u00edtimo; sin embargo, secuestrar\u00e1n las interacciones que realice con ese sitio, como el env\u00edo de formularios.<\/p>\n<p>Por ejemplo, si su sitio web requiere que un usuario inicie sesi\u00f3n, el sitio web malicioso podr\u00eda estar registrando el nombre de usuario y las contrase\u00f1as de los usuarios que inician sesi\u00f3n a trav\u00e9s de su sitio enmarcado a trav\u00e9s de un ataque de clickjacking.<\/p>\n<p>Afortunadamente, prevenir el secuestro de clics en WordPress es bastante sencillo. Simplemente puede agregar este peque\u00f1o fragmento de c\u00f3digo en su <code>functions.php<\/code>archivo para establecer el <code>X-FRAME-OPTIONS<\/code>encabezado en<code>SAMEORIGIN.<\/code><\/p>\n<pre><code>\nfunction wc_prevent_clickjacking() {\n    header( 'X-FRAME-OPTIONS: SAMEORIGIN' );\n}\nadd_action( 'send_headers', 'wc_prevent_clickjacking', 10 );\n<\/code><\/pre>\n<p>Esto enviar\u00e1 un encabezado junto con WordPress que le indica a los navegadores que eviten que las p\u00e1ginas se muestren en marcos que no est\u00e9n alojados en el mismo dominio que su sitio web.<\/p>\n<h2>Clickjacking y navegadores antiguos<\/h2>\n<p>Los navegadores m\u00e1s antiguos (navegadores anteriores a Internet Explorer 8 (IE8)) no entienden el <code>X-FRAME-OPTIONS<\/code>encabezado, por lo que tenemos que recurrir a JavaScript. Para esto puedes usar el siguiente c\u00f3digo:<\/p>\n<pre><code>\ntry { top.document.domain } catch (e) {\n    var f = function() {\n        document.body.innerHTML = '';\n    };\n    setInterval( f, 1 );\n    if (document.body) {\n        document.body.onload = f;\n    };\n}\n<\/code><\/pre>\n<p>Dentro de su tema, cree una carpeta con el nombre <code>JS<\/code>y corte y pegue ese fragmento de c\u00f3digo en un archivo llamado <code>clickjack-protection.js<\/code>.<\/p>\n<p>Por supuesto, solo queremos poner en cola el script anterior para que se cargue en navegadores anteriores a IE8, por lo que podemos usar una buena declaraci\u00f3n condicional antigua para hacer esto, colocando el siguiente c\u00f3digo en su <code>functions.php<\/code>archivo:<\/p>\n<pre><code>\n function wc_prevent_clickjacking_older_browsers() {\n    $script_url = get_stylesheet_directory_uri(). 'js\/clickjack-protection.js';\n    wp_enqueue_script(\n        'clickjack-protection-js',\n        $script_url\n    );\n\n    wp_script_add_data( 'clickjack-protection-js', 'conditional', 'lt IE 8' );\n}\nadd_action( 'wp_enqueue_scripts', 'wc_prevent_clickjacking_older_browsers', 10 );\n<\/code><\/pre>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fuente de grabaci\u00f3n:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/wholesomecode.ltd\" class=\"external external_icon\">wholesomecode.ltd<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>El secuestro de clics es un riesgo de seguridad potencial causado por alguien que carga su sitio web dentro de un marco en otro sitio web y hace que parezca que el sitio web es leg\u00edtimo, sin embargo, el&#8230;<\/p>\n","protected":false},"author":1,"featured_media":224174,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[],"tags":[1172],"class_list":["post-228144","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-affiai-es"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/posts\/228144","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/comments?post=228144"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/posts\/228144\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/media\/224174"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/media?parent=228144"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/categories?post=228144"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/es\/wp-json\/wp\/v2\/tags?post=228144"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}