En este laboratorio, aprenderá a navegar y utilizar las herramientas de seguridad esenciales en Kali Linux para pruebas de penetración (penetration testing) y tareas de ciberseguridad. Esta sesión práctica le guía a través de la visualización de herramientas preinstaladas con dpkg -l, el inicio del framework Metasploit utilizando msfconsole, la realización de escaneos de red con nmap, el escaneo de servidores web con nikto, el acceso a la documentación de las herramientas a través de las páginas man, y el guardado de las salidas de los comandos en archivos. Diseñado para principiantes, este laboratorio proporciona una introducción paso a paso a Kali Linux dentro de un entorno de contenedor controlado en la VM de LabEx. Cuando abra la terminal, se conectará automáticamente al shell del contenedor de Kali Linux, listo para comenzar a practicar.
Skills Graph
%%%%{init: {'theme':'neutral'}}%%%%
flowchart RL
kali(("Kali")) -.-> kali/KaliGroup(["Kali"])
kali/KaliGroup -.-> kali/term_ops("Kali Terminal")
kali/KaliGroup -.-> kali/file_ctrl("File Management")
kali/KaliGroup -.-> kali/pkg_ops("Package Management")
kali/KaliGroup -.-> kali/nmap_ops("Nmap Tool")
kali/KaliGroup -.-> kali/metasploit_ops("Metasploit Framework")
kali/KaliGroup -.-> kali/vuln_scan("Vulnerability Scanning")
kali/KaliGroup -.-> kali/nikto_ops("Nikto Scanner")
subgraph Lab Skills
kali/term_ops -.-> lab-552192{{"Explorando las Herramientas de Seguridad de Kali"}}
kali/file_ctrl -.-> lab-552192{{"Explorando las Herramientas de Seguridad de Kali"}}
kali/pkg_ops -.-> lab-552192{{"Explorando las Herramientas de Seguridad de Kali"}}
kali/nmap_ops -.-> lab-552192{{"Explorando las Herramientas de Seguridad de Kali"}}
kali/metasploit_ops -.-> lab-552192{{"Explorando las Herramientas de Seguridad de Kali"}}
kali/vuln_scan -.-> lab-552192{{"Explorando las Herramientas de Seguridad de Kali"}}
kali/nikto_ops -.-> lab-552192{{"Explorando las Herramientas de Seguridad de Kali"}}
end
Visualización de Herramientas Preinstaladas con dpkg -l
En este primer paso, aprenderá a visualizar las herramientas y paquetes preinstalados en su sistema Kali Linux utilizando el comando dpkg -l. Esta es una habilidad básica pero esencial para comprender qué software está disponible para su uso en pruebas de penetración (penetration testing) y administración de sistemas.
Cuando abra la terminal en el entorno de la VM de LabEx, se conectará automáticamente al shell del contenedor de Kali Linux. No es necesario iniciar manualmente el contenedor o ingresar al shell; el entorno ya está configurado para usted.
Comencemos ejecutando el comando para listar todos los paquetes instalados. Escriba el siguiente comando en la terminal y presione Enter:
dpkg -l
Este comando muestra una lista detallada de todos los paquetes instalados, incluidos sus nombres, versiones, arquitecturas y breves descripciones.
Salida Esperada (ejemplo, la salida real puede variar):
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-==============================-====================-============-========================================================
ii adduser 3.118 all add and remove users and groups
ii apt 2.2.4 amd64 commandline package manager
ii base-files 11.1+deb11u7 amd64 Debian base system miscellaneous files
...
Esta salida muestra el estado de cada paquete (ii significa instalado), junto con otros detalles. Dado que la lista es larga, se desplazará por la terminal. Puede usar las teclas de flecha arriba y abajo o la rueda del mouse para navegar a través de ella.
Para que la salida sea más manejable, puede filtrarla para buscar herramientas específicas. Por ejemplo, para encontrar paquetes relacionados con apt, escriba el siguiente comando y presione Enter:
dpkg -l | grep apt
Salida Esperada (ejemplo, la salida real puede variar):
ii apt 2.2.4 amd64 commandline package manager
Esto filtra la lista para mostrar solo los paquetes con apt en su nombre o descripción. Esta técnica le ayuda a localizar rápidamente las herramientas que utilizará en los pasos posteriores. Comprender qué herramientas están disponibles en su sistema es un paso fundamental antes de sumergirse en tareas de seguridad específicas.
Instalación e Inicio de Metasploit con msfconsole
Ahora que ha visto las herramientas disponibles en Kali Linux, pasemos a iniciar uno de los frameworks de pruebas de penetración (penetration testing) más potentes, Metasploit, utilizando el comando msfconsole. Este paso se basa en su comprensión de las herramientas del sistema y le presenta una plataforma clave para las pruebas de seguridad.
Metasploit es un framework utilizado para desarrollar, probar y ejecutar exploits contra sistemas objetivo. El msfconsole es su interfaz de línea de comandos, que le permite interactuar con el framework, configurar ajustes y lanzar varias tareas de seguridad.
Primero, asegúrese de que Metasploit esté instalado actualizando la lista de paquetes e instalando el paquete necesario. Escriba los siguientes comandos en la terminal del contenedor de Kali Linux, presionando Enter después de cada uno:
apt update
apt install -y metasploit-framework
Estos comandos actualizan la lista de paquetes e instalan Metasploit si aún no está presente. Espere a que se complete la instalación; puede tardar unos minutos dependiendo del sistema.
Una vez instalado, inicie la consola de Metasploit escribiendo el siguiente comando y presionando Enter:
msfconsole
La primera vez que ejecute este comando, puede tardar un momento en inicializarse, ya que configura la base de datos y carga los módulos. Sea paciente durante este proceso.
Salida Esperada (ejemplo, la salida real puede variar):
Metasploit Framework
...
msf6 >
El prompt msf6 > indica que ahora está dentro de la consola de Metasploit, listo para interactuar con el framework. El número (por ejemplo, 6) representa la versión de Metasploit.
Por ahora, no necesita realizar ninguna tarea específica en Metasploit. Salga de la consola escribiendo el siguiente comando en el prompt msf6 > y presionando Enter:
exit
Esto le devuelve al prompt de terminal estándar. Iniciar y salir de msfconsole le familiariza con el acceso a esta herramienta, que es crucial para muchas actividades de pruebas de penetración (penetration testing) que explorará en el futuro.
Instalación y Ejecución de un Escaneo Básico con Nmap
Después de haber iniciado Metasploit, ahora centrémonos en el escaneo de redes utilizando nmap, una herramienta versátil para el descubrimiento de redes y la auditoría de seguridad. Este paso le introduce a la identificación de puertos y servicios abiertos en un sistema, una habilidad crítica en las pruebas de penetración (penetration testing).
nmap, abreviatura de Network Mapper, se utiliza para descubrir hosts y servicios en una red mediante el envío de paquetes y el análisis de las respuestas. Ayuda a identificar posibles vulnerabilidades al mostrar lo que es accesible en un sistema objetivo.
Primero, asegúrese de que nmap esté instalado en su contenedor de Kali Linux. Escriba el siguiente comando en la terminal y presione Enter para actualizar la lista de paquetes e instalar nmap:
apt install -y nmap
Espere a que se complete la instalación; debería tomar solo unos segundos. Una vez instalado, está listo para realizar un escaneo básico. Dado que escanear sistemas externos sin permiso no es ético, escanearemos localhost (su propio contenedor) como un objetivo seguro.
Ejecutemos un servidor web básico en el contenedor.
apt install -y apache2
service apache2 start
Escriba el siguiente comando y presione Enter:
nmap localhost
Este comando realiza un escaneo predeterminado para detectar puertos y servicios abiertos en su sistema local.
Salida Esperada (ejemplo, la salida real puede variar):
Starting Nmap 7.91 ( https://nmap.org ) at ...
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00010s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
80/tcp open http
...
Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds
En esta salida, Host is up confirma que el objetivo es alcanzable. La tabla enumera los puertos abiertos (como 80/tcp para HTTP), su estado (open significa accesible) y el servicio asociado. Esta información es vital para comprender qué servicios se están ejecutando en un sistema. Al escanear localhost, ha practicado el uso de nmap de forma segura, preparándolo para tareas de reconocimiento de red más avanzadas en los pasos futuros.
Instalación y Escaneo con Nikto para Vulnerabilidades Web
Ampliando sus habilidades de escaneo de redes con nmap, este paso le presenta nikto, una herramienta para escanear servidores web e identificar vulnerabilidades y configuraciones erróneas. Esta es una parte esencial de las pruebas de seguridad web (web security testing).
nikto es una herramienta de código abierto (open-source) que comprueba los servidores web en busca de problemas conocidos, como software obsoleto, archivos inseguros y otros posibles fallos de seguridad. Es ampliamente utilizado por profesionales de la seguridad para evaluar la seguridad de las aplicaciones web.
Primero, asegúrese de que nikto esté instalado en su contenedor de Kali Linux. Escriba el siguiente comando en la terminal y presione Enter para instalarlo:
apt install -y nikto
Espere a que se complete la instalación; debería tomar solo unos segundos. Una vez instalado, escaneará localhost como un objetivo seguro para demostrar la funcionalidad de nikto. Si no se está ejecutando ningún servidor web en localhost, la herramienta aún mostrará cómo intenta conectarse, lo cual es valioso para el aprendizaje. Escriba el siguiente comando y presione Enter:
nikto -h localhost
La opción -h especifica el host a escanear, en este caso, localhost, apuntando al puerto predeterminado del servidor web (generalmente 80).
Salida Esperada (ejemplo, la salida real puede variar):
Esta salida muestra a nikto intentando conectarse a un servidor web en localhost. Si no se está ejecutando ningún servidor, informa de la imposibilidad de conectarse, como se muestra arriba. Si un servidor estuviera activo, enumeraría posibles vulnerabilidades o configuraciones erróneas. Este paso le ayuda a comprender cómo utilizar nikto para el escaneo de vulnerabilidades web (web vulnerability scanning), una habilidad clave para identificar debilidades de seguridad en las aplicaciones web.
Acceder a la Documentación de Herramientas con las Páginas man
Ahora que ha utilizado herramientas como nmap y nikto, es importante saber cómo acceder a su documentación para seguir aprendiendo. En este paso, aprenderá a utilizar las páginas man para explorar información detallada sobre comandos y herramientas en Kali Linux.
Las páginas man, abreviatura de manual pages (páginas de manual), son guías completas para la mayoría de las herramientas y comandos de Linux. Proporcionan descripciones detalladas, opciones, ejemplos e instrucciones de uso, lo que las hace invaluables para comprender cómo utilizar una herramienta de manera efectiva.
Instale man si aún no está instalado.
apt install -y man
Accedamos a la página man para nmap como ejemplo. Escriba el siguiente comando en la terminal y presione Enter:
man nmap
Esto abre la página del manual para nmap en una interfaz de paginación, probablemente less, donde puede leer documentación detallada.
Salida Esperada (ejemplo, la salida real puede variar):
NMAP(1) Nmap Reference Guide NMAP(1)
NAME
nmap - Network exploration tool and security / port scanner
SYNOPSIS
nmap [Scan Type...] [Options] {target specification}
DESCRIPTION
Nmap ("Network Mapper") is an open source tool for network exploration and
security auditing. It was designed to rapidly scan large networks, although
it works fine against single hosts. Nmap uses raw IP packets in novel ways
to determine what hosts are available on the network, what services (application name and version) those hosts are offering, what operating systems (and
OS versions) they are running, what type of packet filters/firewalls are in
use, and dozens of other characteristics.
...
Utilice las teclas de flecha arriba y abajo para navegar por la documentación. Verá secciones sobre uso, opciones y ejemplos. Para salir de la página man, presione q para volver al símbolo del sistema (terminal prompt).
Aprender a utilizar las páginas man le proporciona la capacidad de explorar las características de cualquier herramienta de forma independiente. Esto es especialmente útil en Kali Linux, donde las herramientas tienen numerosas opciones que puede necesitar consultar durante las tareas de seguridad.
Redirigir la Salida de Nmap a un Archivo
En este paso final, aprenderá a guardar la salida de un comando en un archivo para futuras referencias. Esto se basa en su uso anterior de nmap e introduce la redirección de salida (output redirection), una habilidad fundamental de Linux para documentar resultados.
La redirección de salida en Linux le permite guardar los resultados de un comando en un archivo en lugar de mostrarlos en la terminal. Esto se hace utilizando el símbolo >, que escribe la salida en un archivo especificado, sobrescribiéndolo si ya existe.
Realicemos otro escaneo de nmap en localhost y guardemos los resultados en un archivo llamado nmap_scan.txt. Escriba el siguiente comando en la terminal y presione Enter:
nmap localhost > /root/nmap_scan.txt
El símbolo > redirige la salida del comando nmap localhost al archivo /root/nmap_scan.txt. No verá los resultados del escaneo en la terminal porque se están guardando en el archivo.
Para confirmar que la salida se guardó, vea el contenido del archivo escribiendo el siguiente comando y presionando Enter:
cat /root/nmap_scan.txt
Salida Esperada (ejemplo, la salida real puede variar):
Starting Nmap 7.91 ( https://nmap.org ) at ...
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00010s latency).
Not shown: 997 closed ports
PORT STATE SERVICE
80/tcp open http
...
Nmap done: 1 IP address (1 host up) scanned in 0.05 seconds
Esto confirma que los resultados del escaneo se guardaron correctamente en /root/nmap_scan.txt. Guardar las salidas en archivos es una forma práctica de documentar los hallazgos durante las pruebas de penetración (penetration testing), lo que le permite revisar o compartir los resultados más tarde sin necesidad de volver a ejecutar los comandos.
Resumen
En este laboratorio, ha aprendido cómo explorar y utilizar herramientas de seguridad esenciales en Kali Linux para pruebas de penetración (penetration testing). Comenzó viendo las herramientas preinstaladas con dpkg -l, instaló e inició Metasploit usando msfconsole, realizó escaneos de red con nmap, escaneó en busca de vulnerabilidades web con nikto, accedió a la documentación de las herramientas a través de las páginas man y guardó las salidas de los comandos en archivos. Estas habilidades fundamentales proporcionan una base sólida para seguir aprendiendo sobre ciberseguridad y análisis de redes dentro de un entorno controlado.