Para nadie es desconocido que cada día aumenta la forma de acceso a la red donde se mueven millones de datos delicados los cuales si caen en las manos erróneas pueden traer consecuencias delicadas tanto a nivel personal como corporativo.
Los ataques están a la orden del día, ataques a nivel de red, ataques desde dispositivos USB, ataques de contraseña y muchos más, hacen sensible nuestra información y es por ello por lo que, no solo como administradores de sistemas sino como usuarios en general debemos tomar las medidas del caso para prevenir que un atacante pueda acceder a nuestro sistema y vulnerar, robar o editar la información allí almacenada.
Existen diversas formas como podemos protegernos y una de las más importantes es encriptando los archivos delicados, y vale la pena aclarar que, aunque usemos Linux, que de por si es un sistema seguro, a medida que pasan los días los atacantes se las ingenian para vulnerarlo y de este modo acceder en un entorno que consideramos seguro.
Como hemos mencionado, la encriptación de los archivos es un método eficaz para aumentar la seguridad de los datos, pero debemos ser conscientes de la forma como se ha de encriptar y que herramienta usar y es por ello que en Solvetic enfocaremos la atención en la utilidad Tomb.
Para este análisis usaremos Ubuntu 17.10.
Tomb ha sido escrito en un código de fácil análisis y vincula componentes comúnmente compartidos incrementando así sus capacidades de alcance.
A nivel de seguridad, Tomb hace uso del estándar de cifrado, mismo cifrado de Veracrypt, AES-256, con lo cual los datos estarán realmente seguros.
Su forma de uso es simple, Tomb creará carpetas de almacenamiento cifradas las cuales puede ser abiertas y cerradas haciendo uso de los archivos clave asociados, los cuales también están protegidos con una contraseña que definimos en el momento de configuración.
Tomb es una herramienta práctica para la gestión y todo lo relacionado con el almacenamiento encriptado en sistemas operativos Linux, esto gracia a que hace uso de los hash del mecanismo de anidamiento dyne: bolic, y adicional a esto, cuando usamos Tomb, será posible mover nuestra carpeta bloqueada y esconderla de forma segura en un sistema de archivos compatible, así, las claves pueden estar separadas, por ejemplo, el archivo creado por Tomb puede estar en el disco duro y los archivos clave en una memoria USB o disco externo, así evitamos que las claves estén en el mismo lugar donde están los archivos protegidos aumentando la seguridad.
Tomb solo es compatible con sistemas GNU/Linux.
El objetivo de Tomb es brindar seguridad de nivel militar haciendo uso de:
- Un diseño minimalista el cual ha sido creado como un código pequeño y fácil de leer para los administradores y desarrolladores
- Uso de buenas prácticas a nivel de seguridad
- Adopción de nuevas implementaciones estándar
A nivel de desarrollo, Tomb consiste en un simple script de shell (Zsh) el cual usa las herramientas estándar del sistema de archivos GNU y la API criptográfica del kernel de Linux (cryptsetup y LUKS). Tomb está en la capacidad de generar una salida analizable por equipo para facilitar su uso en aplicaciones gráficas o GUI.
Una vez abiertas con la clave correcta, las “tumbas” son carpetas normales y pueden contener diferentes archivos, donde podremos llevar a cabo tareas avanzadas como ejecución y búsqueda rápida, o pueden cerrarse con un solo clic.
Las claves que son generadas por Tomb, pueden ser almacenadas en medios independientes, como hemos mencionado, tales como memorias USB, NFC, servidores SSH en línea o dispositivos bluetooth permitiendo asi que el transporte de datos sea más seguro y no estén en la misma ubicación de los archivos protegidos.
El script de Tomb cuenta con funciones como:
- Protege la escritura contra ataques de contraseñas de keyloggers (ataques de teclado).
- Permite ocultar claves dentro de imágenes creando así una nueva técnica de seguridad.
- Indexa y busca el contenido de una “tumba”.
- Puede montar directorios.
- Enumera “tumbas” abiertas y selectivamente las cierra según sea el caso.
- Advierte al usuario sobre el espacio libre y el uso del último tiempo permitiendo así un mejor control sobre los datos.
1. Instalar Tomb en Ubuntu 17.10
Para ejecutar el script de Tomb debemos ser usuarios root, en el caso de Ubuntu podemos ejecutar el siguiente comando para acceder como dicho usuario:
sudo -i
Una vez estemos como usuarios root, vamos a ejecutar la siguiente línea con nuestro editor deseado:
nano /etc/apt/sources.list.d/sparky-repo.list
Esto creará un nuevo archivo donde pegaremos las siguientes líneas:
deb https://sparkylinux.org/repo stable main deb-src https://sparkylinux.org/repo stable main deb https://sparkylinux.org/repo testing main deb-src https://sparkylinux.org/repo testing main
Guardamos los cambios usando la combinación de teclas siguiente:
Ctrl + O
Salimos del editor usando:
Ctrl + X
2. Instalar la clave pública de Sparky en Ubuntu 17.10
Una vez añadamos estas líneas, podremos ejecutar alguna de las siguientes opciones:
apt-get install sparky-keyring wget -O - https://sparkylinux.org/repo/sparkylinux.gpg.key | sudo apt-key add –
Procedemos a actualizar los paquetes del sistema:
apt-get update Instalación de Tomb
Una vez actualizados los paquetes ejecutaremos la siguiente línea para la instalación de Tomb:
apt-get install tomb
Allí ingresamos la letra S para confirmar la descarga e instalación y en algunos casos veremos el siguiente mensaje durante el proceso de instalación:
Pulsamos en Aceptar para concluir el proceso. Si deseamos instalar la versión grafica de Tomb debemos ejecutar la siguiente línea:
apt-get install gtomb
3. Usar Tomb en Ubuntu 17.10
En primer lugar, analizaremos el uso de Tomb como línea de consola, lo cual es el valor por defecto en la creación de la utilidad.
El primer paso que dar consiste en crear la “tumba” y asignar el tamaño de la misma, en este caso asignaremos 50 MB, ejecutamos lo siguiente:
tomb dig -s 50 TombSolvetic.tomb
El siguiente paso consiste en crear un archivo de claves para bloquear la tumba creada, para ello ejecutamos lo siguiente:
tomb forge TombSolvetic.tomb.key
Podemos ver que se genera un error “an active swap partition”, esto se corrige desactivando todas las particiones de intercambio o swap haciendo uso del siguiente comando:
swapoff -a
Luego ejecutamos de nuevo la línea "tomb forge TombSolvetic.tomb.key" y veremos que inicia el proceso de escritura de bloques:
Una vez complete este proceso será desplegada la siguiente ventana donde ingresaremos la clave de la tumba creada:
Pulsamos en OK y debemos confirmar de nuevo la clave:
Cuando pulsemos de nuevo en OK podremos ver que se ha creado la nueva clave para dicha tumba:
Ahora, será necesario bloquear la tumba con la nueva llave creada, para ello ejecutamos:
tomb lock TombSolvetic1.tomb -k TombSolvetic1.tomb.key
Al ejecutar esto será necesario ingresar la contraseña creada:
Pulsamos en OK y veremos que se ha vinculado correctamente la contraseña:
En este punto Tomb ha sido configurado y podremos hacer uso de la tumba creada. Para recordar dónde fue almacenada la clave podremos ejecutar la siguiente línea:
tomb open TombSolvetic1.tomb -k /ruta/TombSolvetic1.tomb.key
Al ejecutar este comando será necesario ingresar de nuevo la contraseña:
Pulsamos en OK y veremos que se ha abierto la tumba creada:
Podremos acceder al explorador de Ubuntu y allí veremos montada la tumba donde podremos acceder y almacenar la información a proteger:
Para cerrar la tumba basta con ejecutar lo siguiente:
tomb close
Como vemos, el mensaje es muy satisfactorio, “Nuestros huesos pueden descansar en paz”:
Si deseamos forzar el cierre de todas las tumbas será necesario ejecutar lo siguiente:
tomb slam all
4. Usar Tomb en entorno gráfico en Ubuntu 17.10
Como hemos instalado el entorno grafico de Tomb podremos acceder a él directamente desde el buscador de Ubuntu 17 ingresando la palabra tomb:
Al seleccionar la utilidad veremos lo siguiente:
Allí podremos seleccionar la tarea a ejecutar, en este caso para crear una nueva tumba seleccionamos dig y pulsamos en Aceptar, veremos la siguiente ventana donde seleccionaremos la ruta donde será almacenada la tumba y en la parte superior ingresaremos el nombre de la misma:
Una vez definido esto pulsamos en Aceptar y a continuación definimos el tamaño de esta tumba:
Asignamos el tamaño y pulsamos en Aceptar y veremos un mensaje de confirmación de la creación de esta nueva tumba. Para cerrar la tumba pulsamos en la opción Forge.
- Tecnología de la información - Técnicas de seguridad - Algoritmos de encriptación:
ISO / IEC 18033-1: 2015 - Parte 1: General ISO / IEC 18033-3: 2010 - Parte 3: Cifrado de bloques
- Tecnología de la información - Técnicas de seguridad - Gestión clave
ISO / CEI 11770-1: 2010 - Parte 1: Marco ISO / CEI 11770-2: 2008 - Parte 2: Mecanismos que utilizan técnicas simétricas
Podemos ver como una gran solución de seguridad es usar Tomb para todo el cifrado con altos niveles de encriptación en Ubuntu 17 y así estar seguros de nuestros datos.