← Tool index

Scan Processing

Gnmap-Parser Revamped

A small Bash utility that turns Nmap greppable output into focused host, port, endpoint, and service lists.

What it does

Gnmap-Parser Revamped reads one or more Nmap .gnmap files and produces small host lists, TCP and UDP port lists, per-port endpoint files, service matrices, and a CSV summary that can be passed directly into other tools.

Why it exists

The original parser’s output layout is still useful, but several old assumptions made it fragile with current scan archives. This revamp keeps the recognizable workflow while fixing metadata leakage, duplicate rows, path handling, recursive input discovery, and deterministic sorting.

Output

The generated directory separates alive hosts, open-port hosts, aggregate port lists, per-port endpoints, protocol matrices, and an Open-Services.csv file. Exact open TCP and UDP states are included; open|filtered results are left out. Version 4 accepts files or directories, supports IPv4, IPv6, and hostnames, and can be used in noninteractive automation. Rerunning it with the same input produces the same generated output, and the Bash test suite covers the parser behavior.

Project lineage

This is a continuation of Michael Wright’s original Gnmap-Parser. The original Git history, copyright notice, and GPL license are retained. Nmap now recommends XML over greppable output, but .gnmap remains common in existing workflows and archives.

Limitations

  • The parser handles existing greppable output; it does not replace XML-aware Nmap tooling.
  • Each parse replaces the generated subdirectories in the selected output directory.
  • Scan results can contain sensitive target information and need normal evidence handling.