ZGrab is a Go-based application layer scanner that operates with ZMap and supports multiple protocols and services including TLS, IMAP, SMTP, POP3 etc.
It also stores TLS version and can detect Heartbleed.
Building
You will need to have a valid $GOPATH
set up, for more information about $GOPATH
, see https://golang.org/doc/code.html.
Once you have a working $GOPAT
H, run:
1 |
go get github.com/zmap/zgrab |
This will install zgrab under $GOPATH/src/github.com/zmap/zgrab
1 2 |
$ cd $GOPATH/src/github.com/zmap/zgrab $ go build |
Usage
1 2 3 4 5 6 |
zgrab [-banners] [-ca-file file ] [-cbc-only] [-data message ] [-ehlo] domain ] [-encoding encoding ] [-heartbleed] [-imap] [-input-file file ] [-interface interface ] [-log-file file ] [-metadata-file file ] [-modbus] [-output-file file ] [-pop3] [-port port ] [-senders senders ] [-smtp] [-smtp-help] [-starttls] [-timeout timeout ] [-tls] [-tls- version version ] [-udp] |
Example:
1 |
# zmap -p 443 --output-fields=* | ztee results.csv | zgrab --port 443 --tls --http="/" --output-file=banners.json |
You can download ZGrab here:
Or read more here.
marcurdy says
Does this improve upon the services detection built into nmap?
Darknet says
It’s for ZMap not Nmap.