Quickly Scan & Find Open Ports with PortNinja!

Here’s PortNinja, a super fast multithreaded ports scanner that scans for open listening ports on the specified target server using any the following methods:

  1. All ports in existence (1 – 65,535)
  2. Top 1,000 common ports only (reference)
  3. User-specified range of ports
  4. User-specified individual ports

Scan Speed Profiles

The user can select one of four scan speed profiles for use case-specific executions, ranging from slowest (most accurate) to fastest (may miss ports), as shown below:

ProfileSpeedAccuracyScan Time
1SlowestMost accurate (zero / minimum missed ports)~3+ hours
2SlowerVery accurate (minimum missed ports)~2 hours
3FasterFairly accurate (missed ports not impossible)~15+ minutes
4FastestAccurate-ish (may miss ports)A few seconds

The default profile is option #3, and provides a fairly accurate result while being fast. However, for specific use cases, a slower or faster profile could be required.

Example execution of HashNinja.

Optimization

Multithreading was implemented in this program to create a dedicated software thread for each socket to connect to a dedicated port of the specified target. All these sockets/threads are briefly created, then connected to their individual dedicated ports concurrently to maximize the scan rate, and then correctly terminated upon completion of execution.

Note

PortNinja does not perform a stealthy scan, that is, it works on the basis of establishing the complete three-way handshake instead of just sending a SYN flagged packet followed by the RST flagged packet (as it would in a SYN scan). PortNinja terminates each connection with its individual port properly by the time that individual port has been scanned; but this in itself does not by any means dictate that the target will not be aware of all these sudden connection attempts through all of its ports that are being “scanned” by PortNinja.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.