📌 Шпаргалка #05

🔎 NMAP сканирование

✍️ pentestudy 📅 26.03.2026

📌 Логика именования флагов

Nmap строит флаги по схеме: дефис + буква категории + буква действия. Три главных префикса:

  • -sкак сканировать (метод)
  • -Pкак пинговать (обнаружение хоста)
  • -oкуда писать (вывод)

Буква после префикса — первая буква того, что хочешь: SYN, UDP, Version, None, XML...


⚡ -s = SCAN (тип сканирования)

nmap -sS 10.0.0.1

Scan SYN — полуоткрытое сканирование. Шлёт SYN, получает SYN/ACK, сбрасывает RST. Не завершает handshake → меньше следов в логах.

nmap -sT 10.0.0.1

Scan TCP connect — полный TCP handshake. Без root — единственный вариант. Логируется серверами.

nmap -sU 10.0.0.1

Scan UDP — медленное, но ловит SNMP (161), DNS (53), TFTP (69) — то что часто забывают.

nmap -sA 10.0.0.1

Scan ACK — не ищет открытые порты, но маппит правила файрвола — что фильтруется, а что нет.

nmap -sN 10.0.0.1

Scan Null — TCP-пакет без флагов. Обходит некоторые stateless-файрволы.

nmap -sF 10.0.0.1

Scan FIN — только флаг FIN. Аналогичный трюк обхода.

nmap -sX 10.0.0.1

Scan Xmas — флаги FIN+PSH+URG — как гирлянда. Против простых файрволов.

nmap -sV 10.0.0.1

Scan Version — определяет ЧТО реально крутится на порту. Без этого порт 80 — просто "открыт".

nmap -sn 192.168.1.0/24

Scan, no port scan — ping-sweep: найти живые хосты, порты НЕ сканировать. Первый шаг разведки.

nmap -sL 192.168.1.0/24

Scan List — только вывести список целей + DNS. Ноль пакетов в сторону цели.

nmap -sC 10.0.0.1

Scan with default sCripts — дефолтные NSE-скрипты. То же что --script=default.


📡 -P = PROBE (обнаружение хостов)

nmap -Pn 10.0.0.1

Probe none — не пинговать, считать хост живым. Критично когда ICMP заблокирован.

nmap -PS 10.0.0.1

Probe SYN — проверка живости через SYN-пакет.

nmap -PA 10.0.0.1

Probe ACK — через ACK-пакет.

nmap -PU 10.0.0.1

Probe UDP — через UDP-пакет.

nmap -PE 10.0.0.1

Probe Echo — классический ICMP ping.


🖥 Одиночные флаги

nmap -O 10.0.0.1

OS detection — определение ОС по TCP/IP fingerprint.

nmap -A 10.0.0.1

Aggressive — всё сразу: -sV + -O + -sC + traceroute. Удобно но шумно.

nmap -n 10.0.0.1

no DNS — не резолвить IP → быстрее сканирование.

nmap -v 10.0.0.1

verbose — подробный вывод в реальном времени. -vv — ещё подробнее.

nmap -iL targets.txt

Input from List — читать список целей из файла.


🛡 Обход файрволов / IDS

-F — быстрое сканирование

nmap -F 10.0.0.1

Сканирует только 100 самых популярных портов вместо стандартных 1000. Быстрее и менее заметно.

-f — фрагментация пакетов

nmap -sS -f <target>

Дробит пакеты на маленькие фрагменты по 8 байт. Фаервол или IDS получает куски вместо цельного пакета и может не собрать картину. Результат — сканирование проходит незамеченным.

-f -f — ещё мельче

nmap -sS -f -f <target>

Фрагменты по 16 байт. Чем мельче куски, тем сложнее IDS собрать картину. Используется когда обычный -f не помог обойти фильтр.

--mtu — ручной размер фрагмента

nmap -sS --mtu 24 <target>   # фрагменты по 24 байта
nmap -sS --mtu 32 <target>   # фрагменты по 32 байта

Задаёшь размер фрагмента в байтах. Число должно быть кратно 8. Даёт точный контроль — можно подобрать размер, который конкретный фаервол не обрабатывает.

-f — это по сути --mtu 8, а -f -f — это --mtu 16.

-D — Decoy (приманки)

Самая интересная техника. Nmap отправляет пакеты якобы от нескольких разных IP одновременно с твоими. В логах цели вместо одного атакующего — куча источников, и непонятно кто настоящий.

nmap -sS -D 10.0.0.1,10.0.0.2,10.0.0.3,ME <target>
  • ME — твой реальный IP среди фейковых
  • Если не указать ME — Nmap вставит его в случайную позицию

Автоматические decoy:

nmap -sS -D RND:5 <target>   # 5 случайных адресов

Decoy-адреса должны быть «живыми» хостами. Иначе цель получит SYN от несуществующего IP, не получит завершение хендшейка и может отфильтровать как SYN-flood.

-S — подмена IP

nmap -S 192.168.1.100 -e eth0 10.0.0.1

Подмена исходного IP. Нужен контроль над сетью для получения ответов.

Другие техники обхода

nmap --source-port 53 10.0.0.1

Отправка с порта DNS. Некоторые файрволы доверяют трафику с "системных" портов.

nmap --data-length 50 10.0.0.1

Добавить мусорные байты к пакетам. Ломает сигнатуры Nmap в IDS.

nmap --scan-delay 5s 10.0.0.1

Пауза между пакетами. Обходит rate-based детекцию.

nmap --spoof-mac 0 10.0.0.1

Случайный MAC (только локальная сеть).


⏱ -T = TIMING (скорость)

Флаг Название Описание
-T0 Paranoid 1 пакет в 5 мин, обход IDS
-T1 Sneaky Тихо, медленно
-T2 Polite Не грузит сеть
-T3 Normal По умолчанию
-T4 Aggressive CTF, лабы, пентест
-T5 Insane Максимум, можно потерять данные

💾 -o = OUTPUT (вывод)

nmap -oN scan.txt 10.0.0.1     # Normal — текст
nmap -oX scan.xml 10.0.0.1     # XML — для Metasploit, Dradis
nmap -oG scan.gnmap 10.0.0.1   # Grepable — для grep/awk
nmap -oA scan 10.0.0.1         # All — все три сразу (используй всегда)

🎯 -p = PORTS

nmap -p 80,443 10.0.0.1        # конкретные порты
nmap -p 1-1000 10.0.0.1        # диапазон
nmap -p- 10.0.0.1              # все 65535
nmap -p U:53,T:80 10.0.0.1     # указать протокол
nmap --top-ports 100 10.0.0.1  # топ-100 популярных

📎 NSE-скрипты (топ)

nmap --script=vuln 10.0.0.1             # поиск CVE
nmap --script=http-enum 10.0.0.1        # перечисление директорий
nmap --script=smb-enum-shares 10.0.0.1  # SMB-шары
nmap --script=ftp-anon 10.0.0.1         # анонимный FTP
nmap --script=dns-brute example.com     # брутфорс поддоменов
nmap --script="http-*" 10.0.0.1        # все HTTP-скрипты

🔧 Полезные мелочи

nmap --open 10.0.0.1           # только открытые порты
nmap --reason 10.0.0.1         # почему порт open/closed/filtered
nmap -6 fe80::1                # сканирование IPv6
nmap --traceroute 10.0.0.1     # трассировка маршрута
nmap --min-rate 1000 10.0.0.1  # минимум 1000 пакетов/сек
nmap --max-retries 1 10.0.0.1  # меньше повторов, быстрее

🧠 Готовые комбо

Полное сканирование

nmap -sS -sV -sC -O -p- -T4 -oA full 10.0.0.1

Быстрая разведка сети

nmap -sn -T4 192.168.1.0/24

Тихое сканирование (evasion)

nmap -sS -T1 -f --data-length 50 -D RND:5 -Pn -n 10.0.0.1

Фрагментация + приманки + причины

nmap -sS -f -D RND:3 --reason <target>

Хороший набор для разведки через файрвол.

Поиск уязвимостей

nmap --script vuln -sV -p 80,443,445 10.0.0.1

Разведка SMB

nmap --script smb-enum-shares,smb-os-discovery -p 445 10.0.0.1
Содержание
📌 Логика именования флагов ⚡ -s = SCAN (тип сканирования) 📡 -P = PROBE (обнаружение хостов) 🖥 Одиночные флаги 🛡 Обход файрволов / IDS -F — быстрое сканирование -f — фрагментация пакетов -f -f — ещё мельче --mtu — ручной размер фрагмента -D — Decoy (приманки) -S — подмена IP Другие техники обхода ⏱ -T = TIMING (скорость) 💾 -o = OUTPUT (вывод) 🎯 -p = PORTS 📎 NSE-скрипты (топ) 🔧 Полезные мелочи 🧠 Готовые комбо Полное сканирование Быстрая разведка сети Тихое сканирование (evasion) Фрагментация + приманки + причины Поиск уязвимостей Разведка SMB