Introducción
¡Bienvenido al mundo de Metasploit! El Metasploit Framework es una herramienta poderosa utilizada por profesionales de la seguridad para pruebas de penetración y evaluación de vulnerabilidades. En su núcleo se encuentra la Consola Metasploit, o msfconsole, una interfaz de línea de comandos interactiva que le brinda acceso a la vasta gama de módulos, exploits y payloads del framework.
En este laboratorio, aprenderá los comandos esenciales para navegar por msfconsole. Dominar estos conceptos básicos es el primer paso para utilizar Metasploit de manera efectiva. Cubriremos cómo obtener ayuda, administrar sus proyectos con espacios de trabajo (workspaces), buscar módulos, ver información detallada sobre ellos y salir correctamente de la consola.
Comencemos iniciando la consola.
Explore Comandos Centrales con el Comando help
En este paso, iniciará la Consola Metasploit y utilizará el comando help para explorar los comandos disponibles. El comando help es su recurso más valioso cuando no está seguro de lo que hace un comando o de qué comandos están disponibles.
Primero, iniciemos la Consola Metasploit. Usaremos la bandera -q (quiet/silencioso) para omitir el banner de inicio y obtener una interfaz más limpia.
Ejecute el siguiente comando en su terminal:
msfconsole -q
Notará que el prompt de su comando cambia a msf >, lo que indica que ahora se encuentra dentro de la Consola Metasploit.
Ahora, usemos el comando help para ver una lista de todos los comandos disponibles.
help
Verá una larga lista de comandos, categorizados para una navegación más fácil.
Core Commands
=============
Command Description
------- -----------
? Help menu
banner Display an awesome metasploit banner
cd Change the current working directory
color Toggle color output
connect Communicate with a host
...
Module Commands
===============
Command Description
------- -----------
advanced Displays advanced options for a module
back Move back from the current context
info Displays information about a module
...
También puede obtener ayuda detallada para un comando específico. Por ejemplo, para obtener más información sobre el comando search, puede escribir help search.
help search
Esto mostrará la sintaxis y las opciones para el comando search.
Usage: search [options] <keywords>
Search for modules, plugins, and other framework objects.
OPTIONS:
-h, --help Help banner.
-o <file>, --output <file> Send output to a file in csv format.
-S <string>, --search <string> Search string for row filtering.
-t <type>, --type <type> The type of module to search for (exploit, payload, auxiliary, etc)
...
Siéntase libre de explorar otros comandos usando help antes de pasar al siguiente paso.
Visualizar la Gestión de Espacios de Trabajo con el Comando workspace
En este paso, aprenderá sobre los espacios de trabajo (workspaces). Los espacios de trabajo son una forma de organizar su trabajo en Metasploit. Cada espacio de trabajo es un entorno autónomo que almacena información sobre hosts, servicios, vulnerabilidades y botín (loot) para una evaluación específica. Esto es increíblemente útil para mantener separados diferentes proyectos de pruebas de penetración.
Por defecto, usted se encuentra en el espacio de trabajo default. Puede ver los espacios de trabajo actuales y disponibles utilizando el comando workspace.
workspace
La salida le mostrará los espacios de trabajo disponibles, con un asterisco * indicando aquel en el que se encuentra actualmente.
* default
Creemos un nuevo espacio de trabajo para nuestro proyecto. Lo nombraremos myproject. La bandera -a se utiliza para añadir un nuevo espacio de trabajo.
workspace -a myproject
Metasploit confirmará la creación y lo cambiará automáticamente al nuevo espacio de trabajo.
[*] Added workspace: myproject
[*] Workspace: myproject
Ahora, si lista los espacios de trabajo nuevamente, verá tanto default como myproject, siendo myproject el activo.
workspace
default
* myproject
Todas las acciones subsiguientes, como escanear hosts o recopilar datos, se guardarán ahora dentro del espacio de trabajo myproject.
Listar Módulos Disponibles con el Comando search
En este paso, aprenderá a encontrar módulos utilizando el comando search. El Metasploit Framework contiene miles de módulos, que son los componentes centrales que utilizará para realizar acciones. Estos incluyen exploits, escáneres auxiliares (auxiliary scanners), payloads y más. El comando search es esencial para encontrar la herramienta adecuada para el trabajo.
Puede buscar módulos basándose en palabras clave. Por ejemplo, busquemos módulos relacionados con smb (Server Message Block), un protocolo de red común.
search smb
La salida será una larga lista de módulos coincidentes. Los resultados se muestran en una tabla con varias columnas:
- #: El número de índice del resultado.
- Name: La ruta completa y el nombre del módulo.
- Disclosure Date: La fecha en que la vulnerabilidad fue divulgada públicamente.
- Rank: La fiabilidad del exploit, desde
low(bajo) hastaexcellent(excelente). - Check: Indica si el módulo tiene un método
checkpara probar de forma segura la vulnerabilidad. - Description: Un breve resumen de lo que hace el módulo.
Matching Modules
================
## Name Disclosure Date Rank Check Description
- ---- --------------- ---- ----- -----------
0 auxiliary/admin/smb/impacket/secretsdump 2021-11-09 normal No SMB Secrets Dump
1 auxiliary/admin/smb/psexec_ntdsgrab 2021-11-09 normal No PsExec NTDSGRAB
...
58 exploit/windows/smb/ms17_010_eternalblue 2017-03-14 average Yes MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption
...
Puede refinar su búsqueda utilizando palabras clave como type, platform, name, etc. Por ejemplo, para encontrar solo módulos de tipo exploit para la plataforma windows relacionados con smb, puede usar el siguiente comando:
search type:exploit platform:windows smb
Esto le proporcionará una lista de resultados mucho más enfocada, facilitando la localización del exploit específico que necesita.
Mostrar Información del Módulo con el Comando info
En este paso, aprenderá a obtener información detallada sobre un módulo específico utilizando los comandos use e info. Después de encontrar un módulo prometedor con search, necesita comprender qué hace, qué opciones requiere y a qué objetivos afecta.
Primero, debe seleccionar un módulo con el que trabajar. Esto se hace con el comando use, seguido del nombre completo del módulo obtenido de los resultados de la búsqueda. Seleccionemos el famoso exploit eternalblue.
use exploit/windows/smb/ms17_010_eternalblue
Observe que su prompt (indicador de línea de comandos) cambia. Ahora incluye el nombre del módulo activo, lo que indica que se encuentra en su contexto.
msf exploit(windows/smb/ms17_010_eternalblue) >
Ahora que se ha seleccionado un módulo, puede obtener información detallada sobre él utilizando el comando info.
info
Este comando muestra una visión general completa del módulo, incluyendo:
- Name (Nombre), Module (Módulo), Platform (Plataforma), Arch (Arquitectura)
- Privileged: Si requiere permisos especiales.
- License (Licencia) y Rank (Rango)
- Provided by: Los autores del módulo.
- Available targets: Los sistemas operativos o aplicaciones específicos a los que puede dirigirse.
- Basic options: Los parámetros que necesita configurar, como la dirección IP del objetivo (
RHOSTS). - Payload information: Los tipos de payloads que puede entregar.
- Description: Una explicación detallada de la vulnerabilidad.
- References: Enlaces a avisos y artículos (CVE, BID, etc.).
Name: MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption
Module: exploit/windows/smb/ms17_010_eternalblue
Platform: Windows
Arch: x86, x64
Privileged: Yes
License: Metasploit Framework License (BSD)
Rank: Average
...
Basic options:
Name Current Setting Required Description
---- --------------- -------- -----------
RHOSTS yes The target host(s), range CIDR identifier, or hosts file with syntax 'file:<path>'
RPORT 445 yes The target port (TCP)
SMBDomain . no (Optional) The Windows domain to use for authentication
...
Revisar esta información es un paso crítico antes de intentar ejecutar cualquier exploit.
Salir de la Consola con el Comando exit
En este paso final, aprenderá a salir correctamente de la Consola Metasploit. Aunque puede cerrar la ventana de la terminal o usar Ctrl+C, la forma recomendada de abandonar msfconsole es utilizando el comando exit.
Esto asegura que el framework se apague de manera controlada (gracefully), deteniendo cualquier trabajo en ejecución y guardando el estado actual.
Antes de salir, puede regresar al prompt principal de msfconsole desde el contexto de un módulo utilizando el comando back.
back
Su prompt volverá al estándar msf >.
Ahora, para salir completamente de la consola, simplemente escriba exit.
exit
Verá un mensaje de apagado y será devuelto a su prompt de shell del sistema habitual.
labex:project$
Esto concluye nuestro recorrido básico por la navegación de la Consola Metasploit.
Resumen
¡Felicidades! Ha completado con éxito este laboratorio sobre los conceptos básicos de navegación de la Consola Metasploit.
En este laboratorio, aprendió a realizar las operaciones más fundamentales dentro de msfconsole:
- Iniciar la consola y usar el comando
helppara descubrir y aprender sobre otros comandos. - Organizar sus proyectos utilizando el comando
workspacepara crear y gestionar entornos separados. - Encontrar módulos para cualquier tarea con el potente comando
searchy sus filtros. - Examinar los detalles, opciones y objetivos de un módulo con el comando
info. - Apagar el framework correctamente utilizando el comando
exit.
Estos comandos son la base sobre la cual se construirá todo su trabajo futuro en Metasploit. Con este conocimiento, ahora está listo para explorar temas más avanzados, como la configuración y ejecución de módulos.



