
Легко превращайте однопоточные приложения командной строки в быстрое многопоточное приложение с поддержкой CIDR и glob.
Легко превращайте однопоточные консольные приложения в быстрые многопоточные с поддержкой CIDR и glob.
Установка с помощью:
$ python3 setup.py install
Затем будут установлены зависимости, и Interlace будет добавлен в ваш PATH как interlace.
| Аргумент | Описание |
|---|---|
| (stdin) | Подача списков целей из другого приложения в формате, разделённом запятыми, в нотации CIDR или как отдельный хост |
| -t | Укажите цель или доменное имя в формате, разделённом запятыми, в нотации CIDR или как отдельный хост |
| -tL | Укажите список целей или доменных имён |
| -e | Укажите список целей для исключения в формате, разделённом запятыми, в нотации CIDR или как отдельный хост |
| -eL | Укажите список целей для исключения |
| -threads | Укажите максимальное количество потоков, выполняемых одновременно (ПО УМОЛЧАНИЮ:5) |
| -timeout | Укажите таймаут в секундах для любого отдельного потока (ПО УМОЛЧАНИЮ:600) |
| -c | Укажите одну команду для выполнения над каждой целью или доменом |
| -cL | Укажите список команд для выполнения над каждой целью или доменом |
| -o | Укажите переменную выходной папки, которую можно использовать в командах как _output_ |
| -p | Укажите список переменной порта, которую можно использовать в командах как _port_. Это может быть один порт, список, разделённый запятыми, или диапазон с использованием дефисной нотации |
| -pL | Укажите список прокси |
| --proto | Укажите протоколы, которые можно использовать в командах как _proto_ |
| -rp | Укажите переменную реального порта, которую можно использовать в командах как _realport_ |
| -random | Укажите каталог файлов, которые можно случайным образом использовать в командах как _random_ |
| --no-bar / --sober | Если установлено, то индикатор выполнения будет убран |
| --no-cidr | Если установлено, то нотация CIDR в файле целей не будет автоматически расширяться в отдельные хосты |
| --no-color | Если установлено, то все цвета переднего или заднего плана будут удалены |
| --silent | Если установлено, то будет отображаться только важная информация, а баннеры и другая информация будут скрыты |
| -v | Если установлено, то подробный вывод будет отображаться в терминале |
| Пример | Тип нотации |
|---|---|
| 80 | Один порт |
| 1-80 | Дефисная нотация, выполнить команду для каждого порта от 1 до 80 |
| 80,443 | Выполнить команду для портов 80 и 443 |
Оба аргумента -t и -tL обрабатываются одинаково. Вы можете передавать цели так же, как при использовании nmap. Это можно сделать с помощью нотации CIDR, дефисной нотации или списка целей, разделённого запятыми. В одном файле списка целей также можно использовать разные типы нотации для каждой строки.
Кроме того, вы можете передавать цели через STDIN, и ни -t, ни -tL не потребуются.
Следующие переменные будут заменены в командах во время выполнения:
| Переменная | Замена |
|---|---|
| _target_ | Заменяется на расширенный список целей, против которых выполняется текущий поток |
| _cleantarget_ | Заменяется на цель, очищенную от http:// или https:// |
| _safe-target_ | Заменяется на цель с автоматическим экранированием для команд, предотвращающим выполнение подкоманд |
| _host_ | Работает так же, как _target_, и может использоваться взаимозаменяемо |
| _output_ | Заменяется на переменную выходной папки из Interlace |
| _port_ | Заменяется на расширенную переменную порта из Interlace |
| _realport_ | Заменяется на переменную реального порта из Interlace |
| _proxy_ | Заменяется на список прокси из Interlace |
| _random_ | Заменяется на случайно выбранный файл из Interlace |
Interlace также предоставляет две дополнительные функции для управления потоком выполнения в файле команд: _blocker_ и _block:<name>_. Блокировщики предотвращают выполнение команд, перечисленных после них, пока не завершатся все команды перед ними, а блоки можно использовать для принудительного последовательного выполнения команд, перечисленных внутри блока, для одной цели.
Они выполняются на уровне каждой цели. Если есть доступные потоки, но блокировщик мешает текущей цели, Interlace начнёт выполнение команд со следующей цели в списке, чтобы максимизировать эффективность.
Использование этих функций позволит вам более непосредственно управлять потоком выполнения для отдельных целей, чтобы предотвратить выполнение команд не в том порядке.
Блокировщики предотвращают выполнение всего, что находится ниже них, пока не завершатся все команды выше (для текущего активного хоста). Например, в следующем: