Число
7.991 добавил 8 скриптов DICOM и дошёл до 620 скриптов NSE. Выпуск 7.96 доходил до 612.
Версия 7.991
Обнаружение узлов, состояния портов TCP и UDP, версии служб, предположения об ОС и 620 скриптов NSE. Zenmap показывает те же результаты в окне. Ncat, Ndiff и Nping входят в комплект.
Заметки ниже используют флаги и имена экранов из программы. Сканируйте только системы, которые вам разрешено проверять. Неполадки установки: в руководствах по устранению.
Узлы
Ping-сканирование (-sn) спрашивает, какие адреса включены, и пропускает список портов. В локальном сегменте Ethernet Nmap может использовать ARP. В маршрутизируемой сети он также может использовать пробы ICMP echo, TCP и UDP.
Intense scan на этом снимке начинается с ping, затем SYN-сканирование 1,000 портов и загрузка NSE. Команда, которую показывает Zenmap: nmap -T4 -A -v -PE -PS22,25,80 -PA21,23,80,3389. Флаг -A включает определение ОС, определение версии, скрипты по умолчанию и traceroute.
Если сканирование собственного ПК в Windows не удаётся, обычная причина: отсутствует драйвер Npcap. Смотрите сканирование localhost в Windows.
Порты
Порт бывает open, closed, filtered, unfiltered, open|filtered или closed|filtered. Open значит, что приложение приняло пробу. Closed значит, что узел ответил и никто не слушает порт. Filtered значит, что фильтр отбросил пробу, и Nmap не может определить состояние.
| Приём | Флаг | Что вы узнаёте |
|---|---|---|
| TCP SYN | -sS | Принимает ли порт TCP начало рукопожатия. Это обычное сканирование, когда сырые пакеты разрешены. |
| TCP connect | -sT | Тот же вопрос через сокетный API операционной системы. Работает без Npcap. В Windows выпуск 7.96 перестал помечать многие закрытые порты как filtered. |
| UDP | -sU | Отвечает ли порт UDP. Это медленнее TCP. Используйте, когда важны DNS, SNMP или похожие службы. |
| TCP ACK | -sA | Выглядит ли порт как unfiltered. Само по себе это не говорит, что служба открыта. |
| Только ping | -sn | Какие узлы включены, без сканирования портов. |
| Пропуск обнаружения | -Pn | Считать каждую цель включённой. Полезно, когда ICMP блокируется и вы уже знаете, что узел существует. |
Другие типы проб описаны в man-странице, установленной вместе с Nmap. Эта страница не разбирает обход межсетевого экрана.
Службы
-sV обращается к открытому порту и печатает имя службы и версию, если баннер узнан. На снимке порт 22: ssh со строкой OpenSSH, порт 53: domain с ISC BIND, порт 80: http с Apache httpd. Порт 25 и порт 113 закрыты.
-O сравнивает ответы с базой отпечатков. На снимке сказано, что совпадение ОС не идеально, потому что не пришёл ответ UDP. Это обычный исход, а не сбой установки. Nmap 7.99 добавил большой набор новых отпечатков ОС для IPv4 и IPv6 и обновил отпечатки служб.
--version-light: более лёгкая проба версии, она используется в показанном здесь профиле Quick scan plus.
Скрипты
Nmap Scripting Engine запускает скрипты Lua против выбранных вами служб. Скрипты лежат в категориях вроде default, discovery, auth и vuln. Можно запустить набор по умолчанию, одну категорию или один скрипт. Флаг -A включает набор по умолчанию.
7.991 добавил 8 скриптов DICOM и дошёл до 620 скриптов NSE. Выпуск 7.96 доходил до 612.
Поток скрипта, который работает дольше 5 секунд без передачи управления, например без вызова сокета, принудительно останавливается.
Выделение свыше 400 MB вызывает ошибку. Проект говорит, что эти пределы позже могут измениться.
Используйте NSE на узлах, которые вам разрешено проверять. Скрипт может войти в систему, перечислить данные или затронуть службу, поэтому прочитайте его имя, прежде чем добавлять.
Интерфейс
Zenmap: официальный интерфейс. Поле цели, меню профиля и командная строка: верх окна. Вкладки: Nmap Output, Ports / Hosts, Topology, Host Details и Scans. Профили на снимках включают Quick scan, Quick scan plus и Intense scan. Нажатие Scan запускает команду в поле Command, так что её можно прочитать заранее.
7.96 добавил тёмный режим в меню Profile, пункт Toggle Dark Mode. 7.991 исправил сбои редактора профилей, когда сохранённая команда содержала знак процента, а также сбой KeyError: 'vl_6_logo' и DuplicateSectionError в редакторе профилей. Если старый Zenmap всё ещё закрывается, обновитесь и прочитайте руководство по Zenmap.
Установщик
Установщик Windows: это установка Nullsoft. Он спрашивает папку и какие части оставить: основные файлы Nmap, регистрацию PATH, драйвер пакетов, Zenmap, Ncat и Ndiff. Nping тоже входит в комплект.
Этот снимок старый. В нём всё ещё указан WinPcap. Текущие установщики ставят Npcap. Не ищите флажок WinPcap в 7.991. Размеры файлов и SHA-256: на странице загрузки.
Остальной комплект
Ncat читает и пишет по сети и может использовать TLS. Именно его антивирусы помечают чаще всего, потому что он может присоединить программу к соединению. 7.991 исправил зависание с расходом памяти в коде HTTP-прокси Ncat и для режима connect, и для режима listen. Режим listen больше не посылает сигналы завершения всей группе процессов. В Windows исправлена ошибка, из-за которой Ncat завершался примерно через 2 минуты при чтении stdin.
Сравнивает два результата сканирования, чтобы увидеть изменившийся узел или порт. 7.991 исправил make check-ndiff на Python 3.12 и новее.
Создаёт пакеты и показывает ответы. Параметр --rate отказывается от скорости выше 1,000 пакетов в секунду, потому что таймеры Nsock считаются в миллисекундах. Используйте --delay 0, если предел не нужен. В Windows без Npcap Nping может перейти в режим TCP connect.
Скорость
Шаблоны меняют, как быстро уходят пробы. Более быстрый вариант не всегда лучше в рабочей локальной сети.
Paranoid и sneaky. Очень медленно. Редко нужно для инвентаризации.
Polite. Более спокойный выбор, когда нельзя забивать канал.
Normal. Значение по умолчанию, если не передан -T.
Aggressive. Профили Quick scan и Intense scan на снимках используют -T4.
Insane. Легко задеть мониторинг и потерять точность. Оставьте его для лаборатории.
Файлы
Текст, который вы видите на вкладке Nmap Output. -oN записывает его в файл.
-oX: формат, которого ждут другие инструменты, включая Ndiff.
-oG: стиль в одну строку для быстрого поиска. XML лучше как архив.
-oA пишет обычный, XML и grepable файлы из одного сканирования. 7.991 также позволяет --stats-every печатать ход, когда нет терминала, вместе с --noninteractive.