Скриптное сканирование с использованием Nmap
На этом последнем этапе мы рассмотрим скриптовый движок Nmap (NSE - Nmap Scripting Engine). NSE является очень важной частью Nmap, которая делает его еще более полезным. Он позволяет пользователям писать и обмениваться скриптами для автоматизации различных сетевых задач. Это означает, что вы можете использовать скрипты для выполнения задач быстрее и эффективнее, чем вручную.
Понимание скриптового движка Nmap (NSE)
Скриптовый движок Nmap (NSE) является одной из самых мощных и гибких функций Nmap. Представьте его как набор инструментов, который предоставляет вам дополнительные средства для работы с сетями. Вы можете писать скрипты на языке программирования Lua. Lua - это простой и легкий для изучения язык, что делает его идеальным для написания таких скриптов.
Эти скрипты могут использоваться для различных целей:
- Сетевой поиск (Network discovery): Это помогает определить, какие устройства находятся в сети.
- Определение версии: Вы можете узнать, какие версии программного обеспечения работают на устройстве.
- Определение уязвимостей: Может найти уязвимости безопасности в системе.
- Поиск бэкдоров: Помогает обнаружить скрытые пути, которые злоумышленники могут использовать для доступа к системе.
- Эксплуатация уязвимостей: Хотя это должно выполняться в легальном и этическом тестовом окружении, оно может показать, как злоумышленник может воспользоваться уязвимостью.
Nmap поставляется с набором предварительно написанных скриптов. Эти скрипты организованы в библиотеки в зависимости от их назначения. Таким образом, если вы хотите выполнить определенную задачу, вы можете легко найти подходящий скрипт в соответствующей библиотеке.
Выполнение базового скриптового сканирования
Для начала базового скриптового сканирования мы будем использовать опцию -sC
. Эта опция сообщает Nmap запустить набор стандартных скриптов. Эти стандартные скрипты разработаны так, чтобы быть безопасными и неинвазивными. Это означает, что они не причинят вреда целевой системе при выполнении своей задачи.
Запустим следующую команду:
nmap -sC localhost
При выполнении этой команды Nmap начнет сканировать ваш локальный компьютер. Он будет использовать стандартные скрипты для сбора информации об открытых портах и работающих на них службах. Вывод будет выглядеть примерно так:
Starting Nmap 7.80 ( https://nmap.org ) at 2024-03-15 12:30 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00010s latency).
Not shown: 994 closed ports
PORT STATE SERVICE
22/tcp open ssh
| ssh-hostkey:
| 3072 01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef (RSA)
| 256 fe:dc:ba:98:76:54:32:10:fe:dc:ba:98:76:54:32:10 (ECDSA)
|_ 256 01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef (ED25519)
3000/tcp open ppp
3001/tcp open nessus
3002/tcp open ssl/nessus
8080/tcp open http-proxy
|_http-title: Welcome to nginx!
Nmap done: 1 IP address (1 host up) scanned in 1.31 seconds
Запуск конкретного скрипта
Если вы хотите запустить определенный скрипт, вы можете использовать опцию --script
. После этой опции вам нужно указать имя скрипта или категорию, к которой он относится.
Например, предположим, что вы хотите получить заголовок веб - страницы. Есть скрипт с именем http - title
, который может сделать это для вас. Чтобы запустить этот скрипт, используйте следующую команду:
nmap --script=http-title -p 8080 localhost
Эта команда сообщает Nmap запустить скрипт http - title
на порту 8080 вашего локального компьютера. Вывод будет выглядеть так:
Starting Nmap 7.80 ( https://nmap.org ) at 2024-03-15 12:35 CST
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00011s latency).
PORT STATE SERVICE
8080/tcp open http-proxy
|_http-title: Welcome to nginx!
Nmap done: 1 IP address (1 host up) scanned in 0.23 seconds
Понимание результатов скриптового сканирования
Результаты скриптового сканирования предоставляют более подробную информацию о службах, работающих на открытых портах.
- Для службы SSH на порту 22 скрипт
ssh - hostkey
извлек ключи хоста. Эти ключи важны для безопасного обмена данными по протоколу SSH.
- Для службы HTTP на порту 8080 скрипт
http - title
извлек заголовок веб - страницы, который является "Welcome to nginx!".
Такая информация очень полезна для оценки безопасности. Она помогает понять, как службы на целевой системе настроены и как они ведут себя.
Используя скриптовый движок Nmap, вы исследовали одну из его самых мощных функций. Эта функция может сэкономить вам много времени и усилий при выполнении задач по поиску в сети и оценке безопасности.
Очистка
Теперь, когда вы завершили все этапы сканирования, пришло время провести очистку. В начале лабораторной работы вы создали контейнер Docker. Мы должны остановить и удалить этот контейнер, чтобы сохранить чистоту вашей системы.
Запустите следующую команду:
docker stop cyber-seed-server && docker rm cyber-seed-server
Эта команда сначала останавливает запущенный контейнер Docker с именем cyber - seed - server
, а затем удаляет его из вашей системы.
Поздравляем! Вы успешно завершили все этапы этой лабораторной работы. Вы получили ценный практический опыт в использовании различных методов сканирования с помощью Nmap.