topmostp

topmostp

Overview

topmostp (Topmost Ports) is a tool that allows you to quickly retrieve the most used ports. The source of the ranking is the nmap-services in the nmap repo.

At SecSI we found it useful to get this information to use it in a pipeline of scripts.

Install

You can easily install it by running:

pip install topmostp

Usage

topmostp --help

This will display help for the tool. Here are all the commands it supports.

 Usage: topmostp [OPTIONS] COMMAND [ARGS]...                                                         
                                                                                                     
╭─ Options ─────────────────────────────────────────────────────────────────────────────────────────╮
│ --help  -h        Show this message and exit.                                                     │
╰───────────────────────────────────────────────────────────────────────────────────────────────────╯
╭─ Commands ────────────────────────────────────────────────────────────────────────────────────────╮
│ find     Find info about about a specific service                                                 │
│ stats    Retrieve stats about a port                                                              │
│ top      Retrieve list of ports by frequency (TCP, UDP, SCTP or all of them. Defaults to 'all')   │
│ update   Update ports list                                                                        │
╰───────────────────────────────────────────────────────────────────────────────────────────────────╯

This is the help for the topmostp top command:

 Usage: topmostp top [OPTIONS] N                                              
                                                                              
 Retrieve list of ports by frequency (TCP, UDP, SCTP or all of them. Defaults 
 to 'all')                                                                    
                                                                              
╭─ Arguments ────────────────────────────────────────────────────────────────╮
│ *    n      INTEGER  [default: None] [required]                            │
╰────────────────────────────────────────────────────────────────────────────╯
╭─ Options ──────────────────────────────────────────────────────────────────╮
│ --type    -t      [tcp|udp|sctp|all]  [default: all]                       │
│ --silent  -s                          Display only results in output       │
│ --help    -h                          Show this message and exit.          │
╰────────────────────────────────────────────────────────────────────────────╯

This is the help for the topmostp find command:

 Usage: topmostp find [OPTIONS] SERVICE                                       
                                                                              
 Find info about about a specific service                                     
                                                                              
╭─ Arguments ────────────────────────────────────────────────────────────────╮
│ *    service      TEXT  [default: None] [required]                         │
╰────────────────────────────────────────────────────────────────────────────╯
╭─ Options ──────────────────────────────────────────────────────────────────╮
│ --help  -h        Show this message and exit.                              │
╰────────────────────────────────────────────────────────────────────────────╯

This is the help for the topmostp stats command:

 Usage: topmostp stats [OPTIONS] PORT PORT_TYPE:{tcp|udp|sctp}                
                                                                              
 Retrieve stats about a port                                                  
                                                                              
╭─ Arguments ────────────────────────────────────────────────────────────────╮
│ *    port           INTEGER                   [default: None] [required]   │
│ *    port_type      PORT_TYPE:{tcp|udp|sctp}  [default: None] [required]   │
╰────────────────────────────────────────────────────────────────────────────╯
╭─ Options ──────────────────────────────────────────────────────────────────╮
│ --help  -h        Show this message and exit.                              │
╰────────────────────────────────────────────────────────────────────────────╯

A pratical example is the following:

naabu -p $(topmostp top 15 -s) -host secsi.io

In this snippet the output of topmostp is used to retrieve the list of the top 15 ports and it is chained with the naabu port scanning tool.

Demo

demo

Credits

Developed by Angelo Delicato @SecSI

License

topmostp is released under the MIT LICENSE

GitHub

View Github