Seguridad
Checklist de seguridad Joomla
- Detalles
- Categoría: Seguridad
Primero que todo nos gustaría responder la gran interrogante ¿es Joomla un CMS inseguro?
No, Joomla es un software completamente seguro. Joomla, Wordpress, Drupal, Windows, Photoshop, Whatsapp, etc por ser de aplicaciones de amplio uso están siempre bajo el ojo de hackers quienes se esmeran por descubrir sus vulnerabilidades explotarlas y luego difundirlas. Sin embargo, Joomla! cuenta con un excelente equipo de desarrollo que libera periódicamente parches de seguridad para reparar estas vulnerabilidades si llegan a ser descubiertas. Es decir, mientras tengas tu Joomla! actualizado, existen remotas posibilidades que llegues a tener un problema de seguridad.
Antes de entregar nuestro sitio web, podemos mejorar aún más su seguridad con las medidas que serán explicadas a continuación:
1. Revisa si tu Joomla, sus componentes, módulos, plugins y plantillas se encuentran en su última versión. Trata de usar siempre extensiones gratuitas a menos que puedas solventar la membresía de un club en donde puedas conseguir las actualizaciones periódicas.
2. Desinstala todo lo que no vayas a usar. Una vez terminamos el diseño y desarrollo de un sitio web, asegurate de desinstalar todo lo que no usaste. También puedes desinstalar las plantillas que vienen por defecto con tu instalación de (Protostar, Hathor, Beez)
3. Desactiva la función de creación de usuarios si no la necesitas. Esta es la primera ventana abierta por donde podrían meterse a tu sitio web. Cuando logran hacerse de un usuario Super Admin, es cuando ya no hay nada más que hacer. Si les prohibes la creación de usuarios le das una barrera más para que se tomen tu sitio. Para desactivar la creación de usuarios solo debes ir a:
Usuarios->Gestionar->Opciones->Primera Opción “Permitir el registro de usuarios” -> No
4. Configura tu .htaccess. Joomla ya viene "de fábrica" con un archivo htaccess.txt, el cual para activarlo debes renombrarlo de htaccess.txt a .htaccess de esta forma el servidor podrá leer sus comandos. Este archivo viene con instrucciones básicas respecto a reescritura de URLS y redirección www. Si tu quieres puedes investigar como poder mejorarlo a tu gusto (siempre y cuando tu hosting lo permita). Si quieres saber mas acerca de este archivo revisa esta pagina en donde podras generar un archivo htaccess personalizado http://www.htaccessredirect.net/
5. Configura tu php.ini. Una buena configuración de seguridad para bloquear intromisiones y crear una nueva barrera de entrada a tu sitio web vía PHP es agregar a tu php.ini lo siguiente:
register_globals = 0
disable_functions = show_source, system, shell_exec, passthru, exec, phpinfo, popen, proc_open
allow_url_fopen = 0
magic_gpc_quotes = 0
safe_mode = 1
open_basedir = /dir/incl/
7. Haz una copia de seguridad de tu sitio web (archivos y base de datos) y pruébala en tu servidor local. Para simplificar esta tarea puedes utilizar una extensión como Akeeba Backup o X-Cloner
8. Asegúrate que tu servidor de hosting cuente con la última versión de PHP instalada, muchos servidores de hosting te permiten modificar la versión de PHP a través de CPANEL. En la opción Software y servicios encontrarás un icono (logo) de PHP y su configuración. Antes de modificar la versión de PHP por la última disponible asegurate de realizar un respaldo de tu sitio web, de todas formas si llegas a encontrar un mal funcionamiento puedes bajar la version de PHP de la misma manera.
9. Pon mas dificultad al acceso a tu carpeta /administrator. Desde CPANEL puedes agregar una barrera adicional configurando la opción "Proteger directorio con contraseña".
8. Permisos de escritura de archivos y carpetas. Revisa que todos tus archivos cuenten con permisos (CHMOD) "755" y carpetas con permisos 644. Si quieres puedes utilizar la extensión Admin Tools de Akeeba que realiza esta función con un solo click.
9. Activa las URLs amigables y sobreescritura de URLs, por un tema estético, de SEO y de seguridad es fundamental dejar nuestras URLs limpias, de esta manera no damos a conocer explícitamente cada uno de los componentes que estamos utilizando. La activación de esta opción se realiza en 2 pasos, primero debes ir vía FTP a la carpeta root de tu joomla y renombrar el archivo htacces.txt a .htacces y luego debes ir a configuración global y activar la opción “Usar la reescritura de URLs” y “URLs Amigables”
10. Si tu sitio web es de comercio electrónico es importante que compres e instales un certificado de seguridad SSL para encriptar los datos que envían tus clientes al comprar algún producto. Podrás encontrar certificados desde los $100 a $150 dólares aprox
11 Si tienes sospechas de que tu sitio esta vulnerable, esta infectado, o ha sido hackeado, puedes contratar los servicios de la empresa online www.myjoomla.com para una limpieza y escaneo a profundidad
12 No utilizar usuarios tipo admin, demo, ni passwords como test123 o password, siempre usar passwords robustos
Algunas extensiones de pago y gratuitas que te podrían ayudar a reforzar la seguridad de tu sitio Joomla!
RS Firewall
Admin Tools
Akeeba Backup
X-Cloner
Escrito por Leo Soto | Monday, 01 February 2016
Factor doble
- Detalles
- Categoría: Seguridad
Desde su versión 3.2, Joomla! incorporó dentro de sus novedades el "Two Factor Authentication Pllugin" o como podríamos llamarle, "Plugin de autentificación doble", ¿De qué va esta nueva forma de iniciar sesión en Joomla!?
Concepto:
El plugin de autenticación doble está para que podamos aumentar la seguridad en nuestros sitios Joomla!, esto debido a que cuando habilitamos el plugin, se convierte prácticamente imposible para un hacker tratar de ingresar a nuestra cuenta a través de la fuerza bruta, pues aún cuando pueda hacerse de nuestra contraseña, no podrá hacerse de la segunda clave, pues esta la tendremos solo nosotros a través de nuestro teléfono móvil.
Aquellos que han trabajado con banca o banco online entenderán de inmediato a lo que me refiero, este plugin convierte nuestro teléfono móvil en un "digipass", pues nos irá asignando una clave aleatoria a la que podremos recurrir al momento de iniciar sesión en nuestros sitios Joomla!, por lo tanto, además de nuestra clave de acceso, tendremos esta segunda clave que se genera específicamente para ese inicio de sesión en lo particular.
Pregunta Recurrente:
Desde que se introdujo esta nueva característica en Joomla!, una de las preguntas más recurrentes que he escuchado al respecto es: Si habilito el plugin, ¿qué sucede con aquellos usuarios de mi sitio web que no tienen celular?
La respuesta es bastante simple y lógica a la vez, no sucede nada, pues el hecho que habilites el plugin no lo convierte en mandatorio para todos los usuarios, sino que al habilitar el plugin le das la opción al usuario de decidir si desea o no usar esta segunda clave de autenticación.
Otra pregunta es respecto a qué parte del sitio es la que se ve afectada con la autenticación doble, pues bien, el plugin de Joomla! nos permite decidir si queremos utilizar el plugin de autenticación doble en el frontend, backend o ambos casos.
Por ejemplo, tenemos un sitio web de comercio online y tenemos usuarios que han entregado datos personales sensibles, tales como dirección de despacho de la compra, teléfono directo, etc., pero también tenemos usuarios registrados con información mucho menos sensible, que se han registrado solo para recibir un newsletter mensual de nuestro comercio. Al tener esta opción de segunda autenticación, le damos a aquellos usuarios que nos han dado información sensible, la opción de proteger su contraseña con este plugin de autenticación doble. Del mismo modo, como super administradores de sitios, es altamente recomendable tener activado este plugin para todos aquellos que tengan acceso al backend o administración de nuestro sitio, para mantener nuestra información o contenido lo más seguro posible.
Dispositivos
Una vez que te hayas decidido a utilizar el plugin de autentificación doble, te preguntarás respecto al tipo de dispositivos móviles que tienen acceso a esta segunda clave, pues bien, para tu tranquilidad te puedo comentar que, al haber sido desarrollado por Google bajo la filosofía del Open Source, este sistema de autenticación está disponible prácticamente para todos los sitemas operativos de equipos móviles. Funciona con Android, iOS, Blackberry y Windows Phone. Puedes ver un detalle más completo al respecto en la wikipedia a través del siguiente enlace: http://es.wikipedia.org/wiki/Google_Authenticator
Habilitación y puesta en marcha
Para habilitar el plugin, solo debemos ingresar al administrador de nuestro Joomla! y desde el gestor de plugins buscamos el plugin "Autentificación de factor doble - Autentificador Google"
Ingresamos al plugin y veremos de inmediato los parámetros del plugin, en donde podremos elegir si lo habilitamos para la zona del sitio, de la administración o para ambas, cambiamos el estado de "deshabilitado" a "Habilitado", guardamos los cambios y con eso ya tendremos el plugin habiitado en nuestro sitio.
Si damos una vista rápida a nuestra página de inicio, veremos que ya aparece un tercer recuadro dentro del formulario de acceso de nuestro sitio web.
Activarlo paro los usuarios
Ahora bien, como comenté anteriormente, el hecho de tener habilitado el plugin, no significa que la autenticación doble esté vigente para todos, sino que cada usuario deberá ir habilitándola personalmente en base a su preferencia de uso, pero para que esto sea posible, debes tener en cuenta que es importante tener habilitado un enlace a la edición de perfil del usuario, para que el usuario registrado pueda modificar sus datos a través del menú cuando accede al sitio, de lo contrario no podrá acceder a su perfil para habilitar el plugin.
Si hacemos caso a ese perfil, veremos que ya nos aparece toda una sección dentro del mismo en el que se nos ofrece, como usuarios, hacer uso del sistema de autentificación doble, basta con que nosotros, como usuarios, seleccionemos la opción "Autentificador de Google" y automáticamente se desplegaran los pasos necesarios, el primer paso nos indica de qué se trata el autentificador y un par de enlaces de referencia a la wikipedia y el segundo paso nos muestra la configuración con los datos que necesitamos para la correcta autentificación y un muy cómodo código QR que nos permitirá acceder al autentificador sin errores de ningún tipo. Seguimos los pasos, escaneamos el código QR y obtendremos de inmediato nuestra primera clave, la ingresamos en el recuadro de abajo y ya tendremos habilitado el plugin en nuestra cuenta de usuario.
A partir de ese momento, cada vez que iniciemos sesión en el sitio web, podremos utilizar el autentificador de factor doble e iniciar sesión de forma segura. Les adjunto una imagen de como se ve la clave desde el dispositivo y en el inicio de sesión
Como te habrás dado cuenta, como administrador del sitio, solo debemos habilitar un plugin, el resto del trabajo corresponde a cada usuario por separado, para aquellos que saben como usar el factor de autentificación doble, no será mayor problema el hacer uso de la herramienta, para aquellos que no saben como usarlo, un mini tutorial en tu sitio o un enlace a este artículo debieran ayudar.