
Automatiza el reconocimiento mapeando direcciones IPv4/IPv6 a organizaciones utilizando bases de datos GeoLite2, con escaneo de puertos nmap integrado y procesamiento por lotes mediante archivos de entrada.
Asnap tiene como objetivo facilitar la fase de reconocimiento proporcionando datos actualizados periódicamente sobre qué empresas poseen direcciones ipv4 o ipv6 y permite al usuario automatizar el escaneo inicial de puertos y servicios.
█████╗ ███████╗███╗ ██╗ █████╗ ██████╗
██╔══██╗██╔════╝████╗ ██║██╔══██╗██╔══██╗
███████║███████╗██╔██╗ ██║███████║██████╔╝
██╔══██║╚════██║██║╚██╗██║██╔══██║██╔═══╝
██║ ██║███████║██║ ╚████║██║ ██║██║
╚═╝ ╚═╝╚══════╝╚═╝ ╚═══╝╚═╝ ╚═╝╚═╝
Author : Mehmet Berkay Yuksel | twitter -> @paradoxxer
Si tienes Go instalado y configurado en tu variable de entorno $PATH, simplemente ejecuta:
go get -u github.com/yukselberkay/asnap
Si deseas usar el binario precompilado, también necesitas descargar los archivos "move.sh" y "nmap.sh" y colocarlos en el mismo directorio que asnap.
Para descargar la base de datos que asnap consulta, necesitas proporcionar una clave. Para obtener tu clave gratuita, regístrate aquí -> https://www.maxmind.com/en/geolite2/signup. Después de registrarte, navega a servicios -> My license key y crea una nueva clave. Luego crea "asnap_conf.txt" dentro del mismo directorio que asnap, y pega tu clave en la primera línea de "asnap_conf.txt":
echo 'insert key' > asnap_conf.txt
Para poder usar la funcionalidad de escaneo de puertos, necesitas instalar nmap en tu máquina:
* Distribuciones basadas en Debian:
sudo apt install nmap
* MacOS
brew install nmap
* Distribuciones basadas en Arch
sudo pacman -S nmap
Descarga el código fuente:
git clone [email protected]:yukselberkay/asnap.git
Instala golang aquí -> https://golang.org/doc/install o puedes instalar go si está disponible en tu gestor de paquetes:
sudo apt install golang
Después de descargar el código fuente, navega al directorio del proyecto y ejecuta:
go build
Esto producirá el binario asnap. Después de compilarlo, crea asnap_conf.txt dentro del mismo directorio que asnap, inserta tu clave en la primera línea y estará listo.
echo 'insert key' > asnap_conf.txt
Uso y Ejemplos
Usage of ./asnap:
-download Download database for the first usage.
-update Update downloaded database. (Geolite databases updates once a week.).
-search Specify search.
-ipv4 Specify ipv4 database to search.
-ipv6 Specify ipv6 database to search.
-company Search by company name.
-asn Search by as number.
-outfile Specifies a name for the output text. By default, output file is named: MM-DD-YYYY_out.txt
-infile Use specified .txt file as input. Asnap will iterate every line, and treats them as company names and searches specified database with given inputs.
-nmap Passes found ip addresses to nmap.
Examples:
"$asnap -download" -> Downloads database with given key, for the first time.
"$asnap -update" -> Updates database.
"$asnap -search -ipv4 -company="example" " -> Search ipv4 database by company name "example"
"$asnap -search -ipv6 -asn 13337" -> Search ipv6 database by as number "13337"
"$asnap -search -ipv4 -company="github" -outfile /path/to/output/file" -> Search ipv4 database by company name "test" and save output to specified path.
"$asnap -search -ipv4 -infile /path/to/input/file.txt -nmap" -> Give a list of company names as input, search it inside ipv4 database and pass found ip addresses to nmap for port scanning.
Si bien puedes usar asnap manualmente, puedes automatizar todo este proceso con trabajos cron (ver -> https://en.wikipedia.org/wiki/Cron). Por ejemplo, después de proporcionar un archivo de entrada con el argumento -infile, todo lo que tienes que hacer es revisar el archivo de salida y modificar regularmente el archivo de entrada según tus necesidades. Por defecto, el archivo de salida se nombra: "MM-DD-YYYY_out.txt".
Si tienes alguna pregunta o una característica que quieras que añada, no dudes en contactarme. twitter -> https://twitter.com/paradoxxer linkedin -> https://www.linkedin.com/in/mehmet-berkay-y%C3%BCksel-ab78aa153/ Sitio web -> https://yukselberkay.me