¿Debería WordPress añadir opciones para mejorar la seguridad o dejarlo en manos de los desarrolladores de plugins?

17 feb 2011, 15:00:17
Vistas: 245
Votos: -2

Basado en la pasión generada por las respuestas a esta pregunta. Parece que la respuesta es un rotundo "¡Nada!" o "déjalo en manos de los desarrolladores de plugins, WP ya es lo suficientemente seguro"...

¿Así que supongo que estoy completamente equivocado con la pregunta? Parece que he removido un avispero y ese no era el objetivo. Sin embargo, aquí está el resultado en el mundo real...

Acabo de recibir un correo de uno de mis clientes que tuvo 12 de sus sitios hackeados porque un atacante descifró su contraseña. Sus comentarios me abrieron los ojos a posibilidades de algunas opciones muy sencillas que podrían añadirse al núcleo de WordPress para ayudar a que los sitios WP sean menos propensos a este tipo de ataques.

Lo más simple que un usuario puede hacer es cambiar el nombre de usuario predeterminado. Supongo que más del 90% de los sitios WP en vivo tienen un perfil de usuario "admin" que puede o no estar en uso, pero que obviamente tiene todos los derechos y permisos. ¡El trabajo de un atacante ya está medio hecho!

Pero el núcleo de WP podría mejorarse con algunas opciones de seguridad muy simples también. ¿Qué tan difícil sería añadir...

  • Bloqueo por intentos de inicio de sesión fallidos (configuración definida por el usuario)
  • Regular el tiempo entre intentos de inicio de sesión fallidos (configuración definida por el usuario en segundos)
  • Restricción por rango de IP (establecer una lista de IPs desde las que se aceptan inicios de sesión)

Estas son solo algunas ideas que se me ocurren. Estoy seguro de que ustedes también tienen mejores opciones.

Y el punto de mi pregunta no es lo que los "usuarios" deberían hacer para mejorar la seguridad, eso es otra cuestión completamente diferente. Pregunto qué pasos podría tomar WP para proporcionar algunas OPCIONES, nada obligatorio, pero cosas que los desarrolladores de plugins actualmente tienen que suplir donde deberían ser parte de cada instalación predeterminada de WP (en mi opinión).

¿Están planeadas alguna de estas mejoras para las próximas versiones de WP?

5
Comentarios

Voté en contra debido al título de la pregunta. Creo que WordPress se toma en serio la seguridad.

Travis Northcutt Travis Northcutt
17 feb 2011 15:18:57

Esta pregunta es difícil de responder, porque es especulativa sobre posibles acciones futuras de WordPress. Sería mejor reformularla como "¿qué puedo hacer para mejorar la seguridad de mi instalación de WordPress?", pero creo que ya tenemos una pregunta así.

Jan Fabry Jan Fabry
17 feb 2011 15:19:45

@Jan: buena sugerencia. ¿Qué tal "¿Qué puede hacer WordPress para mejorar la seguridad de las instalaciones?"

Scott B Scott B
17 feb 2011 15:46:27

Votado negativo debido a la extrema oscuridad del tema, no hay una respuesta correcta. Algunas de las cosas sugeridas en la pregunta simplemente se volverían molestas para el usuario y apenas serían utilizadas. Medidas de seguridad adicionales como esas deberían ser responsabilidad de los plugins y configuraciones de httpd.

Backie Backie
17 feb 2011 16:07:47

¿Existe algún framework que simplemente diga: "Aaah, al diablo con la seguridad, nuestra comunidad probablemente se encargará de ello?" Siento que la seguridad es un principio fundamental de TODOS los frameworks dignos de mención. Si los desarrolladores del núcleo de WordPress identifican una mejora de seguridad que hacer, la implementan.

Creo que el título estaría mejor redactado como: "¿Deberían agregarse medidas de seguridad opcionales al núcleo?"

bosco bosco
31 dic 2013 23:46:54
Todas las respuestas a la pregunta 4
6

RESPUESTA: Nombre de usuario - admin

Desde la versión 3.0, el instalador solicita al usuario que proporcione un nombre de usuario para la cuenta principal, obviamente no obtendrás esta opción si actualizas desde una versión anterior (porque no es una nueva instalación).

Puedes ver una imagen de esto aquí:
http://codex.wordpress.org/Installing_WordPress#Step_5:_Run_the_Install_Script

RESPUESTA: Bloqueo de usuarios malintencionados

No hay una forma realmente efectiva de hacerlo, ya que cualquier información que puedas obtener y almacenar sobre un usuario puede ser falsificada y cambiada en cuestión de momentos, corres el riesgo de bloquear usuarios legítimos.

RESPUESTA: Intentos de inicio de sesión fallidos

Esto podría ser útil, pero siempre existe la posibilidad de que un usuario malintencionado bloquee a un administrador (u otro usuario) de su propia instalación simplemente intentando iniciar sesión en la cuenta de ese usuario con credenciales inválidas. Regular el tiempo entre intentos de inicio de sesión podría ayudar, pero honestamente, cualquier hacker inteligente automatizaría el procedimiento de todos modos y esto se vuelve un punto discutible hasta cierto punto (pero sí, seguro, detendrá a algunos).

Esa es solo mi opinión sobre esos puntos específicos, tómalo como quieras.. :)

17 feb 2011 15:24:37
Comentarios

@t3los: la mayoría de los sitios WordPress tienen un único usuario administrador. El inicio de sesión del administrador es a lo que propongo agregar opciones de fortalecimiento. Solo lo propongo como una opción, al igual que cambiar los enlaces permanentes. Gracias por ofrecer sugerencias.

Scott B Scott B
17 feb 2011 16:45:54

@Scott B - ¿Qué sugerirías que se hiciera para proteger aún más las cuentas de administrador?

t31os t31os
17 feb 2011 17:07:52

@t3los: creo que las 3 cosas que he enumerado en la pregunta serían suficientes para comenzar. Y serían cosas que simplemente podría "aconsejar" a los clientes que activen. Nada obligatorio. Y cuando digo que la mayoría de los sitios tienen un solo usuario administrador, generalmente ese es el ÚNICO usuario que tiene acceso al panel de WordPress en mi experiencia.

Scott B Scott B
17 feb 2011 17:21:01

@t3los: Solo para aclarar sobre los usuarios administradores. Tengo ~1k clientes que usan WP (y más de 10k instalaciones de WP entre esos clientes). Más del 95% de ellos tienen exactamente 1 usuario en la tabla Usuarios, y en casi el 100% de esos casos, es el usuario admin.

Scott B Scott B
17 feb 2011 17:24:17

Sí, pero como dije antes, existe el potencial de que algunas medidas tengan impactos negativos en la experiencia de un usuario legítimo (y poca inconveniencia para un hacker experto). Cambiar el nombre de la cuenta principal siempre vale la pena, como se menciona en la documentación de Hardening WordPress: http://codex.wordpress.org/Hardening_WordPress, que es una buena fuente de información para proteger un servidor (bueno, al menos es un buen punto de partida).

t31os t31os
17 feb 2011 17:45:12

@t31os: Aceptado como la respuesta más reflexiva a mi pregunta. Realmente lo aprecio.

Scott B Scott B
17 feb 2011 18:16:43
Mostrar los 1 comentarios restantes
3

Supongo que nunca has tenido que manejar una base de usuarios considerablemente grande con un sistema de inicio de sesión con estrictas medidas de seguridad? No es bonito... :)

Los cambios de inicio de sesión que propones:

  1. Harán poco por la seguridad, porque la mayoría de los hackeos provienen de versiones desactualizadas y mala seguridad del servidor, no de intentos de fuerza bruta en los inicios de sesión.

  2. Generarán más comentarios negativos de los usuarios que los problemas de seguridad jamás lo han hecho o lo harán.

El asunto es que WordPress solo funciona como parte de un stack de servidor web. Hay un límite en lo que puede hacer respecto a la seguridad y las medidas generales harán más daño que bien en la mayoría de los casos.

WordPress se encarga de todo lo que puede y está impulsado por plugins para agregar y configurar lo que específicamente necesitas. Es difícil superar esto.

17 feb 2011 16:04:20
Comentarios

En la mayoría de los casos, estos son sitios pequeños con un solo usuario administrador. Las opciones que estoy proponiendo no son obligatorias y serían definidas por el usuario como un nivel adicional de seguridad. En el caso de mi cliente, cualquiera de las 3 opciones que sugerí probablemente habría evitado el simple robo de la contraseña de administrador. No puedo decir que el hacker simplemente se habría "ido", sin embargo, fue demasiado fácil.

Scott B Scott B
17 feb 2011 16:43:05

@Scott B ¿en qué se diferencia habilitar una opción no obligatoria de instalar un plugin que hace lo mismo? Entiendo tu punto de que podría incluirse en el núcleo. Pero también entiendo que esto no es algo que WordPress deba hacer y tampoco es algo que no se pueda hacer ya.

Rarst Rarst
17 feb 2011 17:03:05

tiene que ver con el nivel de sofisticación del usuario. Cierto, deberían saber estas cosas, pero la mayoría dan por sentado que WP ya está protegiendo sus sitios contra el pirateo simple de contraseñas. Así que si supieran lo fácil que es, con una instalación predeterminada de WP, descifrar la contraseña de administrador, tal vez harían lo que sugieres y buscarían el plugin y lo instalarían. La mayoría no lo sabe hasta que es demasiado tarde.

Scott B Scott B
17 feb 2011 17:07:09
2

Si tu cliente tuvo 12 sitios hackeados, entonces una de dos cosas debe suceder: o necesita un mejor host, o debe dejar de crear agujeros de seguridad en sus sitios.

WordPress no necesita hacer ninguna de las cosas que sugeriste porque ya las tiene (puedes elegir tu propio nombre de usuario de administrador durante la instalación), o el caso de uso no lo justifica. Como señaló t31os, aunque esas cosas podrían ser útiles, también podrían ser utilizadas por hackers como un arma contra los administradores.

No hay suficientes personas que necesiten o deseen esas medidas de seguridad como para justificarlas como una opción en el núcleo.

Técnicamente, son una opción en el núcleo:

Ve a Plugins --> Añadir nuevo, busca 'Login Lockdown' e instálalo.

17 feb 2011 16:06:34
Comentarios

gracias por la sugerencia de "Login Lockdown". Consideraré recomendarla a mis usuarios. Aunque creo que debería estar integrado en el núcleo como una "Opción" en la configuración.

Scott B Scott B
17 feb 2011 16:48:03

+1 por hacer una sugerencia útil (olvidé hacerlo en mi comentario original).

Scott B Scott B
17 feb 2011 18:18:20
0

WordPress es la plataforma de blogs más popular y utilizada. Soporta cualquier tipo de sitio web, desde un simple blog hasta un sitio empresarial con todas las funciones. El veintiséis por ciento de todos los sitios web a nivel mundial utilizan WordPress. Como resultado de esta popularidad, los hackers y spammers han mostrado un gran interés en romper la seguridad de los sitios operados con WordPress.

Solo en enero de 2017, WordFence reportó un promedio de 26 millones de ataques de fuerza bruta contra sitios WordPress por día. En el mismo informe registraron ataques más complejos y dirigidos con un promedio de 4.7 millones por día durante el mismo período. Eso es mucha gente y bots con malas intenciones. La seguridad de tu sitio WordPress es muy importante, y un buen lugar para comenzar a protegerlo es en la pantalla de inicio de sesión, así que comencemos a hacer que la página de inicio de sesión de tu sitio WordPress sea un poco más segura.

1. No uses "admin" como nombre de usuario Este es quizás el paso más básico de seguridad en WordPress que puedes tomar como usuario. No te cuesta nada, y la instalación lo hace fácil de realizar. La mayoría de los ataques actuales se dirigen a tus puntos de acceso wp-admin / wp-login usando una combinación de "admin" y alguna contraseña en lo que se conoce como ataques de fuerza bruta. El sentido común indicaría que si eliminas "admin", también detendrás el ataque de inmediato.

Simplemente crea un nuevo usuario en WordPress en Usuarios > Añadir nuevo y asígnalo con derechos de Administrador. Después de eso, elimina el usuario "admin". No te preocupes por las publicaciones o páginas que el usuario "admin" ya ha creado. WordPress te preguntará amablemente: "¿Qué se debe hacer con el contenido propiedad de este usuario?" y te dará la opción de eliminar todo el contenido o asignarlo a un nuevo usuario, como el que acabas de crear.

2. Usa una contraseña fuerte

Los ataques de fuerza bruta a páginas de inicio de sesión son una de las formas más comunes de ataques web que probablemente enfrentará tu sitio. Si tienes una contraseña o nombre de usuario fácil de adivinar, tu sitio web casi seguro no solo será un objetivo, sino eventualmente una víctima.

Experimenta con las contraseñas del sitio web y cámbialas regularmente. Mejora su fortaleza añadiendo letras mayúsculas y minúsculas, números y caracteres especiales. Obliga a todos tus usuarios a utilizar contraseñas fuertes.

3. Limita los intentos de inicio de sesión Esta es una técnica increíblemente simple para detener los ataques de fuerza bruta en tu página de inicio de sesión. Un ataque de fuerza bruta funciona intentando adivinar tu nombre de usuario y contraseña probando múltiples combinaciones una y otra vez.

Si se rastrea la IP particular que está perpetrando el ataque, entonces puedes bloquear los intentos repetidos de fuerza bruta y mantener tu sitio seguro. Configura "Limit Login Attempts" para prevenir ataques de fuerza bruta.

4. Mantente actualizado Un porcentaje muy grande de los hackeos de sitios web provienen de versiones desactualizadas y vulnerables de plugins.

Cada buen producto de software es soportado por sus desarrolladores y se actualiza de vez en cuando, pero WordPress se actualiza con mucha frecuencia. Estas actualizaciones están destinadas a corregir errores y a veces tienen parches de seguridad vitales.

Así que actualiza tu WordPress, plugins y temas regularmente.

5. Haz copias de seguridad de tu sitio regularmente No importa cuán seguro sea tu sitio web, siempre hay margen de mejora. Pero al final del día, mantener una copia de seguridad externa en algún lugar es quizás el mejor antídoto sin importar lo que suceda.

Si tienes una copia de seguridad, siempre puedes restaurar tu sitio WordPress a un estado funcional en cualquier momento. Hay algunos plugins que pueden ayudarte en este aspecto.

El plugin WP All Backup te ayuda a crear copias de seguridad y restaurarlas fácilmente con un solo clic. Copias de seguridad manuales o automatizadas y también almacena las copias de seguridad en un lugar seguro como Dropbox o FTP.

Crea una copia de seguridad de todo tu sitio web: eso incluye tu base de datos, el núcleo actual de WP, todos tus temas, plugins y archivos subidos.

WP ALL Backup le da a los administradores de WordPress la capacidad de migrar, copiar o clonar un sitio de una ubicación a otra. Si necesitas mover WordPress o hacer una copia de seguridad de WordPress, este plugin puede ayudar a simplificar el proceso.

6. Establece contraseñas fuertes para tu base de datos Una contraseña fuerte para el usuario principal de la base de datos es imprescindible - el que WordPress usa para acceder a la base de datos.

Como siempre, usa mayúsculas, minúsculas, números y caracteres especiales para la contraseña.

7. Configura el bloqueo del sitio y prohíbe usuarios Una función de bloqueo por intentos fallidos de inicio de sesión puede resolver un gran problema, es decir, no más intentos continuos de fuerza bruta. Cada vez que haya un intento de hackeo con contraseñas incorrectas repetitivas, el sitio se bloqueará y se te notificará sobre esta actividad no autorizada.

El plugin WP User para WordPress tiene un mecanismo para ralentizar los ataques de fuerza bruta, limitar los intentos de inicio de sesión, notificar sobre bloqueos, expresiones regulares para contraseñas, Google reCAPTCHA, registro de inicios de sesión, aprobar/denegar usuarios, aprobación automática o por correo electrónico de usuarios.

27 abr 2018 09:17:18