
Сканируйте только один раз по IP-адресу и сократите время сканирования с помощью Nmap для больших объемов данных.
Сканирует только один раз по IP-адресу и сокращает время сканирования с помощью Nmap для больших объемов данных. Unimap — это сокращение от «Unique Nmap Scan». Инструмент может работать в Linux, OSX, Windows или Android (Termux) без проблем.
Если вы планируете запустить Nmap на всю организацию, вам нужно учесть, что десятки, сотни или даже тысячи поддоменов будут указывать на один и тот же IP-адрес, и наступит момент, когда продолжить сканирование станет почти невозможно. Кроме того, ваш IP может быть заблокирован из-за множественных сканирований одного и того же удаленного хоста и других причин.
Unimap использует собственную технологию для первоначального разрешения IP-адресов всех поддоменов. После завершения этого процесса он создает вектор с уникальными IP-адресами и запускает параллельное сканирование с помощью Nmap в соответствии с количеством потоков, заданных пользователем. Одновременно он анализирует данные из файлов, созданных Nmap, чтобы определить, какая информация соответствует каждому IP-адресу. Наконец, Unimap связывает информацию каждого IP-адреса с соответствующими поддоменами. Например, если у вас есть 50 поддоменов, указывающих на один и тот же IP, вы выполните только одно сканирование Nmap, но при этом получите все данные, связанные с каждым из поддоменов. При крупномасштабном сканировании это позволяет сэкономить дни или недели.
У вас должны быть установлены Rust и Nmap на компьютере, затем выполните:
1. git clone https://github.com/Edu4rdSHL/unimap.git && cd unimap
# Alternatively you can download a release from https://github.com/Edu4rdSHL/unimap/releases/latest
# extract it and continue to next step.
2. cargo build --release
# Now the binary is in ./target/release/unimap
# The next command only works on Linux and MacOS. Windows user need specify the target path in environment variable
3. cp ./target/release/unimap /usr/local/bin
# Now you can use the `unimap` command from everyewhere.
У вас есть два варианта установки Findomain в контейнер Docker.
Использование Dockerhub (рекомендуется):
1. docker pull edu4rdshl/unimap:latest
3. docker run -it --rm --name unimap unimap -t hackerone.com --fast-scan
# Set alias in ~/.bashrc or ~/.zshrc for global use
4. alias unimap='docker run -it --rm --name unimap unimap'
Сборка образа Docker вручную:
1. git clone https://github.com/Edu4rdSHL/unimap.git && cd unimap
2. docker build --tag unimap .
3. docker run -it --rm --name unimap unimap -t hackerone.com --fast-scan
# Set alias in ~/.bashrc or ~/.zshrc for global use
4. alias unimap='docker run -it --rm --name unimap unimap'
Загрузите последнюю версию для вашей ОС и используйте её.
unimap можно установить из доступных пакетов AUR с помощью AUR-helper. Например,
$ paru -S unimap
Если вы предпочитаете, вы можете клонировать пакеты AUR и затем скомпилировать их с помощью makepkg. Например,
git clone https://aur.archlinux.org/unimap.git && cd unimap && makepkg -si
Для запуска Nmap TCP SYN (Stealth) Scan Unimap требует привилегий root/администратора, мы используем его для точности и производительности. Если вы используете Linux или Linux-подобную систему, просто используйте root-оболочку или запустите инструмент с sudo, в Windows вы можете открыть командную строку (CMD) от имени администратора и запустить инструмент как обычно.
unimap -f targets.txt -u log.csv выполняет полное сканирование и записывает вывод в log.csv.unimap -f targets.txt --fast-scan -o выполняет быстрое сканирование и сохраняет файл журнала в папку logs/.sudo unimap -f targets.txt --ports "1-1000" --min-rate 5000 сканирует порты с 1 по 1000 с определением служб и версий (если нужно быстрое сканирование, используйте флаг --fast-scan) с min-rate 5000.--threads и --min-rate (последнее особенно важно).Откройте issue.