Sobre la herramienta:
Smap es una herramienta escrita en lenguaje Go, es un escáner pasivo similar a Nmap construido con shodan.io, es una réplica completa de Nmap que utiliza la API gratuita de shodan.io para escanear puertos. Todos los argumentos de la línea de comandos son los mismos que NMAP y toda la salida que proporciona es como NMAP, lo que lo convierte en un reemplazo adecuado para Nmap.
Características:
Instalación:
En primer lugar, instalaremos la herramienta con el siguiente comando:
❯ go install -v github.com/s0md3v/smap/cmd/smap@latest
** 🚨 ¿Instalación de smap fallida? 🚨 **
❯ go install -v github.com/s0md3v/smap/cmd/smap@latest
smap
en la terminal.$PATH
, para ello deberemos añadir el siguiente comando en el archivo de nuestra shell (.bashrc
, .zshrc
, etc).export PATH=$PATH:$HOME/go/bin/
Uso:
Su uso es muy sencillo, como se ha comentado anteriormente, Smap utiliza los comandos de Nmap. Si estás familiarizado con Nmap podrás usar todas sus opciones de forma eficiente.
Si accedemos a la ayuda con el comando smap -h
, nos indicará:
smap <Objetivo>
smap -iL <target_list.txt>
.
oX // nmap's xml format
oG // nmap's greppable format
oN // nmap's default format
oA // output in all 3 formats above at once
oP // IP:PORT pairs seperated by newlines
oS // custom smap format
oJ // json
Ejemplos de uso:
Escaneo normal hacia un nombre de dominio:
❯ smap nmap.scanme.org
Escaneo de tipo SYN con detección de Sistema Operativo a la misma dirección de nmap.scanme.org
pero esta vez a la dirección IP:
❯ smap -sS -O 45.33.32.156
Escaneo con detección de versiones hacia los puertos específicos 80
y 22
:
❯ smap -sV -p 80,22 45.33.32.156
Escaneo con detección de versiones con salida a un fichero “grepeable”:
❯ smap -sV nmap.scanme.org -oG <fichero>
Podemos acceder al contenido del fichero de salida y a continuación le pasamos el comando grep con la opción 80
para que nos devuelva la línea del puerto 80
escaneado anteriormente:
❯ cat <fichero>
❯ grep 80 <fichero>