10 formas clave de proteger una instalación típica de WordPress

Publicado: 2016-02-20

En más de una década, WordPress ha pasado de ser un sistema de administración de contenido incipiente a la solución en línea más utilizada. Esta notoriedad, en términos generales, es buena para toda la comunidad y ha dado lugar al mayor grupo de desarrolladores de cualquier sistema de gestión de contenido disponible en la actualidad. El CMS cambia, evoluciona y se vuelve más avanzado, en gran parte debido a su tamaño, alcance e influencia en la publicación en línea.

Pero son esas mismas cosas las que hacen que WordPress sea el objetivo habitual de intentos de piratería maliciosos e invasiones de la privacidad. Los piratas informáticos han tomado nota de la proliferación del CMS entre los sitios web independientes y los principales medios de comunicación por igual, y explotan una serie de vulnerabilidades que les permiten acceder al Tablero e incluso a la propia base de datos de WordPress.

Afortunadamente, los usuarios de WordPress no son simplemente “blancos fáciles” en un entorno en línea cada vez más malicioso. Hay una serie de cosas que se pueden hacer para mejorar drásticamente la seguridad de una instalación de WordPress y frustrar los intentos de los piratas informáticos de apoderarse del contenido, la base de datos y la confiabilidad general de un sitio web.

1. Cambiar el prefijo de la base de datos de WordPress

De forma predeterminada, cada instalación de WordPress coloca sus tablas en una base de datos MySQL con el prefijo "wp_". Esto generalmente se hace para que sea más intuitivo, ya que WordPress a menudo se abrevia como "WP" y simplemente no hay confusión sobre a qué CMS pertenecen esas tablas.

Sin embargo, los usuarios más nefastos de Internet saben que WordPress colocará su contenido en tablas con este prefijo de forma predeterminada, y esta es una de las primeras formas en que irrumpen en una instalación o causan problemas con la base de datos del software desde el exterior.

El prefijo en sí se establece en el archivo wp-config.php antes de que ocurra el proceso de instalación. En ese momento, los propietarios de sitios web de WordPress deben desplazarse por el archivo de configuración y buscar la siguiente línea:

 $prefijo_tabla = 'wp_';

Esta línea debe cambiarse a prácticamente cualquier cosa menos el prefijo predeterminado. Elegir algo como el título del sitio web, o el nombre del administrador principal, podría ser un excelente primer paso para asegurar la instalación y evitar la entrada de piratas informáticos maliciosos en Internet.

2. Oculte el número de versión de la instalación de WordPress del público

Cada plantilla de WordPress viene con una variable que muestra información básica de WordPress y permite la modificación continua del encabezado a través de complementos. Esa variable es <?php wp_head() ?> y se coloca invariablemente entre las etiquetas de apertura y cierre <HEAD> del archivo header.php . Una de las funciones principales que realiza esta variable es mostrar al público el número de versión de la instalación actual de WordPress.

En realidad, el equipo de desarrollo de Automattic lo usa con fines analíticos, ya que les permite ver qué números de versión se usan más y si hay una gran cantidad de usuarios no actuales.

También permite a los piratas informáticos ver el número de versión de la instalación de WordPress y planificar su ataque en consecuencia. Dado que las vulnerabilidades de seguridad con WordPress generalmente son específicas de la versión y se corrigen en cualquier versión posterior, y la instalación obsoleta que muestra su número de versión está lista para ser atacada por aquellos que desean obtener acceso no autorizado al Tablero o la base de datos.

Esta información puede y debe eliminarse de la variable "wp_head"; se puede hacer agregando la siguiente línea de código al archivo functions.php del tema actual:

 remove_action('wp_header', 'wp_generator');

Guarde ese archivo y cárguelo en el servidor, y nadie sabrá nunca si la instalación de WordPress está actualizada, desactualizada o incluso en versión beta. Nada será anunciado públicamente.

3. Coloque un límite en el número de intentos fallidos de inicio de sesión

Por lo general, los usuarios malintencionados de Internet obtendrán acceso al panel de WordPress a través de un ataque de "fuerza bruta" que ingresa decenas de miles de contraseñas rápidamente. Este ataque busca usar palabras de diccionario y números comunes para averiguar las credenciales de seguridad del usuario. Sin un bloqueo adecuado en estos intentos repetidos, realmente no hay nada que los detenga.

Ahí es donde entra en juego el complemento Login LockDown. Al usar el complemento, los usuarios de WordPress pueden establecer un límite en la cantidad de intentos de inicio de sesión fallidos que se pueden realizar antes de quedar esencialmente bloqueados en el Tablero durante una hora. Esos intentos fallidos están vinculados a las direcciones IP, lo que hace que este complemento sea aún más efectivo.

4. Los administradores no deben llamarse a sí mismos "Administrador"

Al instalar WordPress desde el instalador incorporado, el usuario administrador generalmente se denomina " administrador " de forma predeterminada. Los usuarios de Internet maliciosos lo saben, y ese es el primer nombre que intentarán adivinar cuando obtengan acceso de fuerza bruta al panel de WordPress.

Cuando instale WordPress por primera vez, asegúrese de nombrar al usuario administrador algo difícil de adivinar (tal vez un apodo o algo más). Un ataque de contraseña de fuerza bruta solo es efectivo si se conoce el nombre de usuario del administrador. Si no, será doblemente imposible acceder.

5. Mantenga WordPress actualizado en todo momento y sea puntual al respecto

Por lo general, se lanza una nueva versión de WordPress cada pocas semanas, con actualizaciones menores y parches de seguridad que sirven para mantener a los usuarios a salvo de los piratas informáticos que se dirigen cada vez más a los paneles y bases de datos de Internet.

No mantener WordPress actualizado es esencialmente como invitar a los piratas informáticos a ingresar, eliminar algunas publicaciones y comprometer la seguridad del sitio web. Es realmente malo atrasarse con estas actualizaciones, especialmente porque un tema sin modificar incluso mostrará el número de versión para que lo vean las mentes inquisitivas.

Desde la versión 3.0, WordPress ha habilitado la actualización automática del Dashboard con un solo clic. De hecho, el Tablero incluso notifica automáticamente a los usuarios sobre las actualizaciones y los insta a actualizar en un texto llamativo y en negrita. Esto debe hacerse tan pronto como haya una actualización disponible; no resultará en la pérdida de ningún archivo, complemento, tema o configuración.

En cambio, actualizar WordPress solo servirá para habilitar nuevas funciones y parchear las vulnerabilidades de seguridad que se descubrieron desde que se envió la última versión a los 60 millones de usuarios del software. Manténgase siempre actualizado en un intento de defenderse de los piratas informáticos.

6. Oculte el archivo WP-Config.PHP de prácticamente todos los usuarios de Internet

Los usuarios de WordPress nunca deben olvidar el poder del archivo .htaccess cuando buscan ocultar archivos y proteger la integridad de su Tablero y base de datos de WordPress. De hecho, este archivo es esencial para garantizar la seguridad a largo plazo de WordPress de varias maneras. Usando unas pocas líneas simples de código, el archivo ".htaccess" puede ocultar completamente los archivos de los usuarios públicos de Internet, incluso si los permisos de archivo adecuados no están configurados en ese archivo.

Esta es la solución a la visualización pública del archivo "wp-config.php", que contiene cosas como las claves API y el prefijo de la base de datos necesarios para comprometer una instalación.

Para proteger este archivo de usuarios de Internet maliciosos, simplemente agregue las siguientes líneas de código al archivo ".htaccess" ubicado dentro de la carpeta raíz de la instalación de WordPress. Si no existe tal archivo, cree uno:

 <Archivos wp-config.php>
orden permitir, negar
Negar todo
</Archivos>

Con esta línea de código colocada en el archivo, guárdelo y cárguelo en el servidor a través de un cliente FTP. El archivo de configuración para la instalación relevante de WordPress ahora esencialmente desaparecerá de la vista pública, y eso solo puede significar cosas buenas para la seguridad y la tranquilidad.

7. Y, hablando de permisos de archivos, verifíquelos para garantizar la seguridad

WordPress no requiere reglas muy permisivas para el acceso y modificación de archivos para funcionar correctamente. De hecho, toda la configuración del sitio y la información de contenido se escriben en la base de datos en lugar de almacenarse en archivos PHP del lado del servidor. Por esta razón, no hay absolutamente ninguna justificación para usar un valor CHMOD de 777 en cualquier archivo de WordPress. Esta es, en cambio, simplemente una forma de garantizar que los piratas informáticos tengan fácil acceso a los ajustes de configuración u otros archivos que puedan comprometer la instalación.

Para comprobar los permisos y corregirlos potencialmente para una instalación más segura, abra un cliente FTP y navegue hasta el directorio raíz de WordPress. Haga clic derecho en cualquier archivo PHP y busque una opción de menú relacionada con los permisos. En la ventana resultante, busque un número que indique la disponibilidad del archivo. Ciertamente no debería ser 777 . En muchos casos, se recomienda utilizar un valor CHMOD 744 que restringe el acceso y la modificación de los archivos solo al usuario FTP raíz del servidor. Cambie esta configuración si es necesario y luego guárdela. El servidor se actualizará en consecuencia.

8. Use el archivo .htaccess para ocultar el archivo .htaccess

La mayoría de la gente no considera que esto sea una posibilidad, pero el archivo .htaccess en realidad se puede usar para ocultarse del público. Ya logra esto en gran medida al emplear un nombre de archivo que comienza con un punto, pero eso no funcionará en computadoras basadas en Windows. Esas máquinas deben encontrar el archivo inaccesible usando las instrucciones contenidas dentro de ".htaccess". Los permisos en realidad se parecen bastante al método utilizado para ocultar el archivo de configuración de PHP de WordPress, como se ve aquí:

 <Archivos .htaccess>
orden permitir, negar
Negar todo
</Archivos>

Nuevamente, una vez que esa línea se coloca en el archivo, se puede guardar y cargar en el servidor. Ahora será invisible para prácticamente todos los que visiten el sitio, excepto el usuario administrador raíz.

9. Comprender y utilizar el poder de un documento HTML en blanco

Todos los que quieran acceder a una instalación comprometida de WordPress saben que el software coloca sus complementos y temas en un directorio específico. Verificarán estos directorios para buscar la falta de complementos de seguridad, o una serie de vulnerabilidades basadas en XHTML y CSS, y luego explotarán esas cosas para obtener acceso. En realidad, esto es bastante fácil de prevenir.

Para asegurarse de que las listas de archivos en estos directorios no se muestren a ningún usuario de Internet, simplemente cree un documento HTML en blanco y colóquelo en la carpeta. El documento debe ser algo bastante básico, con etiquetas de encabezado y un título que diga algo como " Acceso restringido ". Este título puede dar a entender que el administrador del sitio sabe un par de cosas sobre seguridad y enviará a los usuarios malintencionados a otros sitios web.

10. Tenga siempre una copia de seguridad reciente disponible

La forma correcta de abordar la seguridad de una instalación de WordPress es que es una parte de preparación y una parte de prevención.

El aspecto de "preparación" de este proceso viene en forma de copia de seguridad. Tanto los archivos reales de WordPress como la base de datos utilizada para almacenar información deben respaldarse periódicamente; esto se puede hacer de varias maneras diferentes, incluidos varios complementos de WordPress para el Tablero.

Si se necesita un método más avanzado para realizar copias de seguridad de los archivos, los usuarios pueden utilizar las herramientas de copia de seguridad en las áreas de administración backend de cPanel o Plesk Panel. Además, los administradores podrían automatizar el proceso y crear trabajos Cron para que una copia de seguridad reciente esté siempre disponible.

Lo importante de la seguridad de WordPress es estar siempre preparado para el peor de los casos. Cuando se trata de garantizar el tiempo de actividad y la confiabilidad, incluso cuando está bajo el ataque de un pirata informático malicioso, una copia de seguridad del sitio es la forma más fácil de volver a estar en línea después de que se haya cerrado el agujero de seguridad.

La vigilancia y el uso inteligente son las claves para una instalación segura de WordPress

En términos generales, WordPress se ha vuelto exponencialmente más seguro en los últimos años. Por un breve tiempo, parecía como si hubiera una nueva vulnerabilidad de seguridad cada dos semanas. Este patrón era especialmente preocupante para los usuarios más grandes y corporativos, y el equipo de Automattic rápidamente se puso a trabajar en un reinicio completo.

Ese reinicio fue en gran parte la versión 3.0, con una arquitectura mucho más segura y herramientas de actualización automática que eliminaron el arduo trabajo de mantenerse al día con los últimos parches y correcciones de seguridad.

Cuando se trata de mantenerse seguro, estas versiones deben mantenerse absolutamente actualizadas y los usuarios deben emplear permisos estrictos, restricciones y trucos de seguridad para mantenerse a salvo de los usuarios de Internet malintencionados.