10 trucos de seguridad para WordPress para evitar que te pirateen

16

WordPress es una gran historia de éxito, no solo en términos de números globales, sino también, lo que puede sorprender a algunos, en términos de grandes nombres que usan la plataforma.

En Internet, cuando tiene una base de usuarios instalada considerable y usuarios de alto perfil, simplemente no puede evitar convertirse en un objetivo para los piratas informáticos y los spammers. Desde la venta ambulante de píldoras hasta la promoción de ideologías distorsionadas, el robo de datos y la ruptura de sitios solo porque pueden, ser pirateado fácilmente podría ser un gran dolor de cabeza para su negocio.

En este artículo, echaré un vistazo a algunos de los consejos, trucos y trucos que puedes emplear para ofrecerte más protección contra la parte más vulnerable de la web.

Familiarízate con lo básico

Si bien puede pensar que algunos de estos elementos deberían ser evidentes, solo piense en cuántas veces ha visto no solo a los clientes sino también a otros desarrolladores, diseñadores y agencias que deberían saber que son culpables de algunos de estos.

Comience por hacer que sus contraseñas sean difíciles de adivinar. ¿Cómo puedes hacer que sea difícil para ellos pero fácil para ti? Tal vez pueda olvidarse de las sustituciones de letras dudosas como ‘h3ll0’, mezclar mayúsculas y minúsculas y, en su lugar, usar una mnemotécnica. Al encadenar tres o cuatro palabras para crear una imagen divertida, su contraseña será mucho más fácil de recordar que ‘t3r%?9.Fq!G’ y mucho más difícil de descifrar. Simplemente no use ‘CorrectHorseBatteryStaple’. Para obtener una explicación completa y divertida de este principio, consulte XKCD 936.

También debe mantener actualizados sus complementos y el núcleo de WordPress. Esto ahora es más fácil de hacer con versiones posteriores de WordPress. Desde WordPress 3.7 puedes configurar cuatro tipos de actualizaciones automáticas: archivos principales, complementos, temas y archivos de traducción. Una palabra de precaución: dependiendo de su configuración, es posible que desee deshabilitar algunos de estos para poder probarlos antes de implementar las actualizaciones. Aunque incluso si los deja en vivo y experimenta problemas, todavía tiene copias de seguridad diarias en las que confiar, ¿verdad?

Facilite la administración de múltiples sitios, complementos y copias de seguridad con algo como InfiniteWP. ¡Las funciones básicas son gratuitas!

Estas no son las credenciales de inicio de sesión que está buscando

Además de la seguridad superior de la contraseña, también debería considerar mover su URL de administrador predeterminada y usar algo que no sea ‘admin’ para su nombre de usuario. A menos que los piratas informáticos tengan un objetivo específico en mente, generalmente buscarán ejecutar bots para automatizar el proceso. Estos bots buscan WordPress, prueban la configuración predeterminada y las contraseñas más comunes, así que alejémonos de los valores predeterminados para hacer esta tarea más difícil.

Quizás la forma más fácil de cambiar su URL de inicio de sesión es echar un vistazo a complementos como HC Custom WP-Admin URL. Por supuesto, ¡ejecuta una copia de seguridad primero!

Para cambiar su nombre de usuario administrador, la forma más sencilla es crear un nuevo usuario administrador con el nombre de usuario elegido y eliminar el anterior. Si no puede acceder a su administrador porque no recuerda su nombre de usuario, necesitará una solución un poco más drástica. Inicie sesión en phpMyAdmin y cargue su base de datos de WordPress. Desplácese hacia abajo en el lado izquierdo y busque la tabla ‘ks29so_users’. Busque el nombre de usuario que desea cambiar, es decir, ‘admin’ y edite el valor de usuario_login para que sea su nuevo nombre.

Una palabra final sobre el proceso de inicio de sesión

Antes de alejarnos del proceso de inicio de sesión, hay un par de tareas más que abordar. ¿Recuerdas esos bots que adivinan contraseñas? Hagámoslo más difícil para ellos diciéndoles que solo puede hacer tantos intentos dentro de un período de tiempo determinado y que antes debe transcribir correctamente un CAPTCHA. Para Captcha, puede intentar instalar este complemento y listo. Beneficio adicional: la versión premium se integra con BuddyPress y Contact Form 7 para proteger sus formularios de contacto de los envíos de spam.

Para limitar los intentos de inicio de sesión, puede agregar complementos como Limitar intentos de inicio de sesión o puede preguntarle a su proveedor de alojamiento quién puede tener una solución: Wpengine, por ejemplo, tiene esto configurado de manera predeterminada.

Protección de WordPress con cambios en .htaccess

¡Espero que esté listo para ensuciarse un poco las manos mientras pasamos a sugerencias un poco más complicadas que ‘instalar un complemento’! Agregue estas sugerencias después de la línea #END WORDPRESS.

El primer elemento a agregar ayudará a proteger wp-config.php, este archivo sería peligroso en las manos equivocadas ya que contiene información importante en su sitio y su base de datos.

<Files wp-config.php>
orderallow,deny
deny from all
</Files>

Ese es un gran comienzo, ¿qué más podemos hacer? Bueno, podemos evitar que la gente entrometida eche un vistazo a sus archivos y carpetas. ¡Creo que los beneficios de esto se explican por sí mismos!

El siguiente es un overol para bloquear la exploración de directorios:

# directory browsing
Options All -Indexes

Si desea bloquear un archivo específicamente, use lo siguiente:

<Files "private.php">
Order allow,deny
Deny from all
</Files>

Ahora estamos comenzando a progresar, eliminando el acceso de aquellos que no lo requieren. Para llevar esto a su conclusión lógica, veamos cómo podemos prohibir que alguien que sabemos que es un mal actor acceda a cualquier cosa en su servidor.

Una vez que sepa la IP, simplemente agregue estas líneas reemplazando 127.0.0.1 con la IP incorrecta:

Order Deny,Allow
Deny from 127.0.0.1

Para actualizar esto con nuevas direcciones IP, simplemente agregue nuevas líneas ‘denegar de’. Si necesita bloquear un rango completo, simplemente omita el rango en cuestión. En otras palabras, para bloquear todo, desde 127.0.0.0 hasta 127.0.0.255, agregaría:

Deny from 127.0.0.

El último consejo de esta sección es proteger el propio .htaccess. Hay bastantes sitios que circulan métodos que son buenos, pero no excelentes. El siguiente método es cortesía de Jeff Starr en Perishable Press y es mucho más completo:

# STRONG HTACCESS PROTECTION
<Files ~ "^.*.([Hh][Tt][Aa])">
 order allow,deny
 deny from all
 satisfy all
</Files>
Mejoras en la base de datos

Otra ventaja de WordPress para los hackers es que en una instalación estándar sabrán cómo se llaman las tablas de tu base de datos. WordPress usa el prefijo ‘ks29so_’ de forma predeterminada, al cambiar esto nos estamos alejando nuevamente de las suposiciones de los piratas informáticos.

Primero le diremos a wp-config.php que estamos cambiando el prefijo de la tabla. Abre ese archivo y edita lo siguiente:

$table_prefix = 'ks29so_';

Agregue algunos números o letras:

$table_prefix = ‘ks29so_3drt5_’;

Luego debe revisar y cambiar cada uno de los nombres de las tablas en su base de datos. Para cada una de sus 11 tablas, ejecute un comando de la siguiente forma:

RENAME TABLE ‘ks29so_commentmeta‘ TO ‘ks29so_3drt5_commentmeta‘;

Probablemente habrá algunas otras referencias al prefijo antiguo que necesita aclarar. Ejecute esta consulta para enumerar todo desde la tabla de opciones usando el prefijo anterior:

SELECT * FROM ` ks29so_3drt5_options` WHERE `option_name` LIKE'%ks29so_%'

Desafortunadamente, deberá revisar cada uno y actualizar.

Luego debemos mirar la tabla UserMeta, el mismo proceso que antes:

SELECT * FROM ` ks29so_3drt5_usermeta` WHERE `meta_key` LIKE'%ks29so_%'

Finalmente, también puede restringir el usuario de su base de datos MySQL para que solo tenga los siguientes privilegios de lectura y escritura: SELECCIONAR, INSERTAR, ACTUALIZAR y ELIMINAR. Por lo tanto, puede revocar los privilegios para la estructura y administración de la base de datos: DROP, ALTER y GRANT. Sin embargo, esto puede dificultar la actualización del núcleo y la adición de nuevos complementos, ya que es posible que realmente necesiten modificar la estructura de la base de datos. Si sigue esta ruta, debe ser minucioso con sus copias de seguridad y pruebas.

Claves nuevas por favor

Sus claves secretas se almacenan en wp-config.php. Sin embargo, ¡no son tan secretos si los deja con los valores predeterminados! Mejore su seguridad modificándolos; sin embargo, le recomiendo que no confíe en su propio sentido de la aleatoriedad y la complejidad. Use algo como este servicio: esto no solo define las claves para usted, sino que las hace todas a la vez en el formato correcto para que las pegue directamente en su archivo. Presionar actualizar demuestra que obtienes un nuevo conjunto de claves cada vez que cargas esto.

Fuente de receta original

Los complementos son un vector de ataque lo suficientemente grande cuando se descubren y distribuyen exploits entre piratas informáticos, por lo que al menos debe asegurarse de confiar en la fuente del complemento. De lo contrario, puede ser usted quien coloque el exploit en su propio sitio agregando un complemento dudoso que contiene malware.

Limpieza de primavera

Debido a que los temas y complementos son una vulnerabilidad potencial, los mantenemos actualizados cuando podemos. Si ha dejado de usar un complemento/tema, elimínelo por completo. Deshabilitar no es suficiente, ¡solo deshazte de él! Si el desarrollador abandonó un complemento, también sería una buena idea buscar algo nuevo y eliminar el antiguo; si se encuentra una vulnerabilidad de seguridad, no se reparará y es probable que sea muy costoso realizar una solución personalizada.

Del mismo modo, elimine los inicios de sesión que ya no necesite. Tal vez confíes en tus ex empleados, y eso está bien, pero no se trata solo de confianza. También se trata de reducir el área de ataque disponible donde sea posible, limitando a las personas al nivel mínimo de acceso que necesitan. Por lo general, un ex empleado o autor no necesita acceso. ¡Estoy seguro de que lo entenderán!

Se aplica la política de entrada: permitir solo una IP de administrador de confianza

He separado esto de los otros consejos de .htaccess ya que este es potencialmente un paso un poco más serio a considerar. A diferencia del paso anterior de prohibir las IP malas conocidas, se trata de permitir solo las buenas conocidas. Mejora su seguridad, pero a costa de su comodidad, ya que estará restringido a donde puede iniciar sesión para trabajar en su sitio. Adelante con él si no se moverá mucho, si ha estado bajo intentos de ataque constantes o simplemente si cree que vale la pena esa tranquilidad adicional.

orderdeny,allow
allow from 127.0.0.1
deny from all

(nuevamente, reemplace 127.0.0.1 con su IP).

SSL

No debe acceder a su administrador en un servicio de Wi-Fi público; si lo hace, las credenciales se envían por aire en texto sin formato. El infame hacker podría estar sentado a tu lado, tomando un café con leche y secretamente haciendo un ataque de hombre en el medio para obtener tus contraseñas y otros detalles confidenciales.

Sin embargo, si es necesario, al menos puede ofrecerse un poco más de protección al habilitar SSL. Primero asegúrese de que su servidor lo admita, luego abra su archivo wp-config.php y agregue la siguiente línea:

define('FORCE_SSL_ADMIN', true);
Otras cosas para mirar

Eso es todo para mi conjunto principal de consejos, pero hay otros aspectos a tener en cuenta. Puede fortalecer aún más su .htaccess, por ejemplo, deteniendo los scripts php que se ejecutan donde no deberían estar. También puede asegurarse de que los permisos de sus archivos estén configurados correctamente, no solo en sus archivos de WordPress sino en todo el servidor.

Sin embargo, mi último consejo importante sería hacer una copia de seguridad. Todo este artículo se basa en la idea de que es mejor prevenir que curar, pero las copias de seguridad periódicas, utilizables y probadas deberían estar disponibles en caso de que las necesite. Permítanme enfatizar tanto los regulares como los probados: una copia de seguridad de hace un año es esencialmente una copia de seguridad para la mayoría de los sitios que habrán crecido mucho en ese tiempo. Si las copias de seguridad no se prueban, no tiene una copia de seguridad. ¡En serio, no quiere llegar al punto en que se necesita una copia de seguridad y solo tiene que cruzar los dedos y esperar que funcione!

¿Qué has hecho para proteger tu sitio web de WordPress? ¿Dónde traza la línea entre seguridad y accesibilidad/usabilidad? Házmelo saber en los comentarios.

This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish. Accept Read More