
CLI e biblioteca em Go para mapear rapidamente intervalos de rede de organizações usando informações de ASN.
Funcionalidades • Instalação • Uso • Executando asnmap • Entrar no Discord

asnmap requer Go 1.21 para ser instalado com sucesso. Para instalar, basta executar o comando abaixo ou baixar o binário pré-compilado na página de releases.
go install github.com/projectdiscovery/asnmap/cmd/asnmap@latest
asnmap -h
Isso exibirá a ajuda da ferramenta. A seguir estão todas as flags que ela suporta.
Usage:
./asnmap [flags]
Flags:
INPUT:
-a, -asn string[] target asn to lookup, example: -a AS5650
-i, -ip string[] target ip to lookup, example: -i 100.19.12.21, -i 2a10:ad40::
-d, -domain string[] target domain to lookup, example: -d google.com, -d facebook.com
-org string[] target organization to lookup, example: -org GOOGLE
-f, -file string[] targets to lookup from file
CONFIGURATIONS:
-config string path to the asnmap configuration file
-r, -resolvers string[] list of resolvers to use
UPDATE:
-up, -update update asnmap to latest version
-duc, -disable-update-check disable automatic asnmap update check
OUTPUT:
-o, -output string file to write output to
-j, -json display json format output
-c, -csv display csv format output
-v6 display ipv6 cidr ranges in cli output
-v, -verbose display verbose output
-silent display silent output
-version show version of the project
O ASNMap CLI é construído sobre a API ASNMap, que requer um token de API do ProjectDiscovery Cloud Platform, que pode ser configurado usando uma variável de ambiente ou a opção interativa -auth, conforme mostrado abaixo.
export PDCP_API_KEY=*************
asnmap -auth
___ _____ __
/ _ | / __/ |/ /_ _ ___ ____
/ __ |_\ \/ / ' \/ _ / _ \
/_/ |_/___/_/|_/_/_/_/\_,_/ .__/
/_/
projectdiscovery.io
[INF] Get your free api key by signing up at https://cloud.projectdiscovery.io
[*] Enter PDCP API Key (exit to abort): *************
[INF] Successfully logged in as (@user)
asnmap suporta múltiplas entradas, incluindo ASN, IP, DNS e nome de ORG, para consultar informações de ASN/CIDR.
| Entrada | ASN | DNS | IP | ORG |
|---|---|---|---|---|
| Exemplo | AS14421 | example.com | 93.184.216.34 | GOOGLE |
A entrada pode ser fornecida por meio de opções específicas ou via STDIN, que aceita todos os formatos suportados. Entrada única, múltipla (separada por vírgulas) e por arquivo são suportadas para todas as opções.
echo GOOGLE | ./asnmap -silent
Exemplo de entrada para asnmap:
asnmap -a AS45596 -silent
asnmap -i 100.19.12.21 -silent
asnmap -d hackerone.com -silent
asnmap -org GOOGLE -silent
asnmap, por padrão, retorna o intervalo CIDR para a entrada fornecida.
echo GOOGLE | ./asnmap
___ _____ __
/ _ | / __/ |/ /_ _ ___ ____
/ __ |_\ \/ / ' \/ _ / _ \
/_/ |_/___/_/|_/_/_/_/\_,_/ .__/
/_/ v0.0.1
projectdiscovery.io
Use with caution. You are responsible for your actions
Developers assume no liability and are not responsible for any misuse or damage.
8.8.4.0/24
8.8.8.0/24
8.35.200.0/21
34.3.3.0/24
34.4.4.0/24
34.96.0.0/20
34.96.32.0/19
34.96.64.0/18
34.98.64.0/18
34.98.136.0/21
34.98.144.0/21
asnmap exibe, por padrão, o intervalo CIDR, e todas as informações estão sempre disponíveis em formato JSON; para automação e pós-processamento, usar a saída -json é a opção mais conveniente.
echo hackerone.com | ./asnmap -json -silent | jq
{
"timestamp": "2022-09-19 12:14:33.267339314 +0530 IST",
"input": "hackerone.com",
"as_number": "AS13335",
"as_name": "CLOUDFLARENET",
"as_country": "US",
"as_range": [
"104.16.0.0/14",
"104.20.0.0/16",
"104.21.0.0/17"
]
}
{
"timestamp": "2022-09-19 12:14:33.457401266 +0530 IST",
"input": "hackerone.com",
"as_number": "AS13335",
"as_name": "CLOUDFLARENET",
"as_country": "US",
"as_range": [
"2606:4700:8390::/44"
]
}
asnmap também suporta saída no formato CSV, que contém todas as informações, assim como a saída JSON.
echo hackerone.com | ./asnmap -csv -silent
timestamp|input|as_number|as_name|as_country|as_range
2022-09-19 12:15:04.906664007 +0530 IST|hackerone.com|AS13335|CLOUDFLARENET|US|104.16.0.0/14,104.20.0.0/16,104.21.0.0/17
2022-09-19 12:15:05.201328136 +0530 IST|hackerone.com|AS13335|CLOUDFLARENET|US|2606:4700:9760::/44
A saída do asnmap pode ser canalizada diretamente para outros projetos que aceitam stdin como entrada, por exemplo:
echo AS54115 | asnmap | tlsxecho AS54115 | asnmap | dnsx -ptrecho AS54115 | asnmap | naabu -p 443echo AS54115 | asnmap | naabu -p 443 | httpxecho AS54115 | asnmap | naabu -p 443 | httpx | nuclei -id tech-detectExemplos de uso do asnmap em código Go são fornecidos na pasta examples.
asnmap é feito com ❤️ pela equipe do projectdiscovery e distribuído sob a Licença MIT.