hardening WordPress

Con esto aumentará la seguridad y protegerá sus contenidos antes cualquier ataque.

  1. Renombrar o eliminar los archivos de información de wordpress “readme.html” y “license.txt”. ya que con esto proporciona información de wordpress implementado. Ese proceso lo puede realizar por vía ftp o por el administrador de archivo de cpanel https://ayuda.powerhost.cl/knowledge-base/ingresar-al-administrador-de-archivos-de-cpanel/.

2. Eliminar estos temas sin uso para evitar cualquier vulnerabilidad que se puede presentar en ellos. Estos los puedes eliminar en Apariencia -> Temas. En detalles del tema -> eliminar

  • twenty fifteen
  • twenty seventeen
  • twenty twenty

3. No utilizar admin como nombre de usuario para acceder a wordpress, ya que estos usan los hackers para comprobar los accesos con ataques de diccionario.

4. personalizar el acceso a worpdress ejemplo:

https://midominio.com/wp-admin -> https://midominio.com/accesos1

para esto debe instalar el plugin llamado “WPS Hide Login”

Una vez instalado el plugin debe acceder a ajuste, general y establecer el nombre que sustituirá el login de acceso.

Después de realizar debe guardar los cambios realizados.

Con esto mitigamos los ataques de accesos a wordpress.

5. Proteger el archivo de configuración de wordpress.

El archivo de configuración de WordPress, el fichero wp-config.php, contiene información muy sensible sobre tu servidor:

  • Añadir la regla al fichero .htaccess para evitar accesos no deseados:

<Files wp-config.php>

order allow,deny

deny from all

</Files>

6. Utilizar los permisos de archivos y directorio seguros.

Por defecto, WordPress aplica permisos de lectura y escritura a archivos y carpetas que, en ocasiones, pueden modificarse, bien automáticamente por algunos plugins, bien manualmente al subir tú mismos archivos desde las utilidades de cPanel o, incluso, mediante clientes FTP.

Los permisos por defecto que deben tener archivos y carpetas en WordPress son los siguientes:

Archivos: 644

Carpetas: 755

Si algún archivo o carpeta tiene más permisos sería una posible fuente de vulnerabilidades. Deberás cambiarlos a los permisos por defecto desde el administrador de archivos de cPanel o tu cliente FTP favorito.

7. Protección de las cabeceras de http del tema

Para habilitar las cabeceras en un servidor a través .htaccess:

Header set X-Content-Type-Options nosniff

Header set X-XSS-Protection “1; mode=block”

Header always append X-Frame-Options SAMEORIGIN

Con esta cabecera, evitaremos que se carguen hojas de estilo o scripts maliciosos.

8. Deshabilita la búsqueda en directorios.

Debes evitar que tus usuarios vean el contenido de tus directorios, modifica tu archivo .htaccess y agrega el siguiente código:

Options All -Indexes

9. Evitar la inyección de script maliciosos.

# protect from sql injection

Options +FollowSymLinks

RewriteEngine On

RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]

RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]

RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})

RewriteRule ^(.*)$ index.php [F,L]

10. Proteger contra el spam.

algunos hackers utilizan estos formularios para inyectar código que podría comprometer la seguridad de tu instalación de WordPress.

Para ello podemos, y debemos, aplicar para su protección.

  • Añadir el sistema de comprobación humana captchar mediante el plugin really simple captcha
  • Aplicar reglas de control de spam, sin la necesidad de plugin desde el administrador de wordpress en opciones -> Discusión.
  • Aprobando manualmente todos los comentarios.
  • Añadiendo reglas para marcar como spam automáticamente comentarios innecesarios.

11. Evitamos crawler o robots maliciosos.

Con este archivo llamado robots.txt se puede utilizar para aumentar la seguridad de su sitio web evitando robots maliciosos, cuya finalidad es encontrar vulnerabilidad a través de los plugins y los temas e inyectar código malicioso.

El archivo robost.txt lo debe crear en donde está alojado el sitio web, lo pude crear a través del administrador de archivos de cpanel. Al crear deberá ingresar el siguiente código.

User-Agent: *

Allow: /wp-content/uploads/

Allow: /feed/$

Disallow: /wp-

Disallow: /wp-content/

Disallow: /trackback/

Disallow: /wp-admin/

Disallow: /feed/

Disallow: /?s=

Disallow: /search

Disallow: /archives/

Disallow: /index.php

Disallow: /*?

Disallow: /*.php$

Disallow: /*.js$

Disallow: /*.inc$

Disallow: /*.css$

Disallow: */feed/

Disallow: */trackback/

Disallow: /page/

Disallow: /tag/

Disallow: /category/

# No indexar copias de seguridad

Disallow: /*.sql$

Disallow: /*.tgz$

Disallow: /*.gz$

Disallow: /*.tar$

Disallow: /*.svn$

# Reglas para bots conocidos

User-agent: Googlebot

User-agent: Googlebot-Image

Disallow: /wp-includes/

Allow: /wp-content/uploads/

User-agent: Mediapartners-Google*

Disallow:

User-agent: ia_archiver

Disallow: /

Tip opcional de seguridad.

12. Integración del protocolo hsts.

Este protocolo reduce al atacante que pueda interceptar la comunicación entre el navegador y el servidor, la recopilación de cookies, etc. Le protocolo aumenta la seguridad del https.

Para la integración de este protocolo en wordpres deberá añadir el código en el archivo .htaccess de su sitio web

<IfModule mod_headers.c>

Header set Strict-Transport-Security “max-age=63072000; includeSubDomains; preload” env=HTTPS

</IfModule>

Para su validación debe ingresa el sitio web https://hstspreload.org/

Como el siguiente ejemplo:

Con esto mejoramos la seguridad del protocolo https aumentando el cifrado de comunicación.

Esta seguridad se recomienda para sitio web con ecommerce con métodos de pago.  

 Resumen

Con estos tips evitaremos el uso de plugin de seguridad que solo ralentiza de la web y aumento el consumo de recursos del servidor.

¿Fue de ayuda este artículo?

Artículos Relacionados