Сканирование портов и разведка с помощью nmap, часть 2: скрипты nmap (nse)

  • Автор темы Автор темы LeSh1y777
  • Дата начала Дата начала

LeSh1y777

Пользователь
Регистрация
25/9/25
Сообщения
5,682
Репутация
49
Лайки
152
Депозит
-8.95$
Добро пожаловать обратно, мои начинающие кибервоины!

В предыдущей публикации на Hackers-Arise япознакомил вас с важнейшим инструментом в арсенале пентестера/хакера.Каждый пентестер/хакер должен уметь пользоваться nmap.

Впервые представленный Фёдором в 1998 году в журнале Phrack, nmap уже более 20 лет является неотъемлемой частью инструментария каждого хакера/пентестера. nmap — это продуманный, хорошо документированный и надёжный инструмент, но NSE (скриптовый движок Nmap) выводит nmap на совершенно новый уровень!

NSE преобразует функционал nmap из классического инструмента сканирования портов в инструмент, способный сканировать уязвимости, обнаруживать сети, проводить фаззинг, взламывать пароли и даже эксплуатировать уязвимости. В настоящее время в Kali встроено 603 скрипта, но активное и преданное своему делу сообщество разработчиков ПО с открытым исходным кодом практически ежедневно разрабатывает новые скрипты и функции. Эти скрипты разделены на несколько категорий, включая:

  1. аутентификация
  2. транслировать
  3. скотина
  4. по умолчанию
  5. открытие
  6. dos (отказ в обслуживании)
  7. эксплуатировать
  8. внешний
  9. фаззер
  10. навязчивый
  11. вредоносное ПО
  12. безопасный
  13. версия
  14. vuln (уязвимость)
NSE — это полностью разработанный язык программирования, в скриптах которого используется язык программирования Lua.

Базовый синтаксис

Синтаксис использования скриптов nmap аналогичен синтаксису базовой команды nmap, за исключением ключевого слова «–script=». Для вызова NSE можно использовать ключевое слово –script=, за которым следует имя скрипта или его категория, а затем IP-адрес целевой системы, например:

Кали > nmap –script vuln 192.168.1.101

Эта команда запустит серию скриптов в категории «уязвимость» и выведет данные только в случае обнаружения уязвимости.

Давайте подробнее рассмотрим скрипты nmap (NSE) в нашей системе Kali 2020.

Шаг №1: Запустите Kali и откройте терминал.

Начнем с запуска Kali Linux 2020 и открытия терминала, как показано ниже.

6a4a49_0ef49cabc1a24d5f96f0e417218c6a60~mv2.png


Шаг №2: Поиск скриптов NSE

В Kali 2020 встроено несколько скриптов NSE. Чтобы найти их, можно использовать команду Linux locate, указав подстановочный знак * и расширение каждого скрипта NMAP «.nse». Это позволит найти все файлы с этим расширением, включая все скрипты NMAP.

kali > locate *.nse

6a4a49_5eadf7917efa4ec292ec8a243bffa88d~mv2.png


Как видите, скриптов nmap довольно много. Чтобы сохранить список в файл, просто введите:

kali > locate *.nse >nmapscripts

6a4a49_b0724660faf848ab8fb24be72f12f74f~mv2.png


Затем, чтобы увидеть общее количество скриптов, просто используйте команду cat, за которой следует опция -n и имя файла, например;

kali > cat -n nmapscripts

6a4a49_88de09c38fd448a48567e7d89bf66c79~mv2.png


Как вы видите, в Kali Linux 2020 установлено 603 скрипта nmap. Дополнительную информацию об этих скриптах можно найти на веб-сайте скриптов nmap по адресу:

https://nmap.org/nsedoc/

Как вы можете видеть ниже, на этой странице для каждого скрипта имеется объяснение его функции.

6a4a49_a40050635ac749a3930ceba70fe4618c~mv2.png


Шаг №3: Помощь NSE

Хотя на сайте nmap есть элементарные объяснения каждого скрипта, если вам нужна дополнительная информация о скрипте, вы можете использовать ключ «–script-help=», а затем указать имя скрипта или категории скриптов. Например, если мне нужна дополнительная информация о категории скриптов «vuln», я могу просто ввести:

Кали > nmap -scripts-help=vuln

6a4a49_1679b1a1c0c24b29b8af687f0f31b536~mv2.png


Обратите внимание, что nmap возвращает каждый скрипт в категории с подробным пояснением.

Шаг №4: Тестирование категории скриптов уязвимостей на сервере Linux OWASP-BWA

Давайте попробуем использовать целую категорию скриптов nmap против сервера OWASP BWA. С помощью скриптов nmap можно запустить любой скрипт из этой категории (см. категории выше), просто указав
ключ –script и название категории, например, «vuln».

Категория уязвимостей включает скрипты для проверки известных уязвимостей в целевой системе. Чтобы запустить всю категорию уязвимостей на целевой системе, мы можем просто ввести:

Кали > nmap –script vuln 192.168.100.102

6a4a49_a10cf9a468be47ea9713451de12c03ac~mv2.png


Мы можем более точно определить уязвимости SQL-инъекции, используя скрипт «http-sql-injection». Для начала давайте посмотрим на его экран справки.

kali > nmap –scripts-help=http-sql-injection

6a4a49_02c257c82db747339710d9a84ac5057f~mv2.png


После нажатия Enter nmap предоставляет подробное описание этого скрипта. В этом справочном окне объясняется, что этот скрипт ищет на HTTP-сервере URL-адреса, уязвимые для атак с использованием SQL-инъекций.

Теперь давайте попробуем выполнить этот скрипт на нашем сервере OWASP BWA.

кали >nmap –script=http-sql-injection 192.168.1.101

6a4a49_8b652740e0104cdfaaeda4b4a36dca06~mv2.png


Как вы можете видеть выше, этот скрипт обнаружил 6 потенциальных уязвимостей SQL-инъекции на этом веб-сайте.

Шаг 5: Тестирование других скриптов nmap в категории http

Давайте попробуем другой скрипт из категории «http». Что, если нам нужны формы входа для подбора имени пользователя и пароля? Мы можем найти каждую из них с помощью скрипта «http-auth-finder». Давайте запустим его на нашем сервере OWASP BWA и посмотрим, сможет ли он найти формы аутентификации.

кали > nmap –script="http-auth-finder" 192.168.1.101

6a4a49_949bfbdba24647eda1a41bd546627f20~mv2.png


Как видите выше, этот скрипт обнаружил две формы аутентификации в этой системе. Теперь, когда мы знаем, где они находятся, мы можем использовать такие инструменты, как BurpSuite или THC-Hydra, для перебора паролей.

Шаг №6: Тестирование скриптов Nmap в Windows 7 на предмет уязвимости EternalBlue

Теперь попробуем использовать скрипты nmap на непатченной системе Windows 7 Professional. Эти непатченные системы Windows 7 часто уязвимы к эксплойту EternalBlue, разработанному АНБ США и выпущенному группой Shadowbrokers в 2017 году.

Давайте сначала посмотрим на экран справки по скрипту сканера уязвимостей EternalBlue в скриптах Nmap. Его можно найти, выполнив поиск по номеру уязвимости, присвоенному Microsoft, «ms17-010» и введя:

kali > locate *.nse | grep ms17-010

Теперь, когда мы нашли подходящий сценарий для этой задачи, давайте посмотрим на его экран справки.

Кали > nmap –script-help=smb-vuln-ms17-0101.nse

6a4a49_6e6562cb2fb84759a2a33abdfc6204ad~mv2.png


Как видно выше, этот скрипт «пытается определить, уязвим ли сервер Microsoft SMBv1». Он также указывает на то, что эта уязвимость активно эксплуатируется вирусами-вымогателями WannaCry и Petya. Подробнее об EternalBlue можно узнать здесь .

Наконец, давайте запустим этот скрипт на нашей системе Windows 7 и посмотрим, уязвима ли она для этого вредоносного ПО.

Кали >nmap –script=smb-vuln-ms17-010.nse 192.168.1.103

6a4a49_f70b387d988948078b22302dfdbfbdef~mv2.png


Как видите выше, эта система уязвима! Чтобы воспользоваться этой уязвимостью, вы можете попробовать эксплойт EternalBlue в Metasploit, чтобы получить доступ к этой системе .

Краткое содержание

Nmap — отличный инструмент для любого пентестера/хакера, который должен быть в арсенале каждого. Добавление скриптов NSE к Nmap превращает его в универсальный инструмент для тестирования уязвимостей, фаззинга, брутфорса и даже эксплуатации! Благодаря всем этим возможностям, доступным хакеру/пентестеру, Nmap и скрипты Nmap могут заменить собой целый ряд других инструментов.
 
Назад
Сверху Снизу