bscan: an asynchronous target enumeration tool
bscan is a command-line utility to perform active information gathering and service enumeration. At its core, bscan asynchronously spawns processes of well-known scanning utilities, repurposing scan results into highlighted console output and a well-defined directory structure.
was written to be run on Kali Linux, but there is nothing inherently preventing it from running on any OS with the appropriate tools installed.
pip install bscan
bscan has a wide variety of configuration options which can be used to tune scans to your needs. Here’s a quick example:
What’s going on here?
- –max-concurrency 3 means that no more than 3 concurrent scan subprocesses will be run at a time
- –patterns [Mm]icrosoft defines a custom regex pattern with which to highlight matches in the generated scan output
- –status-interval 10 tells bscan to print runtime status updates every 10 seconds
- –verbose-status means that each of these status updates will print details of all currently-running scan subprocesses
scanme.nmap.org is the host upon which we want to enumerate
bscan also relies on some additional configuration files. The default files can be found in the bscan/configuration directory and serve the following purposes:
patterns.txtspecifies the regex patterns to be highlighted in console output when matched with scan output
required-programs.txtspecifies the installed programs that
bscanplans on using
port-scans.tomldefines the port-discovering scans to be run on the target(s), as well as the regular expressions used to parse port numbers and service names from scan output
service-scans.tomldefines the scans be run on the target(s) on a per-service basis
Copyright (c) 2018 Brian Welch.