BannerGrapV2 is a Go-based network reconnaissance and banner-grabbing tool. The README documents the core command-line surface as a small set of flags for target selection, protocol choice, payload control, concurrency, timeout, and output routing. The current source also shows support for rich per-target results such as banner text, fingerprints, TLS metadata, vulnerabilities, exploit notes, enumeration output, brute-force results, and a generated report field.
bannerGrap.go [target] [options]A target can be provided directly as a single host, a host with a port, or through a newline-separated file.
Provide a single host directly:
go run bannerGrap.go example.com
go run bannerGrap.go example.com:80
go run bannerGrap.go 192.168.1.1Use -f to scan multiple targets from a file:
go run bannerGrap.go -f targets.txtThe README describes the file as containing newline-separated targets in the form host or host:port.
| Flag | Type | Default | Description |
|---|---|---|---|
-f |
string | none | File containing newline-separated targets. |
-proto |
string | http |
Protocol to use: http, https, ftp, smtp, ssh, telnet, or custom. |
-port |
string | target/default port | Override the port for every target. |
-payload |
string | protocol-specific | Custom payload to send. |
-timeout |
int | 5 |
Connection and read timeout in seconds. |
-threads |
int | 10 |
Number of simultaneous connections. |
-o |
string | console output | Output file path. Extension determines the format. |
-h |
bool | n/a | Show help. |
-protocontrols the wire protocol and the scanner’s behavior for the target service.-portforces one port across all scanned targets.-payloadlets you send a custom request or handshake string.-timeoutbounds connection and read time for each scan.-threadscontrols concurrent work.-oswitches from console output to a file.
According to the README:
.jsonwrites JSON output.csvwrites CSV output.txtwrites text output- no
-okeeps results in the console
# Scan one host
go run bannerGrap.go example.com
# Scan a target list with HTTP
go run bannerGrap.go -f targets.txt -proto http
# Scan the same list with HTTPS
go run bannerGrap.go -f targets.txt -proto https
# Send a custom request
go run bannerGrap.go -f targets.txt -proto custom -payload "GET / HTTP/1.1\r\nHost: example.com\r\n\r\n"
# Write JSON output
go run bannerGrap.go -f targets.txt -o results.json
# Increase timeout and concurrency
go run bannerGrap.go -f targets.txt -timeout 10 -threads 50The README also shows a few advanced example invocations such as --version, -ports, -config, and -target. Those are best treated as example-driven or work-in-progress surfaces unless they are implemented in the current binary you ship.