¿Qué es KaliLinux?


Kali Linux (anteriormente conocido como BackTrack Linux ) es una distribución de Linux basada en Debian de código abierto destinada a pruebas de penetración avanzadas y auditorías de seguridad. Kali Linux contiene varios cientos de herramientas destinadas a diversas tareas de seguridad de la información, como pruebas de penetración, investigación de seguridad, informática forense e ingeniería inversa. Kali Linux es una solución multiplataforma, accesible y disponible gratuitamente para profesionales y aficionados a la seguridad de la información.

Kali Linux se lanzó el 13 de marzo de 2013 como una reconstrucción completa y completa de BackTrack Linux , adhiriéndose completamente a los estándares de desarrollo de Debian .

Características de KaliLinux

  • Más de 600 herramientas de prueba de penetración incluidas: después de revisar todas las herramientas que se incluyeron en BackTrack, eliminamos una gran cantidad de herramientas que simplemente no funcionaban o que duplicaban otras herramientas que brindaban la misma funcionalidad o una similar. Los detalles sobre lo que se incluye están en el sitio de Kali Tools .
  • Gratis y siempre lo será: Kali Linux, como BackTrack, es completamente gratuito y siempre lo será. Nunca tendrá que pagar por Kali Linux.
  • Árbol Git de código abierto: estan comprometidos con el modelo de desarrollo de código abierto y nuestro árbol de desarrollo está disponible para que todos lo vean. Todo el código fuente que se incluye en Kali Linux está disponible para cualquier persona que desee modificar o reconstruir paquetes para satisfacer sus necesidades específicas.
  • Cumple con FHS: Kali se adhiere al estándar de jerarquía del sistema de archivos , lo que permite a los usuarios de Linux ubicar fácilmente archivos binarios, archivos de soporte, bibliotecas, etc.
  • Compatibilidad con una amplia variedad de dispositivos inalámbricos: un punto de conflicto habitual con las distribuciones de Linux ha sido la compatibilidad con las interfaces inalámbricas. Han creado Kali Linux para admitir tantos dispositivos inalámbricos como sea posible, lo que le permite ejecutarse correctamente en una amplia variedad de hardware y hacerlo compatible con numerosos dispositivos USB y otros dispositivos inalámbricos.
  • Kernel personalizado, parcheado para inyección: como evaluadores de penetración, el equipo de desarrollo a menudo necesita realizar evaluaciones inalámbricas, por lo que nuestro kernel incluye los parches de inyección más recientes.
  • Desarrollado en un entorno seguro: el equipo de Kali Linux está formado por un pequeño grupo de personas que son las únicas en las que se confía para enviar paquetes e interactuar con los repositorios, todo lo cual se realiza mediante múltiples protocolos seguros.
  • Paquetes y repositorios firmados por GPG: cada paquete en Kali Linux está firmado por cada desarrollador individual que lo creó y comprometió, y los repositorios posteriormente también firman los paquetes.
  • Soporte multilingüe: aunque las herramientas de penetración tienden a estar escritas en inglés, nos hemos asegurado de que Kali incluya un verdadero soporte multilingüe, lo que permite que más usuarios operen en su idioma nativo y localicen las herramientas que necesitan para el trabajo.
  • Completamente personalizable: entendemos perfectamente que no todo el mundo estará de acuerdo con nuestras decisiones de diseño, por lo que hemos hecho que sea lo más fácil posible para nuestros usuarios más aventureros personalizar Kali Linux a su gusto, hasta el núcleo.
  • Compatibilidad con ARMEL y ARMHF: dado que los sistemas de placa única basados ​​en ARM, como Raspberry Pi y BeagleBone Black , entre otros, son cada vez más frecuentes y económicos, sus autores saben que la compatibilidad con ARM de Kali tendría que ser lo más robusta posible. con instalaciones completamente operativas para los sistemas ARMEL y ARMHF . Kali Linux está disponible en una amplia gama de dispositivos ARM y tiene repositorios ARM integrados con la distribución principal, por lo que las herramientas para ARM se actualizan junto con el resto de la distribución.

¿Qué es una distribución de prueba de penetración? Como cuenta la leyenda, hace años hubo una prueba de penetración en un entorno aislado en el que el equipo de evaluación no pudo traer ninguna computadora o tener acceso a la red dentro o fuera del entorno de destino. Para hacer el trabajo, nació la primera distribución de prueba de penetración. Era un Live CD de arranque configurado con varias herramientas necesarias para hacer el trabajo, y después de que se completó la evaluación, el Live CD se compartió en línea y se volvió muy popular.

Kali Linux tiene un linaje directo de esta distribución original , que se ejecuta a través de BackTrack Linux , y ahora es Kali Linux.

¿Cuáles son los ingredientes de una gran distribución de pruebas de penetración? Lo que se juzga una distribución de pruebas de penetración ha cambiado a lo largo de los años. Originalmente, era solo cuántas herramientas contenía. Luego, ¿tenía administración de paquetes y con qué frecuencia se actualizaban? A medida que hemos madurado, también lo han hecho las funciones que debemos proporcionar. La verdadera indicación de una gran distribución de Penetration Testing es la selección de funciones útiles y relevantes que ofrece a los profesionales de la seguridad. ¿De qué tipo de características estamos hablando? ¡Nos alegra que hayas preguntado! Hemos hecho una breve lista de algunas de estas características de Kali Linux y las hemos vinculado a sus respectivas fuentes.

Características especiales de Kali Linux

  • Personalización completa de Kali ISO . Con el uso de metapaquetes optimizados para conjuntos de necesidades específicas de un profesional de seguridad y un proceso de personalización ISO altamente accesible , siempre es fácil generar una versión optimizada de Kali para sus necesidades específicas. Kali Linux está fuertemente integrado con live-build , lo que permite una flexibilidad infinita en la personalización y adaptación de cada aspecto de sus imágenes ISO de Kali Linux. Esto se puede mostrar con las recetas de creación de ejemplos básicos , a la receta Kali ISO of doom, que muestra los tipos y la complejidad de las personalizaciones posibles (cree una imagen de Kali de puente de red, conexión automática de VPN inversa e instalación automática) para la puerta trasera de hardware perfecta.
  • Arranque USB en vivo . Esto le permite colocar Kali en un dispositivo USB y arrancar sin tocar el sistema operativo host (¡perfecto también para cualquier trabajo forense!) . Con volúmenes de persistencia opcionales, puede optar por elegir qué sistema de archivos usar cuando se inicia Kali, lo que permite guardar archivos entre sesiones, creando múltiples perfiles. Cada volumen de persistencia se puede encriptar , característica esencial necesaria en nuestra industria. Si eso no es suficiente, también tenemos la opción nuclear LUKS , que le permite controlar rápidamente la destrucción de datos.
  • Kali encubierto . ¿Usas Kali en un entorno en el que no quieres llamar la atención? Kali Undercover es perfecto para no sobresalir entre la multitud al combinarse con un sistema operativo familiar que la mayoría de la gente reconoce para detener a los que practican surf en el hombro .
  • Win-KeX . ¿Usa Kali en WSL? Esto proporciona una experiencia de escritorio de Kali para el subsistema de Windows para Linux, con ventanas integradas, uso compartido del portapapeles, soporte de audio y más.
  • Kali Net Hunter . Kali en su teléfono (Android). Esto cubre varios elementos, como una superposición de ROM para varios dispositivos, la aplicación NetHunter y la tienda de aplicaciones NetHunter . Además de esto, también arranca en un « escritorio completo » usando chroot y contenedores, así como « Kali NetHunter Desktop Experience (KeX) «.
  • Kali por todas partes . Una versión de Kali siempre está cerca de ti sin importar dónde la necesites. Déjalo ser; ARM, Bare Metal, Nube (AWS, Azure), Contenedores (Docker, LXD), Máquinas virtuales (VirtualBox, VMware), WSL, etc., están disponibles.
  • Kali BRAZO . Admite más de una docena de dispositivos ARM diferentes y hardware común como Raspberry Pi, Odroid, Beaglebone y más. Ofrecemos imágenes pregeneradas, listas para usar, así como scripts de compilación para producir más. Estamos muy activos en el campo de ARM y constantemente agregamos hardware nuevo e interesante a nuestro repertorio.
  • El estándar de la industria . Kali Linux es la plataforma de prueba de penetración de código abierto estándar indiscutible de la industria .

Instalando KaliLinux

Instalar Kali Linux (arranque único) en su computadora es un proceso fácil. Esta guía cubrirá la instalación básica (que se puede realizar en una máquina virtual virtual o invitada ), con la opción de cifrar la partición. En ocasiones, es posible que tenga datos confidenciales que preferiría cifrar mediante Full Disk Encryption (FDE). Durante el proceso de configuración, puede iniciar una instalación cifrada con LVM en el disco duro o en las unidades USB.

Primero, necesitará hardware de computadora compatible. Kali Linux es compatible con las plataformas amd64 (x86_64/64-bit) e i386 (x86/32-bit). Siempre que sea posible, recomendamos utilizar las imágenes amd64 . Los requisitos de hardware son mínimos, como se indica en la sección a continuación, aunque un mejor hardware, naturalmente, proporcionará un mejor rendimiento. Debería poder usar Kali Linux en hardware más nuevo con UEFI y sistemas más antiguos con BIOS.

Nuestras imágenes i386 utilizan un kernel PAE de forma predeterminada , por lo que puede ejecutarlas en sistemas con más de 4 GB de RAM.

En nuestro ejemplo, instalaremos Kali Linux en una máquina virtual invitada nueva, sin ningún sistema operativo existente preinstalado. Explicaremos otros escenarios posibles a lo largo de la guía.

Requisitos del sistema

Los requisitos de instalación de Kali Linux variarán según lo que desee instalar y su configuración. Para los requisitos del sistema:

  • En el extremo inferior, puede configurar Kali Linux como un servidor Secure Shell (SSH) básico sin escritorio, utilizando tan solo 128 MB de RAM (se recomiendan 512 MB) y 2 GB de espacio en disco .
  • En el extremo superior, si opta por instalar el escritorio Xfce4 predeterminado y el kali-linux-default metapaquete , realmente debería aspirar a al menos 2 GB de RAM y 20 GB de espacio en disco .
    • Cuando se usan aplicaciones que consumen muchos recursos, como Burp Suite, recomiendan al menos 8 GB de RAM (¡y más si se trata de una aplicación web grande!) o usar programas simultáneos al mismo tiempo.

Requisitos previos de instalación

Esta guía también hará las siguientes suposiciones al instalar Kali Linux:

  • Usando la imagen del instalador amd64.
  • Unidad de CD/DVD/soporte de arranque USB.
  • Disco único para instalar.
  • Conectado a una red (con DHCP y DNS habilitados) que tiene acceso a Internet de salida.

Borraremos todos los datos existentes en el disco duro, así que haga una copia de seguridad de cualquier información importante en el dispositivo en un medio externo.

Preparación para la instalación

  1. Descarga Kali Linux Recomendamos la imagen marcada como Instalador ).
  2. Grabe la imagen ISO de Kali Linux en un DVD o una imagen de Kali Linux Live en una unidad USB . (Si no puede, consulte Kali Linux Network Install ).
  3. Haga una copia de seguridad de cualquier información importante del dispositivo en un medio externo.
  4. Asegúrese de que su computadora esté configurada para arrancar desde CD/DVD/USB en su BIOS/UEFI.

Procedimiento de instalación de Kali Linux

Bota

  1. Para comenzar su instalación, inicie con el medio de instalación elegido. Debería ser recibido con la pantalla de inicio de Kali Linux. Elija Instalación gráfica o Instalación (modo de texto). En este ejemplo, elegimos la instalación gráfica.

Si está utilizando la imagen en vivo , verá otro modo, En vivo , que también es la opción de arranque predeterminada.

Idioma

  1. Seleccione su idioma preferido. Esto se usará tanto para el proceso de configuración como una vez que esté usando Kali Linux.

  1. Especifique su ubicación geográfica.

  1. Seleccione la distribución de su teclado.

La red

  1. La configuración ahora sondeará sus interfaces de red, buscará un servicio DHCP y luego le pedirá que ingrese un nombre de host para su sistema. En el siguiente ejemplo, hemos ingresado kali como nuestro nombre de host.

Si no se detecta acceso a la red con el servicio DHCP, es posible que deba configurar manualmente la información de la red o no configurar la red en este momento.

  • Si no hay un servicio DHCP ejecutándose en la red, le pedirá que ingrese manualmente la información de la red después de buscar interfaces de red, o puede omitir.
  • Si Kali Linux no detecta su NIC, debe incluir los controladores cuando se le solicite, o generar un ISO de Kali Linux personalizado con ellos incluidos previamente.
  • Si la configuración detecta múltiples NIC, es posible que le pregunte cuál usar para la instalación.
  • Si la NIC elegida está basada en 802.11, se le pedirá la información de su red inalámbrica antes de que se le solicite un nombre de host.

  1. Opcionalmente, puede proporcionar un nombre de dominio predeterminado para que lo use este sistema (los valores pueden extraerse de DHCP o si hay un sistema operativo preexistente).

Cuentas de usuario

  1. A continuación, cree la cuenta de usuario para el sistema (nombre completo, nombre de usuario y una contraseña segura).

Reloj

  1. A continuación, establezca su zona horaria.

Disco

  1. El instalador probará ahora sus discos y le ofrecerá varias opciones, dependiendo de la configuración.

En nuestra guía, estamos usando un disco limpio, por lo que tenemos cuatro opciones para elegir. Seleccionaremos Guiado: todo el disco , ya que esta es la instalación de arranque único para Kali Linux, por lo que no queremos que se instale ningún otro sistema operativo, por lo que nos complace borrar el disco.

Si hay datos preexistentes en el disco, tendrá una opción adicional (Guiado: use el espacio libre continuo más grande) que el ejemplo a continuación. Esto le indicaría a la configuración que no altere ningún dato existente, lo cual es perfecto para el arranque dual en otro sistema operativo. Como este no es el caso en este ejemplo, no es visible.

Los usuarios experimentados pueden usar el método de partición «Manual» para opciones de configuración más granulares, que se tratan más en nuestra guía BTRFS .

Si desea encriptar Kali Linux, puede habilitar el Cifrado de disco completo (FDE), seleccionando Guiado: usar todo el disco y configurar LVM encriptado . Cuando se selecciona, más adelante en la configuración (no en esta guía) se le solicita que ingrese una contraseña (dos veces). Deberá ingresar esta contraseña cada vez que inicie Kali Linux.


  1. Seleccione el disco a particionar.

  1. Dependiendo de sus necesidades, puede optar por mantener todos sus archivos en una sola partición, la predeterminada, o tener particiones separadas para uno o más de los directorios de nivel superior.

Si no está seguro de lo que quiere, quiere » Todos los archivos en una partición «.


  1. A continuación, tendrá una última oportunidad de revisar la configuración de su disco antes de que el instalador realice cambios irreversibles. Después de hacer clic en Continuar , el instalador comenzará a funcionar y tendrá una instalación casi terminada.

LVM cifrado

Si está habilitado en el paso anterior, Kali Linux ahora comenzará a realizar un borrado seguro del disco duro, antes de pedirle una contraseña de LVM.

Asegúrese de usar una contraseña segura; de lo contrario, tendrá que aceptar la advertencia sobre una frase de contraseña débil.

Este borrado puede tardar «un rato» (horas) según el tamaño y la velocidad de la unidad.
Si desea arriesgarse, puede omitirlo.

Información de representación

  1. Kali Linux utiliza un repositorio central para distribuir aplicaciones. Deberá ingresar cualquier información de proxy apropiada según sea necesario.

Metapaquetes

Si no se configuró el acceso a la red, querrá continuar con la configuración cuando se le solicite.

Si está utilizando la imagen en vivo , no tendrá la siguiente etapa.

  1. A continuación, puede seleccionar qué metapaquetes desea instalar. Las selecciones predeterminadas instalarán un sistema Kali Linux estándar y realmente no tiene que cambiar nada aquí.

Consulte esta guía si prefiere cambiar las selecciones predeterminadas.

Información de arranque

  1. A continuación, confirme para instalar el cargador de arranque GRUB.

  1. Seleccione el disco duro para instalar el gestor de arranque GRUB ( no selecciona ninguna unidad de forma predeterminada ).

Reiniciar

  1. Finalmente, haga clic en Continuar para reiniciar en su nueva instalación de Kali Linux.

Posterior a la instalación

Ahora que ha completado la instalación de Kali Linux, es hora de personalizar su sistema.

Instalación de Flatpak en Kali Linux

Instrucciones de instalación

En Kali Linux, flatpakse puede instalar a través de:

[email protected]:~$ sudo apt update
[email protected]:~$
[email protected]:~$ sudo apt install -y flatpak
[email protected]:~$
[email protected]:~$ sudo flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo

tienda de software GUI

También es una buena idea instalar el complemento Flatpak para el software GNOME. Para hacer esto, ejecute:

[email protected]:~$ sudo apt install gnome-software-plugin-flatpak

Ahora puedes instalar nuevas aplicaciones flatpak desde el centro de software.

Soporte de temas

Si desea que las aplicaciones flatpak se vean más consistentes con el sistema, puede obligarlas a usar sus temas locales:

[email protected]:~$ mkdir -p ~/.themes
[email protected]:~$ cp -a /usr/share/themes/* ~/.themes/
[email protected]:~$ sudo flatpak override --filesystem=~/.themes/

Instalación del navegador Tor en Kali Linux

Instrucciones de instalación

Abra la terminal y luego ejecute los siguientes comandos:

[email protected]:~$ sudo apt update
[email protected]:~$
[email protected]:~$ sudo apt install -y tor torbrowser-launcher
[email protected]:~$

Como usuario ejecute el siguiente comando:

[email protected]:~$ torbrowser-launcher

La primera vez descargará e instalará Tor Browser, incluida la verificación de la firma.

La próxima vez se usará para actualizar e iniciar Tor Browser.

Instalación de snapd en Kali Linux

Instrucciones de instalación

En Kali Linux, snapse puede instalar a través de:

[email protected]:~$ sudo apt update
[email protected]:~$
[email protected]:~$ sudo apt install -y snapd
[email protected]:~$

Habilitación y puesta en marcha snapdsnapd.apparmorservicios:

[email protected]:~$ sudo systemctl enable --now snapd apparmor

Cierre sesión y vuelva a iniciarla, o reinicie su sistema, para asegurarse de que las rutas de acceso instantáneo se actualicen correctamente.

Herramientas Kali

Los usuarios tienen algunas áreas donde pueden buscar información sobre una herramienta en Kali.

Información local

El primer lugar donde los usuarios deben buscar es cualquier información local disponible. A través de las páginas de manual y la salida de ayuda, se verán muchos usos de las herramientas. Recuerde simplemente correr man tool-nametool-name --helpcuando no esté seguro de una determinada bandera y debería ser bueno. Sin embargo, ¿qué sucede si no sabe para qué se utiliza una herramienta y no aprende mucho de ninguno de los recursos?

Información en línea

Si las páginas de manual y la salida de ayuda no respondieron a las preguntas, entonces quizás tools.kali sea de ayuda. Con ejemplos de casos de uso, la página de manual/resultado de ayuda y las descripciones de la herramienta, se puede obtener mucha información mirando una herramienta. Además, la página de cada herramienta enlaza con el sitio web original que puede proporcionar información adicional para la herramienta.

Marco Metasploit

De acuerdo con la política de servicios de red de Kali Linux , ningún servicio de red, incluidos los servicios de base de datos, se ejecuta en el arranque de forma predeterminada, por lo que hay un par de pasos que se deben seguir para que Metasploit funcione con soporte de base de datos.

Manera rápida

Puede tener todo en funcionamiento, iniciando el servicio PostgreSQL y configúrelo simplemente haciendo:

[email protected]:~$ sudo msfdb init
[+] Starting database
[+] Creating database user 'msf'
[+] Creating databases 'msf'
[+] Creating databases 'msf_test'
[+] Creating configuration file '/usr/share/metasploit-framework/config/database.yml'
[+] Creating initial database schema
[email protected]:~$

Incluso puede ir un paso más allá haciendo sudo msfdb runy hará lo mismo que el anterior, así como también comenzará msfconsoledespués .

MSFDB

Para ayudar a interactuar con varias partes de la configuración de Metasploit, hay msfdb:

[email protected]:~$ sudo msfdb

Manage the metasploit framework database

  msfdb init     # start and initialize the database
  msfdb reinit   # delete and reinitialize the database
  msfdb delete   # delete database and stop using it
  msfdb start    # start the database
  msfdb stop     # stop the database
  msfdb status   # check service status
  msfdb run      # start the database and run msfconsole

[email protected]:~$

Tenga en cuenta: esta es una versión diferente de msfdbla que se envía con el proyecto predeterminado

Inicie el servicio Kali PostgreSQL

Inicie el servicio Kali PostgreSQL

Metasploit usa PostgreSQL como su base de datos, por lo que debe iniciarse primero:

[email protected]:~$ sudo msfdb start
[+] Starting database
[email protected]:~$

Puede verificar que PostgreSQL se está ejecutando comprobando el resultado ss -anty asegurándose de que el puerto 5432 está escuchando, o usando sudo msfdb status:

[email protected]:~$ sudo msfdb status
● postgresql.service - PostgreSQL RDBMS
     Loaded: loaded (/lib/systemd/system/postgresql.service; disabled; vendor preset: disabled)
     Active: active (exited) since Sun 2021-02-07 02:15:42 EST; 4s ago
    Process: 157089 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
   Main PID: 157089 (code=exited, status=0/SUCCESS)

Feb 07 02:15:42 kali systemd[1]: Starting PostgreSQL RDBMS...
Feb 07 02:15:42 kali systemd[1]: Finished PostgreSQL RDBMS.

COMMAND     PID     USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
postgres 157071 postgres    5u  IPv6 647182      0t0  TCP localhost:5432 (LISTEN)
postgres 157071 postgres    6u  IPv4 647183      0t0  TCP localhost:5432 (LISTEN)


UID          PID    PPID  C STIME TTY      STAT   TIME CMD
postgres  157071       1  1 02:15 ?        Ss     0:00 /usr/lib/postgresql/13/bin/postgres -D /var/lib/postgresql/13/main -c config_file=/etc/postgresql/13/main/postgresql.con

[i] No configuration file found
ka[email protected]:~$

Inicialice la base de datos Metasploit PostgreSQL

Con PostgreSQL funcionando, lo siguiente que necesitamos es crear e inicializar la base de datos msf .

[email protected]:~$ sudo msfdb init
[i] Database already started
[+] Creating database user 'msf'
[+] Creating databases 'msf'
[+] Creating databases 'msf_test'
[+] Creating configuration file '/usr/share/metasploit-framework/config/database.yml'
[+] Creating initial database schema
[email protected]:~$

Inicie msfconsole en Kali

Ahora que el servicio PostgreSQL está en funcionamiento y la base de datos está inicializada, puede iniciar msfconsole y verificar la conectividad de la base de datos con el comando db_status como se muestra a continuación.

[email protected]:~$ msfconsole -q
msf6 >
msf6 > db_status
[*] Connected to msf. Connection type: postgresql.
msf6 >