Определение сервисов и операционных систем
Используйте Nmap -sV и -O для определения работающих сервисов и операционных систем.
«Определение сервисов и операционных систем» — бесплатный урок Cyber Security Academy на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cyber Security Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cyber Security Academy содержит 4 уроков всего.
Почему важна идентификация систем
Знание точной версии службы и OS превращает список открытых портов в практический список целей. Данные о версиях напрямую сопоставляются с номерами CVE и модулями эксплуатации.
Определение версий служб с помощью -sV
nmap -sV проверяет каждый открытый порт с помощью полезных нагрузок, специфичных для службы, и сопоставляет ответы со своей базой данных проб (nmap-service-probes), чтобы определить программное обеспечение и его версию.
sudo nmap -sV -p 22,80,443,3306 192.168.1.100
# 22/tcp open ssh OpenSSH 7.4
# 80/tcp open http nginx 1.18.0
# 3306/tcp open mysql MySQL 5.7.38Уровни интенсивности для -sV
Параметр --version-intensity (0–9) управляет агрессивностью проверок Нмап. Более высокая интенсивность позволяет обнаружить больше служб, но увеличивает время сканирования и создаёт больше сетевого шума.
sudo nmap -sV --version-intensity 9 192.168.1.100
# 9 = try all probes (slowest, most accurate)
# 0 = only most likely probes (fastest)Определение OS с помощью -O
nmap -O использует идентификацию по особенностям стека TCP/IP — значениям TTL, размерам TCP-окон и параметрам IP, — чтобы предположить используемую OS. Результаты включают процент уверенности.
sudo nmap -O 192.168.1.100
# OS details: Linux 4.15 - 5.6
# Network Distance: 1 hop
# Requires at least one open and one closed portАгрессивное сканирование -A
Параметр -A одновременно включает определение OS, определение версий, сканирование сценариями и трассировку маршрута. Он полезен для быстрого комплексного сканирования в лабораторных средах.
sudo nmap -A 192.168.1.100
# Combines: -O -sV -sC --tracerouteПолучение баннера с помощью Нетката
Получение баннера вручную извлекает баннер службы, который сервер отправляет при установлении соединения. Это простой и малозаметный вариант полной идентификации с помощью Нмап.
# HTTP banner
nc 192.168.1.100 80
GET / HTTP/1.0
# SSH banner
nc 192.168.1.100 22
# Returns: SSH-2.0-OpenSSH_8.9p1Получение баннера с помощью кёрла
Флаг -I утилиты кёрл получает только заголовки ответа, раскрывая программное обеспечение и версию сервера, а также используемый технологический стек, без загрузки содержимого.
curl -I http://192.168.1.100
# HTTP/1.1 200 OK
# Server: Apache/2.4.52 (Ubuntu)
# X-Powered-By: PHP/8.1.2WhatWeb для идентификации веб-технологий
WhatWeb определяет веб-технологии: CMS, библиотеки JavaScript, системы аналитики, серверное программное обеспечение и фреймворки. Инструмент специально предназначен для разведки веб-приложений.
whatweb http://target.com
# Output:
# WordPress [v6.2], Apache[2.4.52],
# PHP[8.1], jQuery[3.6.0]Механизм сценариев NSE для идентификации
Сценарии NSE расширяют возможности Нмап по идентификации систем. Сценарии http-server-header, ssh-hostkey и banner извлекают подробную информацию.
nmap --script=banner 192.168.1.100
nmap --script=http-server-header 192.168.1.100
nmap --script=ssh-hostkey 192.168.1.100Сопоставление с CVE
Получив версии служб, выполните поиск в Национальной базе данных уязвимостей (NVD) или используйте такие инструменты, как searchsploit, чтобы найти известные эксплойты для точно установленной версии.
searchsploit apache 2.4.49
searchsploit openssh 7.4
# Or search NVD:
# https://nvd.nist.gov/vuln/searchКак защитнику скрывать признаки системы
Защитники могут скрывать баннеры: удалять заголовки Server, настраивать баннеры SSH и использовать стук по портам. Однако безопасность за счёт сокрытия информации лишь повышает порог атаки — это не устранение проблемы.
# Apache: suppress version
ServerTokens Prod
ServerSignature Off
# Nginx
server_tokens off;Быстрая проверка
Какой параметр Нмап объединяет определение OS, определение версий и сканирование сценариями?
Итоги: идентификация систем
Идентификация систем превращает необработанные списки портов в практическую разведывательную информацию. Сочетайте -sV и -O для автоматического определения, вручную получайте баннеры для малозаметного подтверждения и используйте WhatWeb для анализа веб-стеков. Всегда сверяйте строки версий с базами данных CVE.
Изучай Cyber Security Academy с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 76
- Уроки
- 303
Часто задаваемые вопросы
Урок «Определение сервисов и операционных систем» бесплатный?
Да — полный текст урока «Определение сервисов и операционных систем» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cyber Security Academy, подпишись на CoddyKit PRO. Курс Cyber Security Academy содержит 4 уроков всего.
Чему я научусь в уроке «Определение сервисов и операционных систем»?
Используйте Nmap -sV и -O для определения работающих сервисов и операционных систем. Ты практикуешь Cyber Security Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Cyber Security Academy?
Предыдущий опыт не требуется. Cyber Security Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.
Сколько времени занимает урок «Определение сервисов и операционных систем»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Cyber Security Academy?
Да. Каждый урок Cyber Security Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Методы сканирования портов Nmap
- Определение сервисов и операционных систем
- Netcat: швейцарский армейский нож
- Скрипты перечисления сети