Se si possiede un elenco di indirizzi dei quali si vuole conoscere rapidamente i servizi attivi ed eventuali vulnerabilità, è possibile utilizzare enrich, uno strumento da riga di comando che permette di eseguire rapidamente queste operazioni.
nrich attualmente supporta 3 formati di output:
- shell (default): una vista ‘user-friendly’ dell’informazione.
- json: crea un singolo oggetto JSON contenente tutte le informazioni. Utile se si vogliono memorizzare i risultati in un file separato che può essere poi caricato su altri strumenti.
- ndjson: newline-delimited JSON genera un oggetto JSON per ogni riga. Questo formato è utile se si vogliono passare i risultati ad un altro strumento, ad esempio jq.
Le ultime release sono disponibili qui.
Installazione
Per installare su Ubuntu digitiamo i seguenti comandi:
$ wget https://gitlab.com/api/v4/projects/packages/generic/nrich/latest/nrich_latest_amd64.deb
$ sudo dpkg -i nrich_latest_amd64.deb
Per verificare la corretta installazione è possibile passare un singolo indirizzo IP in questo modo:
$ echo 149.202.182.140 | nrich -
149.202.182.140 (ftptech1.pcsoft.fr)
Ports: 21, 80, 111, 443
CPEs: cpe:/a:apache:http_server:2.4.25, cpe:/a:proftpd:proftpd:1.3.5b
Vulnerabilities: CVE-2018-11763, CVE-2017-7668, CVE-2017-15715, CVE-2018-17199, CVE-2018-1333, CVE-2019-12815, CVE-2017-9798, CVE-2017-9788, CVE-2018-1283, CVE-2019-0220, CVE-2017-7679, CVE-2017-3167, CVE-2017-3169, CVE-2017-7659, CVE-2019-0197, CVE-2018-1312, CVE-2019-0211, CVE-2019-0196, CVE-2017-15710
Utilizzo
Il comando nrich richiede un solo argomento: il file contenente gli IP da verificare.
$ nrich -h
nrich 0.3.0
Add network information to IPs
USAGE:
nrich [OPTIONS] <filename>
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
OPTIONS:
-o, --output <output> Output format (shell, ndjson, json) [default: shell]
-p, --proxy <proxy> Proxy URI (HTTP, HTTPS or SOCKS) [default: ]
ARGS:
<filename> File containing an IP per line. Non-IPs are ignored