{"id":130,"date":"2020-09-10T00:57:00","date_gmt":"2020-09-09T23:57:00","guid":{"rendered":"https:\/\/www.julianmejio.com\/blog\/?p=130"},"modified":"2020-09-11T16:37:21","modified_gmt":"2020-09-11T15:37:21","slug":"proteger-wordpress-y-cualquier-otro-sitio-con-el-firewall-de-cloudflare","status":"publish","type":"post","link":"https:\/\/www.julianmejio.com\/blog\/2020\/09\/10\/proteger-wordpress-y-cualquier-otro-sitio-con-el-firewall-de-cloudflare\/","title":{"rendered":"Proteger WordPress (y cualquier otro sitio) con el firewall de Cloudflare"},"content":{"rendered":"\n<p>WordPress es una plataforma muy potente para la creaci\u00f3n de sitios y aplicaciones web de todo tipo. Grandes marcas como BBC, MTV, Sony, Disney e incluso Facebook la usan para publicitar sus productos y servicios. La ventaja de WordPress es que con muy poco esfuerzo puedes montar un sitio web completamente funcional, y con los plugins disponibles a un par de clics la personalizaci\u00f3n y caracter\u00edsticas con las que puedes interactuar es virtualmente infinita.<\/p>\n\n\n\n<!--more-->\n\n\n\n<p>Pero esto tiene un load oscuro: su popularidad tambi\u00e9n atrae a personas malintencionadas que, con fines particulares, toman el control de la plataforma sin autorizaci\u00f3n. En el a\u00f1o 2019 se descubrieron 11 vulnerabilidades propias de la plataforma, y a esto se suman la cantidad de plugins que tienen puertas traseras, ya sea porque es intencionado o por una programaci\u00f3n con carencias en tema de seguridad.<\/p>\n\n\n\n<p>Por eso, es muy importante que al usar una herramienta como WordPress, se piense en seguridad, al menos una b\u00e1sica. Y esto aplica para cualquier tipo de plataforma o lenguaje que sirva contenido din\u00e1mico. Muchos pensar\u00e1n que WordPress, al ser programado en PHP, contiene esta cantidad de vulnerabilidades, pero por ejemplo Django, escrito en Python y con una tendencia de uso cada vez mayor, se le reportaron 8 vulnerabilidades en 2019, a solo 3 de alcanzar a nuestro protagonista.<\/p>\n\n\n\n<p>As\u00ed que la protecci\u00f3n y seguridad debe aplicarse a todo, y con la ayuda del firewall de Cloudflare podemos proteger la gran mayor\u00eda de nuestra aplicaci\u00f3n web, sin importar la plataforma que usemos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Configurar el firewall de Cloudflare<\/h2>\n\n\n\n<p>Lo primero que necesitamos es que nuestro sitio est\u00e9 correctamente configurado y use los DNS de <a rel=\"noreferrer noopener\" href=\"https:\/\/www.cloudflare.com\/\" target=\"_blank\">Cloudflare<\/a>. Si no tienes una cuenta puedes crear una. Estos pasos se pueden aplicar con una suscripci\u00f3n gratuita.<\/p>\n\n\n\n<p>Recuerda configurar la zona DNS del dominio para que pase a trav\u00e9s del proxy reverso de Cloudflare.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"348\" data-attachment-id=\"133\" data-permalink=\"https:\/\/www.julianmejio.com\/blog\/2020\/09\/10\/proteger-wordpress-y-cualquier-otro-sitio-con-el-firewall-de-cloudflare\/captura-de-pantalla-2020-09-10-a-las-0-32-21\/\" data-orig-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21.jpg\" data-orig-size=\"2048,696\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Captura-de-Pantalla-2020-09-10-a-las-0.32.21\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-300x102.jpg\" data-large-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-1024x348.jpg\" src=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-1024x348.jpg\" alt=\"\" class=\"wp-image-133\" srcset=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-1024x348.jpg 1024w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-300x102.jpg 300w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-768x261.jpg 768w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-1536x522.jpg 1536w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-1200x408.jpg 1200w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21-1980x673.jpg 1980w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-0.32.21.jpg 2048w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Ejemplo de zona DNS con proxy reverso habilitado para los registros A y CNAME <em>www<\/em>.<\/figcaption><\/figure>\n\n\n\n<p>Esto garantizar\u00e1 que al ingresar por el nombre de dominio, todo el tr\u00e1fico pase por el firewall. Recuerda que dentro del servidor tambi\u00e9n tienes que forzar que todo el tr\u00e1fico pase por el nombre de dominio y no, por ejemplo, por acceso directo a trav\u00e9s de la direcci\u00f3n IP.<\/p>\n\n\n\n<p>Ahora bien, la parte m\u00e1s importante de esta configuraci\u00f3n se enfoca en el m\u00f3dulo de Firewall. Un firewall puede permitir o bloquear el tr\u00e1fico bas\u00e1ndose en reglas predefinidas y personalizadas. Las reglas son expresiones que, al coincidir con alg\u00fan dato del visitante, ejecuta cierta acci\u00f3n. Por ejemplo, yo puedo escribir una regla en donde la condici\u00f3n es que el visitante debe estar en latinoam\u00e9rica, y la acci\u00f3n sea mostrar un desaf\u00edo antispam. Pues ahora todos los visitantes que provengan de latinam\u00e9rica se les motrar\u00e1 un captcha, y los visitantes de otras partes del mundo entrar\u00e1n directamente. Pero la idea no es bloquear a los visitantes por su zona geogr\u00e1fica, no al menos en este caso.<\/p>\n\n\n\n<p>La suscripci\u00f3n gratuita de Cloudflare permite establecer hasta 5 reglas de firewall. Para la configuraci\u00f3n que haremos aqu\u00ed es suficiente. El orden de las reglas es importante, ya que se aplicar\u00e1n de la primera hacia la \u00faltima, en la primera coincidencia.<\/p>\n\n\n\n<p>El objetivo de esta configuraci\u00f3n es bloquear los bots basados en su n\u00famero de <a rel=\"noreferrer noopener\" href=\"https:\/\/es.wikipedia.org\/wiki\/Sistema_aut%C3%B3nomo\" target=\"_blank\">sistema aut\u00f3nomo<\/a>. Este n\u00famero identifica una direcci\u00f3n IP contra la red o datacenter que usa. Por ejemplo, en vez de coleccionar todos los rangos de direcciones IP que usa Amazon Web Services, que tomar\u00eda a\u00f1os, mucho tr\u00e1fico y gran poder de an\u00e1lisis, simplemente averiguamos el n\u00famero de la red y toda direcci\u00f3n IP que provenga de dicha red, es de Amazon.<\/p>\n\n\n\n<p>Ahora, Amazon permite a cualquier persona crear servidores en la nube y montar cualquier cosa, por ejemplo, un script que identifique y explote las vulnerabilidades de un sitio web.<\/p>\n\n\n\n<p>El objetivo es que dichos scripts, montados en Amazon, sean bloqueados. Pero no todo el tr\u00e1fico de Amazon es malo: no quisi\u00e9ramos bloquear el tr\u00e1fico de, por ejemplo, el CDN Cloudfront, que tambi\u00e9n reside en la red de Amazon.<\/p>\n\n\n\n<p>Pero tranquilo: esta configuraci\u00f3n de firewall se encargar\u00e1 de todo esto.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Primera regla: whitelist<\/h2>\n\n\n\n<p>Debemos garantizar que ninguna regla bloquee el acceso de ciertos bots sanos como lo son el bot de Google, que indexa las p\u00e1ginas web, o los bots de Jetpack que mantienen permanente contacto con nuestro sitio. Entonces, en la opci\u00f3n <em>Reglas de firewall<\/em>, hacemos clic en el bot\u00f3n <em>Crear una regla de firewall<\/em>. La configuramos del siguiente modo:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Nombre: Whitelist (o como quieran llamarle)<\/li><li>Acci\u00f3n: Permitir<\/li><\/ul>\n\n\n\n<p>Y luego buscamos el enlace <em>Editar expresi\u00f3n<\/em>, y pegamos el siguiente contenido:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">(ip.geoip.asnum in {16509 14618} and http.request.method eq \"GET\") or (cf.client.bot)<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"710\" data-attachment-id=\"134\" data-permalink=\"https:\/\/www.julianmejio.com\/blog\/2020\/09\/10\/proteger-wordpress-y-cualquier-otro-sitio-con-el-firewall-de-cloudflare\/captura-de-pantalla-2020-09-10-a-las-1-09-26\/\" data-orig-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26.png\" data-orig-size=\"2110,1464\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Captura-de-Pantalla-2020-09-10-a-las-1.09.26\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-300x208.png\" data-large-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-1024x710.png\" src=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-1024x710.png\" alt=\"\" class=\"wp-image-134\" srcset=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-1024x710.png 1024w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-300x208.png 300w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-768x533.png 768w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-1536x1066.png 1536w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-2048x1421.png 2048w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-1200x833.png 1200w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.09.26-1980x1374.png 1980w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>La primera regla debe quedar con un aspecto similar al de esta imagen.<\/figcaption><\/figure>\n\n\n\n<p>Esta regla garantizar\u00e1 que el CDN de Cloudfront y todos los bots conocidos (y sanos) nunca sean bloqueados por las dem\u00e1s reglas.<\/p>\n\n\n\n<p>Ahora buscamos el bot\u00f3n <em>Guardar<\/em>, damos clic, y estamos listos para las dem\u00e1s reglas.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Segunda regla: BLOCK<\/h2>\n\n\n\n<p>El objetivo de esta regla es bloquear radicalmente cualquier solicitud en donde nosotros tengamos la completa certeza de que son fraudulentas. Por ejemplo: he recibido m\u00faltiples ataques desde direcciones IP que pertenecen al sistema aut\u00f3nomo GlobalCom Telecommunications PLC, con ASN 196725, de Palestina. Como mi p\u00fablico objetivo no es de Palestina, y recibo este tipo de ataques, tengo la certeza de que todas las solicitudes desde ese territorio ser\u00e1n fraudulentas, por lo que uso esta regla BLOCK para que nunca pasen. Si hay alg\u00fan bot sano de Palestina, pues ese podr\u00e1 pasar de acuerdo a la primera regla, pero todo lo dem\u00e1s ser\u00e1 bloqueado.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Nombre: Block<\/li><li>Acci\u00f3n: Bloquear<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"701\" data-attachment-id=\"135\" data-permalink=\"https:\/\/www.julianmejio.com\/blog\/2020\/09\/10\/proteger-wordpress-y-cualquier-otro-sitio-con-el-firewall-de-cloudflare\/captura-de-pantalla-2020-09-10-a-las-1-20-17\/\" data-orig-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17.png\" data-orig-size=\"2106,1442\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Captura-de-Pantalla-2020-09-10-a-las-1.20.17\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-300x205.png\" data-large-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-1024x701.png\" src=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-1024x701.png\" alt=\"\" class=\"wp-image-135\" srcset=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-1024x701.png 1024w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-300x205.png 300w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-768x526.png 768w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-1536x1052.png 1536w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-2048x1402.png 2048w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-1200x822.png 1200w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.20.17-1980x1356.png 1980w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>La segunda regla debe quedar similar a la de esta imagen.<\/figcaption><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Tercera (y cuarta) regla: bloqueo por desaf\u00edo<\/h2>\n\n\n\n<p>El objetivo de esta regla es mostrar un desaf\u00edo (anti-bot) a los visitantes que sospechemos que son amenazas. Como no tenemos la certeza completa de que son amenazas, o que es probable que un visitante leg\u00edtimo use esas redes (una VPN desplegada sobre estas redes o situaciones similares), no podemos usar la segunda regla de block, ya que podr\u00edamos estar bloqueando el tr\u00e1fico leg\u00edtimo.<\/p>\n\n\n\n<p>En esta regla tambi\u00e9n podemos colocar fragmentos de URL (como \/wp-login.php) para evitar los ataques automatizados (descubrir usuarios y contrase\u00f1as por fuerza bruta).<\/p>\n\n\n\n<p>A lo largo de los \u00faltimos dos a\u00f1os he recolectado n\u00fameros ASN desde donde han provenido la mayor\u00eda de los ataques que he recibido. Como no tengo la certeza de que el tr\u00e1fico de todos estos n\u00fameros es ileg\u00edtimo, solo pondr\u00e9 el desaf\u00edo.<\/p>\n\n\n\n<p>En esta lista de ASN van incluidas algunas redes y datacenters conocidos como OVH, Azure, y muchas redes de China. Antes de implantar esta regla, recomiendo fuertemente revisar los ASN.<\/p>\n\n\n\n<p>Ahora, las reglas de Cloudflare tienen un l\u00edmite de expresi\u00f3n de ~4,000 bytes (o caracteres). O sea que, una vez llenen la caja de expresi\u00f3n con 4,000 caracteres, deben crear otra regla para colocar m\u00e1s ASN.<\/p>\n\n\n\n<p>Esto me ha pasado a m\u00ed, y por eso tengo dos reglas de bloqueo por desaf\u00edo.<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Nombre: Challenge 1 y Challenge 2<\/li><li>Acci\u00f3n: Desaf\u00edo (CAPTCHA)<\/li><\/ul>\n\n\n\n<p>La primera regla es<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">(ip.geoip.asnum eq 14618) or (ip.geoip.asnum eq 43317) or (ip.geoip.asnum eq 63949) or (ip.geoip.asnum eq 14061) or (ip.geoip.asnum eq 61053) or (ip.geoip.asnum eq 16276) or (ip.geoip.asnum eq 4760) or (ip.geoip.asnum eq 58262) or (ip.geoip.asnum eq 9123) or (ip.geoip.asnum eq 20473) or (ip.geoip.asnum eq 2200) or (ip.geoip.asnum eq 5033) or (ip.src in {52.224.0.0\/11}) or (ip.src in {34.87.70.0\/24}) or (ip.geoip.asnum eq 27823) or (ip.geoip.asnum eq 133469) or (ip.geoip.asnum eq 21487) or (ip.geoip.asnum eq 24938) or (ip.geoip.asnum eq 135161) or (ip.geoip.asnum eq 35017) or (ip.geoip.asnum eq 42055) or (ip.geoip.asnum eq 56694) or (ip.geoip.asnum eq 26496) or (ip.geoip.asnum eq 38901) or (ip.geoip.asnum eq 53667) or (ip.geoip.asnum eq 37611) or (ip.geoip.asnum eq 12876) or (ip.geoip.asnum eq 5483) or (ip.geoip.asnum eq 62239) or (ip.geoip.asnum eq 12322) or (ip.geoip.asnum eq 262914) or (ip.geoip.asnum eq 50004) or (ip.geoip.asnum eq 49544) or (ip.geoip.asnum eq 9009) or (ip.geoip.asnum eq 31034) or (ip.geoip.asnum eq 60781) or (ip.geoip.asnum eq 37963) or (ip.geoip.asnum eq 134548) or (ip.geoip.asnum eq 16509) or (ip.geoip.asnum eq 47331) or (ip.geoip.asnum eq 9299) or (ip.geoip.asnum eq 17974) or (ip.geoip.asnum eq 262663) or (ip.geoip.asnum eq 23969) or (ip.geoip.asnum eq 8452) or (ip.geoip.asnum eq 45820) or (ip.geoip.asnum eq 39001) or (ip.geoip.asnum eq 12849) or (ip.geoip.asnum eq 4134) or (ip.geoip.asnum eq 45916) or (ip.geoip.asnum eq 9416) or (ip.geoip.asnum eq 8402) or (ip.geoip.asnum eq 17639) or (ip.geoip.asnum eq 50673) or (ip.geoip.asnum eq 31898) or (ip.geoip.asnum eq 4837) or (ip.geoip.asnum eq 4766) or (ip.geoip.asnum eq 198605) or (ip.geoip.asnum eq 131414) or (ip.geoip.asnum eq 50810) or (ip.geoip.asnum eq 60976) or (ip.geoip.asnum eq 9658) or (ip.geoip.asnum eq 44049) or (ip.geoip.asnum eq 31863) or (ip.geoip.asnum eq 5588) or (ip.geoip.asnum eq 132372) or (ip.geoip.asnum eq 35913) or (ip.geoip.asnum eq 4812) or (ip.geoip.asnum eq 200557) or (ip.geoip.asnum eq 32181) or (ip.geoip.asnum eq 28753) or (ip.geoip.asnum eq 17877) or (ip.geoip.asnum eq 3786) or (ip.geoip.asnum eq 51559) or (ip.geoip.asnum eq 63734) or (ip.geoip.asnum eq 42926) or (ip.geoip.asnum eq 852) or (ip.geoip.country eq \"CN\") or (ip.geoip.asnum eq 45102) or (ip.geoip.asnum eq 4765) or (ip.geoip.asnum eq 55313) or (ip.geoip.asnum eq 48635) or (ip.geoip.asnum eq 131392) or (ip.geoip.asnum eq 51167) or (ip.geoip.asnum eq 8732) or (ip.geoip.asnum eq 197226) or (ip.geoip.asnum eq 34533) or (ip.geoip.asnum eq 48874) or (ip.geoip.asnum eq 55933) or (ip.geoip.asnum eq 26346) or (ip.geoip.asnum eq 24940) or (ip.geoip.asnum eq 12824) or (ip.geoip.asnum eq 60068) or (ip.geoip.asnum eq 8374) or (ip.geoip.asnum eq 42116) or (ip.geoip.asnum eq 23944) or (ip.geoip.asnum eq 9318) or (ip.geoip.asnum eq 46573) or (ip.geoip.asnum eq 8400) or (ip.geoip.asnum eq 7713) or (ip.geoip.asnum eq 30083) or (ip.geoip.asnum eq 35393) or (ip.geoip.asnum eq 29182) or (ip.geoip.asnum eq 23671) or (ip.geoip.asnum eq 8151) or (ip.geoip.asnum eq 26347) or (ip.geoip.asnum eq 2116) or (ip.geoip.asnum eq 46606) or (ip.geoip.asnum eq 12695) or (ip.geoip.asnum eq 29017) or (ip.geoip.asnum eq 45289) or (ip.geoip.asnum eq 24971) or (ip.geoip.asnum eq 32244) or (ip.geoip.asnum eq 133479) or (ip.geoip.asnum eq 23647) or (ip.geoip.asnum eq 11340) or (ip.geoip.asnum eq 47521) or (ip.geoip.asnum eq 62729) or (ip.geoip.asnum eq 135905) or (ip.geoip.asnum eq 45352) or (ip.geoip.asnum eq 7488) or (ip.geoip.asnum eq 18229) or (ip.geoip.asnum eq 36352) or (ip.geoip.asnum eq 63760) or (ip.geoip.asnum eq 46606) or (ip.geoip.asnum eq 131386) or (ip.geoip.asnum eq 197309) or (ip.geoip.asnum eq 16347) or (ip.geoip.asnum eq 12576) or (ip.geoip.asnum eq 22611) or (ip.geoip.asnum eq 56150) or (ip.geoip.asnum eq 59491) or (ip.geoip.asnum eq 23671) or (http.request.uri contains \"\/wp-login.php\") or (ip.geoip.country eq \"JP\") or (ip.geoip.country eq \"IL\") or (ip.geoip.asnum eq 49981) or (ip.geoip.asnum eq 9009) or (ip.geoip.asnum eq 56522) or (ip.geoip.asnum eq 196777) or (ip.geoip.asnum eq 4837)<\/pre>\n\n\n\n<p>La segunda regla es<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">(ip.geoip.asnum eq 4837) or (ip.geoip.asnum eq 43350) or (ip.geoip.asnum eq 51448) or (ip.geoip.asnum eq 204490) or (ip.geoip.asnum eq 56534) or (ip.geoip.asnum eq 29550) or (ip.geoip.asnum eq 18978) or (ip.geoip.asnum eq 208294) or (ip.geoip.asnum eq 205100) or (ip.geoip.asnum eq 396507) or (ip.geoip.asnum eq 208323) or (ip.geoip.asnum eq 20845) or (ip.geoip.asnum eq 31103) or (ip.geoip.asnum eq 49447) or (ip.geoip.asnum eq 1101) or (ip.geoip.asnum eq 4224) or (ip.geoip.asnum eq 6830) or (ip.geoip.asnum eq 209) or (ip.geoip.asnum eq 34665) or (ip.geoip.asnum eq 61317) or (ip.geoip.asnum eq 395111) or (ip.geoip.asnum eq 43289) or (ip.geoip.asnum eq 44220) or (ip.geoip.asnum eq 202425) or (ip.geoip.asnum eq 62468) or (ip.geoip.asnum eq 173) or (ip.geoip.country eq \"T1\") or (ip.geoip.asnum eq 213371)<\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"647\" data-attachment-id=\"136\" data-permalink=\"https:\/\/www.julianmejio.com\/blog\/2020\/09\/10\/proteger-wordpress-y-cualquier-otro-sitio-con-el-firewall-de-cloudflare\/captura-de-pantalla-2020-09-10-a-las-1-44-44\/\" data-orig-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44.png\" data-orig-size=\"2088,1320\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Captura-de-Pantalla-2020-09-10-a-las-1.44.44\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-300x190.png\" data-large-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-1024x647.png\" src=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-1024x647.png\" alt=\"\" class=\"wp-image-136\" srcset=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-1024x647.png 1024w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-300x190.png 300w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-768x486.png 768w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-1536x971.png 1536w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-2048x1295.png 2048w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-1200x759.png 1200w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.44.44-1980x1252.png 1980w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>La configuraci\u00f3n de las reglas y el orden debe quedar similar a esta imagen.<\/figcaption><\/figure>\n\n\n\n<p>Al revisar el registro del firewall, pude ver que las reglas bloquean de manera satisfactoria los intentos de ataque.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"527\" data-attachment-id=\"137\" data-permalink=\"https:\/\/www.julianmejio.com\/blog\/2020\/09\/10\/proteger-wordpress-y-cualquier-otro-sitio-con-el-firewall-de-cloudflare\/captura-de-pantalla-2020-09-10-a-las-1-47-37\/\" data-orig-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37.png\" data-orig-size=\"2040,1050\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"Captura-de-Pantalla-2020-09-10-a-las-1.47.37\" data-image-description=\"\" data-image-caption=\"\" data-medium-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-300x154.png\" data-large-file=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-1024x527.png\" src=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-1024x527.png\" alt=\"\" class=\"wp-image-137\" srcset=\"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-1024x527.png 1024w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-300x154.png 300w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-768x395.png 768w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-1536x791.png 1536w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-1200x618.png 1200w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37-1980x1019.png 1980w, https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/Captura-de-Pantalla-2020-09-10-a-las-1.47.37.png 2040w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption>Ejemplo de una solicitud fraudulenta que fue bloqueada por medio de Desaf\u00edo (CAPTCHA)<\/figcaption><\/figure>\n\n\n\n<p>La imagen anterior es un ejemplo de una solicitud que fue interceptada por el firewall. La raz\u00f3n del bloqueo fue porque la solicitud proven\u00eda de la red OVH que se encuentra en la regla Challenge 1. Podemos ver que la solicitud es en efecto fraudulenta porque intenta acceder a un archivo PHP dentro de un plugin de gesti\u00f3n de archivos.<\/p>\n\n\n\n<p>Con estas simples acciones hemos a\u00f1adido una capa de protecci\u00f3n efectiva a nuestro sitio en WordPress. Y lo mejor es que es compatible con todas las dem\u00e1s plataformas.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>WordPress es una plataforma muy potente para la creaci\u00f3n de sitios y aplicaciones web de todo tipo. Grandes marcas como BBC, MTV, Sony, Disney e incluso Facebook la usan para publicitar sus productos y servicios. La ventaja de WordPress es que con muy poco esfuerzo puedes montar un sitio web completamente funcional, y con los [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":132,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[30],"tags":[27,38,39,37],"class_list":["post-130","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-trucos","tag-cloudflare","tag-firewall","tag-seguridad","tag-wordpress"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/www.julianmejio.com\/blog\/wp-content\/uploads\/2020\/09\/wordpress_cloudflare-01.jpg","jetpack_sharing_enabled":true,"jetpack_likes_enabled":true,"_links":{"self":[{"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/posts\/130","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/comments?post=130"}],"version-history":[{"count":2,"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/posts\/130\/revisions"}],"predecessor-version":[{"id":143,"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/posts\/130\/revisions\/143"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/media\/132"}],"wp:attachment":[{"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/media?parent=130"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/categories?post=130"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.julianmejio.com\/blog\/wp-json\/wp\/v2\/tags?post=130"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}