Application layer scanner that operates with ZMap
Go Python
Latest commit 202370b Jan 20, 2017 @dadrian dadrian committed with zakird Add Prometheus integration, update TravisCI (#212)
* Add Prometheus integration, update TravisCI

This adds Prometheus integration via the --prometheus flag. The flags
defaults to empty. When the flag is non-empty it launches an HTTP server
at the specified endpoint (e.g. "localhost:8080"), that exposes the
Prometheus metric source API at the /metrics path.

This also updates TravisCI to download dependencies more sanely, and
bumps the version of Golang used by TravisCI to 1.7.4.

* Clarify Prometheus option help text


Build Status

A TLS Banner Grabber, in Go


You will need to have a valid $GOPATH set up, for more information about $GOPATH, see

Once you have a working $GOPATH, run:

go get

This will install zgrab under $GOPATH/src/

$ cd $GOPATH/src/
$ go build


./zgrab --help


$ zmap -p 443 --output-fields=* | ztee results.csv | zgrab --port 443 --tls --http="/" --output-file=banners.json


zgrab requires go version of at least 1.6. Please note that this is newer than the version included in Ubuntu 14.04 apt repository. You can install ztee from ZMap Github repository at

ZGrab as a library / dependency

If you are using ZGrab code in another Go program, import ZGrab using ZGrab tends to be very unstable, API's may break at any time, so be sure to vendor ZGrab.


ZGrab is licensed under Apache 2.0 and ISC. For more information, see the LICENSE file.