id = "nmap" name = "Nmap" homepage = "https://nmap.org" description = "Nmap is a free and open source utility for network discovery and security auditing." # The logo nmap.org serves (Simple Icons has none). icon = "https://nmap.org/images/nmap-logo-256x256.png" executables = ["nmap"] [dotfiles] # https://nmap.org/book/data-files-replacing-data-files.html — Nmap searches # ~/.nmap/ for user-customized data files (such as nmap-services and NSE data) # before its compiled-in data directory. This is a user-authored override # directory, not Nmap's generated scan output. paths = ["~/.nmap/"] secret = [] [commands] format = 1 label = "Scan hosts" description = "Scan one or more targets. Timing, scripts, NSE and output-format options are not in the completion data and are left out." quality = "ai-draft" base = "fig:nmap" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = false, short_bundles = false } [[commands.source]] id = "fig" kind = "completion" url = "https://github.com/withfig/autocomplete/blob/master/src/nmap.ts" license = "MIT" [[commands.field]] id = "targets" label = "Targets" type = "string" position = 0 multiple = true sources = ["fig"] [[commands.field]] id = "ports" label = "Ports" description = "Port list or ranges, e.g. 22,80,443 or 1-1024." type = "string" option = ["-p"] sources = ["fig"] [[commands.field]] id = "syn" label = "TCP SYN scan" type = "boolean" option = ["-sS"] sources = ["fig"] [[commands.field]] id = "connect" label = "TCP connect scan" type = "boolean" option = ["-sT"] sources = ["fig"] [[commands.field]] id = "udp" label = "UDP scan" type = "boolean" option = ["-sU"] sources = ["fig"] [[commands.field]] id = "os" label = "OS detection" type = "boolean" option = ["-O"] sources = ["fig"] [[commands.field]] id = "aggressive" label = "Aggressive (OS, version, scripts)" type = "boolean" option = ["-A"] sources = ["fig"] [[commands.field]] id = "verbose" label = "Verbosity" type = "count" option = ["-v"] sources = ["fig"] [[commands.field]] id = "ipv6" label = "IPv6" type = "boolean" option = ["-6"] sources = ["fig"] [[commands.field]] id = "input_list" label = "Targets from file" type = "path" option = ["-iL"] path = { kind = "file", role = "input" } sources = ["fig"] [[commands.field]] id = "exclude" label = "Exclude hosts" type = "string" option = ["--exclude"] sources = ["fig"] [[commands.task]] id = "quick" label = "Scan ports" fields = ["targets", "ports", "syn"] required = ["targets"] [[commands.task]] id = "full" label = "Aggressive scan" fields = ["targets", "ports"] required = ["targets"] set = { aggressive = [true] } [[commands.task]] id = "udp" label = "UDP scan" fields = ["targets", "ports"] required = ["targets"] set = { udp = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["targets", "ports", "syn", "udp", "aggressive", "verbose"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["connect", "ipv6", "input_list", "exclude", "os"]