2019-01-06 12:51:59 +10:00
2019-01-06 12:30:07 +10:00
2018-10-23 20:46:42 +10:00
2018-10-23 19:35:55 +10:00
2019-01-06 12:19:30 +10:00
2019-01-06 12:51:59 +10:00
2019-01-06 12:49:11 +10:00
2019-01-06 12:51:59 +10:00

Interlace

A threading management application that allows controlled execution of multiple commands, over multiple targets.

Python 3.2|3.6 License Build Status Twitter

Contributions

Contributions to this project are very welcome. If you're a newcomer to open source and would like some help in doing so, feel free to reach out to me on twitter (@codingo_) and I'll assist wherever I can.

Usage

Argument Description
-t Specify a target or domain name either in comma format, CIDR notation, or as an individual host.
-tL Specify a list of targets or domain names
-threads Specify the maximum number of threads to run at any one time (DEFAULT:5)
-timeout Specify a timeout value in seconds for any one thread (DEFAULT:600)
-c Specify a single command to execute over each target or domain
-cL Specify a list of commands to execute over each target or domain
-o Specify an output folder variable that can be used in commands
-p Specify a port variable that can be used in commands
-rp Specify a real port variable that can be used in commands
--no-cidr If set then CIDR notation in a target file will not be automatically be expanded into individual hosts.
--no-color If set then any foreground or background colours will be stripped out
--silent If set then only important information will be displayed and banners and other information will be redacted.
-v If set then verbose output will be displayed in the terminal

Variable Replacements

The following varaibles will be replaced in commands at runtime:

Variable Replacement
$target Replaced with the target that the current thread is running against
$output Replaced with the output folder variable from interlace
$port Replaced with the port variable from interlace
$realport Replaced with the real port variable from interlace

Usage Examples

CIDR notation with an application that doesn't support it

Interlace automatically expands CIDR notation when starting threads (unless the --no-cidr flag is passed). This allows you to pass CIDR notation to a variety of applications:

To run a virtual host scan against every target within 192.168.12.0/24 using a direct command you could use:

interlace -t 192.168.12.0/24 -c "vhostscan $target -oN $output/$target-vhosts.txt" -o ~/scans/ -threads 50

This is despite VHostScan not having any inbuilt CIDR notation support. Since Interlace expands the notation before building a queue of threads, VHostScan for all intents is only receiving a list of direct IP addresses to scan.

Threading Support for an application that doesn't support it

Run a virtual host scan against each host in a file (target-lst.txt), whilst also limiting scans at any one time to 50 maximum threads.

This could be done using a direct command:

interlace -tL ./target-list.txt -c "vhostscan -t $target -oN $output/$target-vhosts.txt" -o ~/scans/ -threads 50

Or, alternatively, to run the same command as above, but using a command file, this would be done using:

interlace -cL ./vhosts-commands.txt -tL ./target-list.txt -threads 50 -o ~/scans

This presumes that the contents of the command file is:

vhostscan -t $target -oN $output/$target-vhosts.txt

This would output a file for each target in the specified output folder. You could also run multiple commands simply by adding them into the command file.

Description
No description provided
Readme GPL-3.0 458 KiB
Languages
Python 100%