
CLI e libreria Go per mappare rapidamente gli intervalli di rete delle organizzazioni utilizzando le informazioni ASN.
Funzionalità • Installazione • Utilizzo • Esecuzione di asnmap • Unisciti a Discord

asnmap richiede Go 1.21 per essere installato correttamente. Per installarlo, basta eseguire il comando qui sotto o scaricare il binario precompilato dalla pagina delle release.
go install github.com/projectdiscovery/asnmap/cmd/asnmap@latest
asnmap -h
Questo mostrerà l'aiuto per lo strumento. Ecco tutti i flag che supporta.
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
La CLI ASNMap è costruita sopra l'API ASNMap, che richiede un token API della ProjectDiscovery Cloud Platform che può essere configurato tramite una variabile d'ambiente o usando l'opzione interattiva -auth, come mostrato di seguito.
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 supporta più input, tra cui ASN, IP, DNS e nome ORG per interrogare le informazioni ASN/CIDR.
| Input | ASN | DNS | IP | ORG |
|---|---|---|---|---|
| Example | AS14421 | example.com | 93.184.216.34 | GOOGLE |
L'input può essere fornito tramite opzioni specifiche o STDIN, che accetta tutti i formati supportati. Per tutte le opzioni sono supportati input singoli, multipli (separati da virgola) e da file.
echo GOOGLE | ./asnmap -silent
Esempio di input per asnmap:
asnmap -a AS45596 -silent
asnmap -i 100.19.12.21 -silent
asnmap -d hackerone.com -silent
asnmap -org GOOGLE -silent
asnmap restituisce di default l'intervallo CIDR per l'input fornito.
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 mostra di default l'intervallo CIDR e tutte le informazioni sono sempre disponibili in formato JSON; per automazione e post-processing, l'output -json è l'opzione più comoda da usare.
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 supporta anche l'output in formato CSV, che contiene tutte le informazioni proprio come l'output 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
L'output di asnmap può essere passato direttamente ad altri progetti nei workflow che accettano stdin come input, per esempio:
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-detectEsempi di utilizzo di asnmap dal codice Go sono disponibili nella cartella examples.
asnmap è realizzato con ❤️ dal team di projectdiscovery e distribuito sotto Licenza MIT.