Seguridad WordPress: blindaje de protección para tu sitio web

por CTD
Seguridad Wordpress

Seguridad WordPress o por que deberíamos proteger nuestra web en WordPress

WordPress es un gestor de contenidos de código abierto, lo que ofrece tantas ventajas a nivel de desarrollo como de posibilidades para que los hackers encuentren el hueco por donde colarse en las páginas web diseñadas con este CMS. Desde su lanzamiento en el año 2003, son muchos los casos de vulnerabilidades de WordPress y sus consecuentes actualizaciones para  corregir esas grietas en su estructura, por lo que un experto en WordPress siempre te recomendará que, de ser posible, tengas tu instalación actualizada con la versión más reciente.

Por tanto, la seguridad de WordPress ha sido y seguirá siendo motivo de conversación entre los compañeros desarrolladores y una fuente de tendencia habitual en las publicaciones online de los blogs y las webs de temática que gira entorno al mundo del desarrolo web e incluso del marketing digital.

Cuando un opensource puede ser un problema

Como decía antes, WordPress es un gestor de contenidos opensource, lo que supone que cualquiera puede acceder al código fuente y ver al detalle como está realizado. Es obvio entonces llegar a la conclusión de que si se puede acceder a ver todo el código del CMS, también es lógico que podamos detectar fallos que se traduzcan en vulnerabilidades para páginas web que ya estén instaladas y publicadas en WordPress.

Si además tenemos en cuenta que la plataforma es la más utilizada ya que en la actualidad más del 60% de las páginas web con un gestor de contenidos están diseñadas en WordPress, estamos ofreciendo un regalo a los hackers demasiado bueno para que se queden quietos.  Hay  que pensar en que lo que de verdad buscan estos piratas informáticos, es un fallo en el sistema que les permita generar un problema cuanto más grande mejor. Y encontrar una grieta en WordPress podría suponer un conflicto digital a escala mundial.

Breve análisis de WordPress

WordPress es un sistema creado esencialmente en lenguaje de programación php y que debe instalarse con una base de datos donde guarda todo el contenido del proyecto web. Tanto lo que vemos en el front (parte pública) como lo vemos en el back (parte privada de administración) se registra en una base de datos debidamente preinstalada y configurada desde los archivos de configuración del propio CMS.

Antiguamente, para instalar WordPress tenias que, previamente, crear una base de datos con todas las credenciales en el lado del servidor o en tu panel de hosting y luego subir los archivos de WordPress a la raíz del servidor web para de esta forma poder configurarlo.

Hoy en día todo panel de control de hosting que se precie, ofrece la instalación de WordPress de una forma fácil e intuitiva pidiendo que rellenes los campos y des en «guardar» y de esta forma podemos disponer de una casi perfecta instalación de WordPress para empezar a desarrollar nuestro blog o página web.

Aún así, siempre se puede optar por instalarlo de la forma tradicional.

Esencialmente, el sistema de ficheros estandardizo de WordPress está formado por ficheros php que se instalan en la raíz junto con tres carpetas o directorios que también están repletos de ficheros.

Seguridad WordPress

Estructura de ficheros básica de WordPress

Pincha en saber más sobre la estructura de ficheros de WordPress  para ampliar tus conocimientos sobre el tema aunque para lo que te voy a enseñar tampoco es imprescindible.

Blindar WordPress

Son muchas las fórmulas existentes para tratar de blindar tu WordPress y yo debo reconocer que he probado unas cuantas decenas.

Hoy os quiero mostrar un método del que últimamente hago uso en todos mis proyectos web con WordPress y del que, a nivel de seguridad, estoy más que satisfecho.

El método se puede seccionar en tres fases cada una tan importante como las otras.

Fase 1: cambio de sitio del directorio wp-content
Fase 2: implementación de seguridad en el wp-config
Fase 3:  blindaje con iThemes Security

Seguridad WordPress – Fase 1: cambio de sitio del directorio wp-content

Probablemente, el directorio más importante de todos lo que trae WordPress de serie es el denominado «wp-content» (Véase imagen anterior). En esta carpeta, como te puedes imaginar, es donde reside la información de todo el contenido que se genera después de la instalación base. Por tanto es obvio pensar que muchos de los esfuerzos en encontrar vulnerabilidades por parte de los hackers van a ser orientados a ese directorio, ya que, al ser donde se genera nuestro contenido es el sitio de la instalación donde más daño nos pueden hacer.

Bien, llegados a este punto, y teniendo en cuenta que los hackers basan sus ataques en procesos automáticos es muy recomendable aplicar algún procedimiento para frenar el acceso al «wp-content».

Lo que yo hago, es añadir una nueva carpeta con otro nombre y meter la carpeta «wp-content» dentro de este nuevo directorio. Con esta acción es prácticamente imposible que un ataque automatizado acceda a tu carpeta de contenido, ya que cambiamos el nombre de la carpeta y la ruta donde se encuentra.

seguridad wordpress

Arrastrar «wp-content» a nueva carpeta creada

Claro, te recuerdo que WordPress trabaja sobre una base de datos y un árbol de ficheros preestablecido, por tanto, en cuanto hagamos esta acción, como decimos los de mi gremio: «petará» todo y la web no va a funcionar.

Seguridad WordPress – Fase 2: implementación de seguridad en el «wp-config»

Presta atención ahora por que esta es la fase más técnica.

Para que todo funcione, hay que hacer una modificaciones en el archivo de configuración de WordPress: el «wp-config», que podrás encontrar en la raíz de archivos como la que hemos visto antes.

Seguridad WordPress

Haz una copia de seguridad del archivo y utiliza un editor de código como Sublime  para que puedas hacer modificaciones

Bien, justo después de la declaración del prefijo de la tabla de la base de datos como podemos ver en la siguiente imagen …

Seguridad WordPress
Debemos introducir lo siguiente:

/** Moviendo el directorio wp-content **/
define( 'WP_CONTENT_DIR', dirname(__FILE__) . '/nueva-carpeta-anti-ataques/wp-content' );
define( 'WP_CONTENT_URL', "https://{$_SERVER['SERVER_NAME']}/nueva-carpeta-anti-ataques/wp-content" );

/** Moviendo el directorio plugin **/
define( 'WP_PLUGIN_DIR', dirname(__FILE__) . '/nueva-carpeta-anti-ataques/wp-content/plugins' );
define( 'WP_PLUGIN_URL', "https://{$_SERVER['SERVER_NAME']}/nueva-carpeta-anti-ataques/wp-content/plugins" );

De esta forma, le indicamos al sistema donde se encuentran las carpetas «wp-content» y «plugins» ahora que hemos cambiado la ruta.

Sobra decir que donde he puesto «nueva-carpeta-anti-ataques» es donde se debe poner el nombre la carpeta que se ha creado previamente

Actualización abril 2020: en algún caso es posible que falle la instalación de algún plugin pero si te lo descargas de la página oficial y lo subes por ftp, funciona.

También es imperscindible que en este proceso de blindaje y seguridad WordPress, indiquemos donde queremos que se guarden los archivos del medios del proyecto. Esto hay que indicarlo debajo de la sentencia «define(‘ABSPATH’, dirname(__FILE__) . ‘/’);» como se puede ver en la imagen: 

Seguridad WordPress
Y lo que debemos introducir es lo siguiente:

/** Mover el directorio de subida de archivos **/
define('UPLOADS', 'nueva-carpeta-anti-ataques/wp-content/uploads');

De esta manera, indicamos que los archivos de medios, deben guardarse en esa ruta.

Seguridad WordPress – Fase 3:  blindaje con iThemes Security

Por último, os recomiendo que os instaléis un buenísimo plugin de seguridad como es iThemes Security. Puedes añadir múltiples factores que aún blindan más el sistema y que su explicación nos daría para otro post como mínimo, pero yo os voy a indicar un par que acaban de rematar el blindaje dejando nuestro WordPress a prueba de casi cualquier ataque.

Lo primero que nos hace el plugin al activarse es preguntar si queremos que nos haga una comprobación de seguridad. Yo os recomiendo que la hagáis. Con esto tenemos un pre-análisis de seguridad de nuestro sitio.

Seguridad WordPress
Luego os preguntará si queréis activar la «Red de protección contra fuerza bruta». Eso va muy bien por que lo que hace el plugin es registrar los atacantes de otros sitios web y bloquearlos para que no lleguen a atacar al tuyo.  Yo os recomiendo que lo activéis también.

Por último, en la pestaña «Avanzado» (arriba a la derecha) podéis activar el módulo de ocultación de escritorio. Para acceder a cualquier escritorio de WordPress basta con poner el dominio «/wp-admin». Con esta función se puede poner el nombre que se desee, algo que va a complicar mucho a los hackers poder acceder a las credenciales del admin de WordPress.

Ithemes Security Seguridad WordPress

Conclusión

Y esto es todo. Como veis no es muy complicado disponer de una instalación segura en WordPress. Con estas tres sencillas fases conseguiréis estar tranquilos. Cierto es que no existe un blindaje infalible y poco se puede hacer si un hacker la a tomado con vosotros y ataca personalmente a vuestro dominio. Pero en general los ataques están generados de forma automatizada y es muy frustrarte que alguna de tus páginas web sea víctima de alguno de ellos.

Acostumbrándose a realizar un método de seguridad como éste, se gana en tranquilidad. Haced de este método un paso más en la instalación de vuestro WordPress y no os arrepentiréis.

Esto, también te interesa ...

Dejar comentario