La seguridad es algo que todos tenemos que tener en cuenta y a lo que todos en algún momento tendremos que hacer frente. Mientras que saturamos nuestros equipos con herramientas que nos 'defienden' de ciertas amenazas (antivirus para los virus, anti-spywares para los spywares, antitroyanos... bueno se entiende...), hay algo mucho más fácil, y es securizar nuestra red (sin olvidarnos luego de nuestros equipos, claro está). Para esto existen varias distribuciones Linux que nos proporcionan unas suites completas de aplicaciones para satisfacer nuestra necesidad de seguridad. Uno de los más conocidos (y eso que es bastante reciente) es Kali Linux (sucesor de Backtrack, ya que casi el equipo de desarrollo completo de Backtrack está tras su creación y mantenimiento). Existen otros como BackBox, Deft, Bugtraq, Ronin, Matriux Krypton, Pentoo, Caine, etc... Unos son más ligeros, otro están más orientados a la detección de vulnerabilidades web, algunos son más eficaces es sus versiones portables, pero nos centraremos con el que consideramos más equilibrado en muchos de estos aspectos. Kali Linux nos permitirá securizar nuestra red, además de ejecutar análisis forenses a nuestras máquinas o equipos comprometidos. Una alternativa más segura, es dejarlo instalado permanentemente en un equipo y mantenerlo 'vigilando' la red y los equipos de esta.

Pero hoy, vamos a securizar lo máximo posible sin perder privilegios de navegación o acceso a webs, mediante Kali Linux, sus herramientas y una aplicación extra ( Metasploit ). Usaremos primeramente esta distribución para pasar por un conjunto de medidas, analizar y comprobar la seguridad de nuestra red local . Sólo veremos un subconjunto de entre la infinidad de herramientas disponibles en Kali Linux, pero aprenderemos algunas técnicas básicas para supervisar los sistemas y poner a prueba sus defensas.

Indicaremos en unos sencillos pasos el camino al principio de la seguridad :

Paso 01.

Descargar e Instalar. El primer paso como es obvio, es hacernos con una copia de Kali Linux para poder operar con ella. Más abajo, al final del proceso encontraréis los enlaces a los recursos utilizados. En la página de descarga se nos proporcionan los enlaces de descarga en varios formatos y para distintas arquitecturas. Lo más común es descargar una ISO y, o bien grabarlo en un CD de la forma tradicional, o lo que recomendamos, que es crear una unidad USB Booteable (USB de arranque).

Paso 02.

La detección del hardware. Un extra que nos ofrece Kali Linux, es la posibilidad de comprobar nuestro hardware antes siquiera de iniciar el sistema. Lo cual es recomendable para ver que trabajaremos con un hardware libre de problemas como sectores defectuosos en disco, memoria RAM dañada, etc...

Paso 03.

Netdiscover. Una de las primeras cosas que deberemos hacer una vez iniciemos nuestro sistema de 'pentesting', es conocer quién o qué está en nuestra red. Netdiscover nos ofrece una herramienta para hacer la asignación de direcciones IP de nuestra red, que es especialmente útil en las redes WI-FI que no usan DHCP.

Paso 04.

Flujo TCP. Una vez que tengamos la lista de hosts (equipos o personas en la red), nos interesará ver qué tipo de comunicación se está llevando a cabo sobre nuestra conexión. Tcpfl Ow supervisará el tráfico que esté circulando por la red, y lo reconstruirá para poder analizarlo para así poder ver en qué se usa nuestro ancho de banda.

Paso 05.

Intrace. Una vez que sepas qué tipo de conversaciones se están produciendo en la red, podemos querer saber lo que enruta las conversaciones que se llevan a cabo. Intrace nos da una lista de enrutamientos para observar las trayectorias de los paquetes fl monitorizados de nuestra red.

Paso 06.

Zenmap. Después de identificar los hosts de la red, tendremos que ver qué puertos tienen abiertos y lo que sus sistemas están ejecutando mediante ellos. La aplicación indicada para esto es Zenmap, que es el front-end (o interfaz de usuario) que normalmente se usa para Nmap.

Paso 07.

Sqlninja.

Ahora tenemos que empezar a meternos en cuestiones de seguridad. Microsoft es un buen saco de boxeo cuando se trata de seguridad, y SQL Server no iba a ser la excepción. La mayoría de las redes corporativas usan software de Microsoft, lo único que necesitamos saber es cómo están configuradas, para que Sqlninja pueda usar técnicas como SQL Injection (Inyección SQL), para vulnerar nuestro sistema y hacerse con nuestros datos.

Paso 08.

Acccheck. Otro de los servicios que viene siendo un punto débil en nuestros sistemas es el sistema de compartición de archivos SMB (Samba). Acccheck se utiliza para ejecutar un ataque por diccionario de contraseñas y tratar de romper la autorización de Windows. Los diccionarios de contraseñas son básicamente archivos de texto con cientos, miles o millones de palabras o combinaciones de estas con la idea de que algún programa vaya usándolas una y otra vez en formularios de registro, logueo, acceso de privilegios hasta dar con una combinación adecuada y conseguir un acceso no autorizado. Los más  'completos' llegan a pesar sobre unos 20Gb; y son fácilmente localizables en internet.

Paso 09.

Modo Forense. Si tras lanzar estos ataques a su propia red, considera que puede haber algún equipo comprometido, debemos ser cuidadosos y meticulosos al analizarlo. Kali Linux nos proporciona multitud de herramientas para el análisis forense de redes y equipos, además de que al arrancar Kali Linux, deja todas las unidades locales sin montar ni tocar, así podemos realizar todas las pruebas que necesitemos llevar a cabo sin cambiar el estado del sistema.

Paso 10.

Descifrado de contraseñas Offline. Una de las cosas que deberemos investigar es si la máquina ha sido comprometida debido a contraseñas de seguridad débiles. Existen varias herramientas que pueden utilizarse para tratar de romper hashes de contraseñas, como por ejemplo 'John the Ripper', que utiliza ataques por diccionario para dar con las contraseñas objetivo.

Paso 11.

Guymager. En algunos casos, la máquina a analizar puede ser demasiado importante para dejarla fuera de la red, incluso aunque fuera por unas horas. Por lo que la única opción sería clonar el disco, o hacer una imagen de la unidad para investigarla más afondo, antes de restaurarla en el equipo. Guymager es una herramienta implementada en Kali Linux que tiene esto que indicamos como propósito.

Paso 12.

Chkrootkit. Una de las comprobaciones que deberemos hacer será comprobar si tenemos instalado un rootkit (proporcionaría una entrada a 'los malos' con privilegios totales sobre la máquina). Chkrootkit nos informará si existen estos rootkits en nuestro equipo que traten de hacerse cargo del control del mismo.

Paso 13.

Ingeniería Social. Sin duda, uno de los aspectos de la seguridad que más descuidamos todos. Por más que securicemos un equipo, o una red, de nada nos servirá si los usuarios no mantienen el nivel de seguridad proporcionado. Kali Linux proporciona herramientas que pondrán a prueba nuestra seguridad en este campo de la ingeniería socia, con ataques de phishing (envío de mails con identidades suplantadas, o con enlaces a web-apps que comprometan nuestra red o equipos), por ejemplo.

Paso 14.

Aprovechar las bases de datos. Además de comprobar el aspecto social, también es necesario para poner a prueba la seguridad de las máquinas por si encontrásemos algún 'agujero'. Para ello haremos uso de exploits conocidos, que podremos encontrar en una base de datos online, donde se registran y actualizan estas vulnerabilidades.

Paso 15.

Metasploit. La herramienta habitual para comprobar la accesibilidad de un sistema es Metasploit, que proporciona un parco completo para la elaboración de vectores de ataque completos. Estos incluyen intrusiones, compromisos de seguridad y canales para permitir el acceso remoto a un sistema infectado. En Kali Linux hay elementos en el menú que nos permitirán iniciar el servidor Metasploit. También encontramos una entrada para ejecutar un volcado de registros de diagnóstico, en caso de que tengamos algún problema con la conexión. Metasploit se ejecuta con un modelo cliente-servidor, así que una vez se inicia el servidor, tendremos que conectar con el cliente con el fin de lanzar algunos exploits contra la máquina indicada.

Paso 16.

Armitage. Una de las interfaces gráficas disponibles para lo anterior es Armitage. Si ya hemos iniciado el servidor Metasploit, podemos utilizar Armitage para conectar al servidor. En caso de que no hayamos ejecutado aun el inicio de un servidor, Armitage nos ofrece la posibilidad de poner en marcha un nuevo server de Metasploit para poder lanzar estos exploits e intentar descubrir vulnerabilidades de nuestro equipo.

Paso 17.

p0f. Una vez hayamos comprobado que tanto equipos como red son seguros, necesitaremos mantener el nivel de seguridad logrado. P0f monitoreará pasivamente la red para ver qué máquinas y qué sistema operativo se ejecutan, y estos no sabrán que p0f está ahí 'escuchando'.

Paso 18.

Exploits contra el Hardware. Kali Linux, también nos ofrece un conjunto de herramientas para probar vulnerabilidades en otro tipo de hardware, como pueden ser dispositivos bluetooth, Android o Arduino.

Paso 19.

DDMS. DDMS es un monitor de depuración que proporciona acceso y control de bajo nivel a máquinas Android. Sólo tendremos que conectar el dispositivo al puerto USB, iniciar DDMS y ver lo que está sucediendo en el sistema Android conectado. Para esto necesitaremos tener el SDK instalado antes de comenzar.

Paso 20.

Exploits de Android - apktool. Una vez conectado el dispositivo Android, podemos ejecutar varios exploits conocidos para obtener un acceso como root (administrador con permisos totales). Estos variarán en función del tipo de hardware sobre el que se ejecuta el sistema Android. Algunos de estos exploits necesitarán apktool para poder abrir y editar los archivos .APK del dispositivo.

Paso 21.

Bluetooth. Aquí también tenemos otra posible vía de acceso a una máquina. El protocolo Bluetooth se utiliza para ratones, teclados y otros hardware inalámbricos, pero nunca se pensó firmemente en la seguridad de este protocolo. Kali Linux nos ofrece varias aplicaciones para poder ver las señales Bluetooth que tenemos alrededor y la información que llevan.

Paso 22.

Instalar en ARM. Los desarrolladores de Kali, han provisto a esta distribución de una compatibilidad muy buena con arquitecturas de procesadores ARM. Donde también se encontrarán guías de cómo instalarlo en dispositivos Android, como por ejemplo un Galaxy Note 10.1, con imágenes de instalación que acompañan el tutorial.

Como conclusión, esperamos que siguiendo estos pasos que hemos descrito, podáis ser conscientes de las necesidades que pudieseis tener en cuanto a seguridad de equipos y redes se refiere. Habéis podido comprobar que esto es prácticamente un índice que sugiere el camino a seguir, y que las herramientas de las que hemos hablado no son más que la punta del iceberg de todo lo que alberga Kali Linux, así que os animamos a descubrir todo lo que puede llegar a ofrecer, siempre orientándonos a mejorar la seguridad de nuestras redes y equipos.

Recursos:

Web de desarrollo de Kali Linux.

Metasploit .