Keepass: Un gestor de contraseñas seguro y confiable

Publicado por Diego Córdoba en

Hoy hablaremos sobre KeepassX2, un gestor de contraseñas que nos permite administrar con seguridad las contraseñas de nuestro equipo, y además es compatible con múltiples clientes de android, como Keepass2Android, de modo que podemos sincronizar nuestra base de datos en la nube y disponer de las claves en cualquier dispositivo.

Las bases sobre la gestión de contraseñas

Como muchos recordarán, ya hemos estado hablando en ¡Aprende a crear contraseñas seguras! sobre cómo podemos hacer para escribir buenas contraseñas, que sean difíciles de descifrar.

 hacking keepass keepassx password keepassxc contraseñaTambién citamos a Eduard Snowden con algunas recomendaciones de seguridad y privacidad en la red en Consejos prácticos de Edward Snowden sobre privacidad y mencionábamos que utilizar un gestor de contraseñas era una muy buena opción para mantener la seguridad de nuestras claves.

¿Cómo podemos hacer para no memorizar 20 contraseñas seguras distintas?

Una solución mala sería poner la misma contraseña segura a todas las cuentas. El problema de esta solución es que con que se comprometa una sola cuenta, el atacante podrá tener acceso a varias adicionales. Hoy en Internet y con las redes sociales, cualquiera podría encontrar varias cuentas relacionadas de la misma persona o entidad.

Las soluciones mediocres incluyen poner contraseñas recordables y simples, pero distintas, a cada cuenta. Esto tiene el problema de los ataques de fuerza bruta sobre las claves.

Por otro lado, podríamos poner el mismo patrón de clave con una cadena recordable compleja a cada cuenta, donde la cadena se repita y el patrón cambie según la cuenta. Por ejemplo, GoogLe1234%, YahoO1234%, HotmaiL1234%, etc. Suele ser más recomendable, pero el patrón común, para que sea recordable, comúnmente termina siendo muy simple.

Un gestor de contraseñas, la solución

Y si en google ponemos como contraseña «jvN8zGUKGBthtNFn«? Y en Yahoo ponemos «p6EwQ2wJNUMXNx2H«? No sería más seguro? Claro que si! Ahora, cómo recordamos estas claves ilegibles? La solución radica en el gestor de contraseñas.

Un gestor de contraseñas es un software que almacena en una base de datos cifrada la información de cada una de nuestras cuentas, nombres de usuario, contraseñas, url’s de conexión, notas e información adicional. Y para poder acceder a estos datos, necesitamos una clave especial, que deberá ser segura, pero que será una sola a recordar, y además, no estará expuesta a Internet directamente.

KeepassX2, una de las tantas soluciones

He estado probando estos días un softwar hacking keepass keepassx password keepassxc contraseñae que me recomendaron para mantener las contraseñas seguras, llamado KeepassX2, que almacena localmente en mi equipo Linux las claves, y además, puedo sincronizarlas en la nube (Dropbox, Mega, etc) y acceder al contenido desde un cliente como Keepass2Android, de modo que las mismas claves las puedo obtener tanto desde mi computadora de escritorio como desde el celular.

Keepassx2 es la segunda versión de KeepassX y mantiene un formato nuevo en el archivo de base de datos.

KeepassX2 utiliza formato kdbx, una actualización del formato kdb de la versión anterior de keepass. Keepass2 soporta los dos formatos, pero es recomendable utilizar el nuevo, ya que internamente se estructura en XML, contra el formato propietario de la versión anterior, lo que facilita la sincronización entre diferentes sistemas operativos y dispositivos. Si necesitas accederlo en Android, por ejemplo, puedes usar Keepass2Android: sincronizando contraseñas con Android.

Además, incluye autenticación compleja mediante una contraseña de usuario y un archivo de clave generado aleatoriamente, de modo que cuando necesitemos sincronizar, deberemos poseer dicho archivo de clave previamente compartido, y la contraseña.

En esta práctica utilizaré KeepassX2 en Linux, ya que es software open source y se encentra en los repositorios de casi cualquier distro. No obstante, si utilizas Windows, también puedes instalarlo descargándo el binario desde el sitio oficial de keepass.

Instalación de KeepassX2 en Linux

En mi caso particular lo he instalado en Arch de esta forma:

sudo pacman -S keepassx2

En Debian podemos hacer:

sudo aptitude install keepass2

Utilizando Keepass

Primero, cuando abrimos la aplicación, deberemos crear la base de datos. KeepassX2 soporta bases de datos en formato .kdbx, aunque también permite importar archivos .kdb de la versión anterior.

 hacking keepass keepassx password keepassxc contraseñaVamos a crear la nueva base de datos, seleccionamos dónde queremos almacenarla:

 hacking keepass keepassx password keepassxc contraseñaLuego especificamos la contraseña segura que debemos utilizar para acceder a nuestra base de datos.

Aquí también tenemos la posibilidad de crear un archivo de clave, o utilizar un archivo de clave existente. En este ejemplo lo haremos sin archivo de clave, pero en el caso de crearlo, si queremos acceder a la base de datos keepass desde otro sistema, o un celular con Keepass2Android por ejemplo, deberemos sincronizar el archivo de base de datos, y además también incorporar en el otro sistema el archivo de clave.

Por supuesto, la clave que usemos como contraseña deberá ser segura! Chequear Contraseña segura: Cómo? Día mundial de la contraseña

 hacking keepass keepassx password keepassxc contraseña

Podemos ver a continuación diversas opciones de seguridad y configuración de la base de datos. No vamos a modificar nada, pero sabemos que podemos cambiar el tipo de cifrado se los datos, compresión o papelera de reciclaje de seguridad de contraseñas.

 hacking keepass keepassx password keepassxc contraseña

Luego accedemos al panel principal! Vamos a crear, por ejemplo, nuestra contraseña para la cuenta de google. Primero, damos clic en el botón de crear entrada, o con el menú contextual del fondo de la lista de entradas: hacking keepass keepassx password keepassxc contraseñaLuego debemos colocar información de la cuenta, su nombre para recordar, nombre de usuario de login, url, y la password. Acá podemos generar automáticamente la password, y visualizarla si queremos. Conste que podríamos tener todas las contraseñas de todos los servicios en Internet cargadas en el gestor de claves, y nunca haber visto ni siquiera una contraseña!

 hacking keepass keepassx password keepassxc contraseña

Podemos además dejar notas adicionales de para qué es la cuenta, o la información extra que necesitemos.

Entonces guardamos, y LISTO! Podemos cerrar nuestro gestor de claves. Cuando necesitemos acceder a una cuenta, simplemente abrimos el gestor de contraseñas, colocamos nuestra contraseña segura de acceso, y podremos ver la lista de las entradas.

 hacking keepass keepassx password keepassxc contraseñaDamos clic derecho en la cuenta de la que necesitemos la contraseña, y simplemente, copiar y pegar donde corresponda!

 hacking keepass keepassx password keepassxc contraseña

Y si se corrompe el archivo de claves??

 hacking keepass keepassx password keepassxc contraseñaEsta es una pregunta que me hice… si se nos rompe el archivo de claves, perdemos, literalmente, todas las contraseñas que teníamos en nuestros servicios!!

Afortunadamente, KeepassX2 permite exportar en formato XML html o CSV la base de datos en texto plano, de modo que de vez en cuando, podemos exportar la base de datos y guardarla en un lugar seguro, una memoria flash escondida, o impreso y guardado donde nadie vaya a buscarlo, etc.

No es común que la base de datos de claves se rompa, y menos si además está sincronizada en la nube, pero nunca está de mas resguardarse 🙂

Puedes visitar Keepass2Android: sincronizando contraseñas con Android si quieres acceder a tu base de datos de claves desde tu celular Android.

Espero que les sirva!

Cualquier otra alternativa que hayas usado y quieras compartirla por favor comenta el artículo! Así enriquecemos este humilde aporte.

Gracias!


Update 2018-05-14

Hace una semana estoy utilizando una nueva versión de KeepassX… bueno, en realidad no es una nueva versión, sino un fork de la versión original, llamado KeepassXC, o KeepassX Community, que por cierto, está excelente!

El proyecto surgió como fork de KeepassX con el objetivo de extender y mejorar a la aplicación original, agregándole nuevas características, una línea de desarrollo más activa, corrección de bugs… en fin, proveer un moderno gestor de contraseñas open-source multiplataforma.

Les dejo el enlace al github del proyecto por si quieren descargarlo directamente desde ahí.

De más está decir que mantiene el formato de base de datos de claves kdbx de la versión keepassx original, pero para quienes utilicen, como yo, un archivo de clave adicional a la password principal de acceso, es conveniente exportar la DB original en keepassx, y luego importarla en keepassxc creando una DB nueva, y creando un nuevo archivo de clave, ya que su formato fue actualizado para brindar mayor seguridad.

Espero les resulte útil como a mi!!


Diego Córdoba

- Ingeniero en Informática - Mg. Teleinformática - Tesis pendiente - Docente universitario - Investigador