Capítulo 1. Acerca de Kali Linux
Kali Linux es una distribución de Linux de auditoría de seguridad lista para empresas basada en Debian GNU/Linux. Kali está dirigido a profesionales de seguridad y administradores de TI, lo que les permite realizar pruebas de penetración avanzadas, análisis forenses y auditorías de seguridad.
¿Qué es una distribución de Linux?Aunque se usa comúnmente como un nombre para todo el sistema operativo, Linux es solo el nombre del núcleo, una pieza de software que maneja las interacciones entre el hardware y las aplicaciones del usuario final.
La expresión Distribución de Linux, por otro lado, se refiere a un sistema operativo completo construido sobre el núcleo de Linux, que generalmente incluye un programa de instalación y muchas aplicaciones, que están preinstaladas o empaquetadas de manera fácilmente instalable.
Debian GNU/Linux es una distribución Linux genérica líder, conocida por su calidad y estabilidad. Kali Linux se basa en el trabajo del proyecto Debian y agrega más de 300 paquetes de propósito especial propios, todos relacionados con la seguridad de la información, particularmente el campo de las pruebas de penetración.
Debian es un proyecto de software gratuito que proporciona múltiples versiones de su sistema operativo y, a menudo, usamos el término distribución para referirnos a una versión específica del mismo, por ejemplo, las distribuciones Debian Stable o Debian Testing. Lo mismo también se aplica a Kali Linux: con la distribución Kali Rolling, por ejemplo.
Un Poco de Historia
El proyecto Kali Linux comenzó silenciosamente en 2012, cuando Offensive Security decidió que querían reemplazar su proyecto venerable BackTrack Linux, que se mantenía manualmente, con algo que podría convertirse en un derivado genuino de Debian, completo con toda la infraestructura requerida y técnicas de empaque mejoradas. Se tomó la decisión de construir Kali sobre la distribución de Debian porque es muy conocido por su calidad, estabilidad y amplia selección de software disponible. Es por eso que yo (Raphaël) me involucré en este proyecto, como consultor de Debian.
El primer lanzamiento (versión 1.0) ocurrió un año después, en marzo de 2013, y se basó en Debian 7 "Wheezy", la distribución estable de Debian en ese momento. En ese primer año de desarrollo, empaquetamos cientos de aplicaciones relacionadas con pruebas de pen y construimos la infraestructura. Aunque el número de aplicaciones es significativo, la lista de aplicaciones ha sido meticulosamente seleccionada, eliminando aplicaciones que ya no funcionaban o que las funciones duplicadas ya están disponibles en mejores programas.
Durante los dos años posteriores a la versión 1.0, Kali lanzó muchas actualizaciones incrementales, ampliando el rango de aplicaciones disponibles y mejorando el soporte de hardware, gracias a las nuevas versiones del kernel. Con cierta inversión en integración continua, nos aseguramos de que todos los paquetes importantes se mantuvieran en un estado instalable y que siempre se pudieran crear imágenes en vivo personalizadas (un sello distintivo de la distribución).
En 2015, cuando salió Debian 8 "Jessie", trabajamos para cambiar la base de Kali Linux. Si bien Kali Linux 1.x evitó el GNOME Shell (confiando en GNOME Fallback), en esta versión decidimos adoptarlo y mejorarlo: agregamos algunas extensiones de GNOME Shell para adquirir las funciones que faltan, especialmente el menú Aplicaciones. El resultado de ese trabajo se convirtió en Kali Linux 2.0, publicado en agosto de 2015.
GNOME es el entorno de escritorio predeterminado de Kali Linux
Un entorno de escritorio es una colección de aplicaciones gráficas que comparten un conjunto de herramientas gráficas comunes y que deben usarse juntas en las estaciones de trabajo de los usuarios. Los entornos de escritorio generalmente no se usan en servidores. Por lo general, proporcionan un iniciador de aplicaciones, un administrador de archivos, un navegador web, un cliente de correo electrónico, una suite ofimática, etc.
GNOME es uno de los entornos de escritorio más populares (junto con KDE, Xfce, LXDE, MATE) y está instalado en las principales imágenes ISO proporcionadas por Kali Linux. Si no le gusta GNOME, es fácil crear una imagen ISO personalizada con el entorno de escritorio que elija. Las instrucciones para hacerlo se tratan más adelante en este libro en el Capítulo 9, Advanced Usage
Paralelamente, incrementamos nuestros esfuerzos para garantizar que Kali Linux siempre tenga la última versión de todas las aplicaciones de pentesting. Desafortunadamente, ese objetivo estaba un poco en desacuerdo con el uso de Debian Stable como base para la distribución, ya que nos obligaba a respaldar muchos paquetes. Esto se debe al hecho de que Debian Stable le da prioridad a la estabilidad del software, lo que a menudo causa un gran retraso desde el lanzamiento de una actualización ascendente hasta cuando se integra en la distribución. Dada nuestra inversión en la integración continua, fue un movimiento bastante natural cambiar la base de Kali Linux sobre Debian Testing para que pudiéramos beneficiarnos de la última versión de todos los paquetes de Debian tan pronto como estuvieran disponibles. Debian Testing tiene un ciclo de actualización mucho más agresivo, que es más compatible con la filosofía de Kali Linux.
Este es, en esencia, el concepto de Kali Rolling. Si bien la distribución continua ha estado disponible durante bastante tiempo, Kali 2016.1 fue la primera versión en adoptar oficialmente la naturaleza dinámica de esa distribución: cuando instala la última versión de Kali, su sistema realmente rastrea la distribución Rolling de Kali y todos los días obtiene Nuevas actualizaciones. En el pasado, las versiones de Kali eran instantáneas de la distribución de Debian subyacente con paquetes específicos de Kali inyectados en ella.
Una distribución continua tiene muchos beneficios, pero también conlleva múltiples desafíos, tanto para quienes construimos la distribución como para los usuarios que tienen que hacer frente a un flujo interminable de actualizaciones y, a veces, a cambios incompatibles con versiones anteriores. Este libro tiene como objetivo brindarle los conocimientos necesarios para lidiar con todo lo que pueda encontrar al administrar su instalación de Kali Linux.