Proteger WordPress contra hackers y ataques DDoS

Proteger WordPress contra hackers y ataques DDoS pixelwork

Proteger WordPress contra hackers y ataques DDoS

No hay duda de la popularidad de WordPress, que abastece a más de 74,6 millones de sitios en todo el mundo, y el 48% de los 100 mejores blogs son gestionados por la plataforma. En el mundo en línea sin embargo, cualquier cosa que es popular está abierta a un ataque y WordPress no es ninguna excepción.

Sin embargo, los tipos de ataques que tienden a afectar a los sitios de WordPress, a menos que seas una gran marca, generalmente son llevados a cabo por personas que no tienen una gran cantidad de conocimientos técnicos. Éstos se refieren a menudo a los “script kiddies” que utilizan código, técnicas y kits comunes para hackear sitios.

La buena noticia de esto es que a menudo un ataque puede ser tratado con rapidez y facilidad. No es necesario llegar a la etapa en la que un ataque causa daño, ya que la mayoría se puede prevenir en primer lugar. Así que hoy, vamos a ver cómo puedes asegurar tu instalación y evitar hacks comunes.

Comienza con el servidor

Antes de pensar en la seguridad de tu sitio, debes comenzar desde cero y esto significa asegurarte de que tu servidor de alojamiento es seguro en primer lugar. Comenzando con los fundamentos, debes elegir un anfitrión basado en seguridad y reputación y no en precio. Estoy seguro de que hay algunos anfitriones baratos decentes por ahí, para la mayor parte de alojamiento que cuesta $ 2 por mes no va a ser suficiente.

La mayoría de los servicios administrados de Hosting WordPress tienen una reputación de alojamiento seguro. Sin embargo, no todos permiten algunos plugins relacionados con el rendimiento, por lo que debes comprobar primero para ver exactamente qué acceso y nivel de control tienen.

La mayoría de ellos ofrecen:

  • Alojamiento administrado WordPress.
  • Actualizaciones de seguridad automáticas.
  • Copias de seguridad diarias.
  • Puntos de restauración con un solo clic.
  • Almacenamiento en caché automático.
  • Seguridad de nivel superior.

Cualquier anfitrión que decidas elegir debes comprobar que ofrece lo siguiente:

  • Ejecutar versiones estables de software de servidor y parches según sea necesario.
  • Habilitar un firewall a nivel de servidor.
  • Permitir realizar copias de seguridad y restaurar con frecuencia y fácilmente (sitio y base de datos).
  • Detección de intrusiones.

Los hosts gestionados (como WPEngine por ejemplo) utilizan el almacenamiento en caché que se pasa a través de un CDN, por lo que si realmente no desea utilizar un host de WordPress administrado, considera implementar un CDN junto con un complemento de caché como W3 Total Cache.

Esta es una forma sencilla de configurar tu sitio para que todo el tráfico que se pasa a través de las caches de CDN también pasa por una capa de socket seguro (SSL / TLS). Desafortunadamente, las instalaciones de WordPress en servidores compartidos, en lugar de en un servidor VPS o dedicado, generalmente se instalan y configuran de tal manera que es más fácil para el host, pero no necesariamente el más seguro.

Ten en cuenta que las siguientes configuraciones son para usuarios avanzados que están familiarizados con la codificación o tareas básicas de sysadmin. Si no lo eres, pídele a tu desarrollador web que configure esto para ti.

Inicios de sesión, contraseñas y plugins

Más del 70% de las instalaciones de WordPress son vulnerables a los ataques. Siempre asegúrate de que cuando hayas instalado WordPress actualices a la última versión tan pronto como esté disponible. Lo mismo ocurre con el tema y con todos los plugins que utilices. Lo mismo se aplica a tu software de servidor. Puede parecer obvio para muchos, pero las estadísticas hablan por sí mismas, hay muchas, muchas versiones anteriores de la plataforma instaladas.

Cuando se trata de contraseñas, me encuentro con gente que todavía utilizan algo como “nombrecompañia123” como su contraseña y estas son las personas que están en la industria de la tecnología.

Así que para ti y todos los demás usuarios, genera contraseñas complejas y almacenalas en algún gestor de contraseñas como LastPass, es más seguro de esta manera.

Aplicar actualizaciones automáticas

Para garantizar que las actualizaciones menores y mayores se realicen automáticamente en WordPress, puede realizar un pequeño cambio en el código. Esto elimina la necesidad de que lo hagas manualmente (solo se aplican las actualizaciones menores automáticamente a WordPress v.3.7 y versiones posteriores), pero debes asegurarte de que actives las copias de seguridad automáticas y frecuentes en caso de que algo salga mal.

Para habilitar las actualizaciones, usa el siguiente código a tu archivo wp-config.php:

#Enable all core updates, including minor and major:
define ( 'WP_AUTO_UPDATE_CORE', true );

Es más común que experimentes un problema con las actualizaciones automáticas si usas plugins que no se actualizan con frecuencia, así que intenta asegurarte de que los plugins que instalas se mantengan y, cuando sea posible, esté disponible algún tipo de soporte.

Deshabilitar los informes de errores de PHP

Si un plugin o un tema que estás usando arroja un error, entonces es posible que el mensaje de error resultante muestre la ruta del servidor que a su vez podría ser interceptada por los hackers. Con esto en mente, debes desactivar el informe de errores agregando el siguiente código a tu archivo wp-config.php:

Error_reporting (0);
@ini_set ( 'display_errors', 0);

Por otra parte, si no te sientes seguro cuando se trata de editar archivos de configuración, entonces puedes pedirle a tu proveedor de alojamiento web deshabilitar esto por ti.

Detener ataques de fuerza bruta

Si supervisara cuántos intentos de inicio de sesión hay en tu sitio de WordPress cada día, probablemente te sorprenderás. Estos son ataques comunes que son evitables hasta cierto punto mediante el uso de contraseñas complejas. Los ataques de fuerza bruta generalmente provienen de una botnet que intenta adivinar tu contraseña de administrador. Puedes mitigar el riesgo y detener los ataques de fuerza bruta añadiendo una capa adicional de protección en el nivel de la pantalla de inicio de sesión con HTTP AUTH.

Para ello, primero necesitarás proteger tu directorio con una contraseña configurando el archivo .htaccess. Una vez que haya hecho esto, debes agregar el siguiente código a tu archivo .htaccess:

#Protect wp-login
<files wp-login.php="">
AuthUserFile ~/.htpasswd
AuthName "Private access"
AuthType Basic
require user mysecretuser
</files>

Esto mostrará un cuadro de autenticación que te pedira introducir tu nombre de usuario y contraseña y, a continuación, tendrás que iniciar sesión en la pantalla de inicio de WordPress – por supuesto, debes utilizar contraseñas diferentes para ambos accesos.

También puedes evitar ataques de fuerza bruta supervisando las direcciones IP que intentan iniciar sesión y luego bloquearlas. O bien, simplemente puede cambiar el nombre de usuario admin de ‘admin’ a otro y, a continuación, eliminar el perfil de usuario de administrador predeterminado. Tu y yu webmaster / desarrollador realmente deben ser las únicas personas con derechos administrativos en el sitio.

Explotaciones basadas en URL

Estos son realmente una puñalada en la oscuridad para los hackers que tratan de encontrar puntos débiles en el sitio haciendo solicitudes de URL que deben devolver un error, pero a veces son completadas.

La URL podría verse algo asi: http://tusitio.com/your/files/%3G/config

Comúnmente, un hacker usará un paréntesis de apertura en el URL asi que primero, para evadir esto, es necesario generar una página 403 Prohibida para detener cualquier solicitud que contenga el paréntesis. Para ello, simplemente usa la siguiente línea en tu archivo .htaccess:

RedirectMatch 403 [

Para crear un conjunto de reglas más complejas, no necesitas escribir todo el código por ti mismo. Si está familiarizado con el archivo .htaccess y tu sitio está en un servidor Apache, entonces puede usar el Firewall 5G, que es un black list para exploits comunes. No es necesario utilizar todas las líneas tampoco, ya que es modular, y en el caso de producir errores, puedes borrar línea por línea hasta que descubras el problema.

Puedes proteger el archivo .htaccess en sí añadiendo la siguiente línea al archivo:

<files .htaccess>
order allow,deny
deny from all
</files>

Plugins de seguridad para WordPress

Por supuesto, puede utilizar uno de los complementos de seguridad que están disponibles para WordPress también. Antes de la instalación, debes comprobar que cualquier complemento que utilices es compatible y se actualice con frecuencia. Si es así, también debes consultar las calificaciones y las revisiones para determinar cuál es visto como el mejor de la comunidad de WordPress.

Recuerda también que si tienes muchos plugins en tu instalación, remueve periódicamente cualquiera que no estés usando. Pregúntate si la funcionalidad que obtienes de dado plugin es realmente necesario y remueve los que no son necesarios. Para aquellos plugins que hayas desactivado, también debes eliminarlos, ya que proporcionan oportunidad potencial para un hacker. Si los plugins ya no son compatibles, entonces deberías buscar una alternativa ya que estos pueden crear una vulnerabilidad en algún momento, si aún no lo han hecho.

En su mayor parte, la seguridad de WordPress se basa en el uso del sentido común y la comprensión de que la mayor parte del tiempo, los hackers y malwares pueden ser atribuidos por errores del usuario final. En su mayor parte, los piratas informáticos obtienen acceso a través de exploits en el software, por lo que si te aseguras de que siempre tienes las últimas versiones vas a hacer un buen trabajo protegiéndo tu sitio. Los hackers buscan la ruta más fácil a menos que estén dirigidos específicamente a ti y tu sitio, así que complicales un poco el trabajo.