Добро пожаловать обратно, мои начинающие кибервоины!
В предыдущей публикации на Hackers-Arise япознакомил вас с важнейшим инструментом в арсенале пентестера/хакера.Каждый пентестер/хакер должен уметь пользоваться nmap.
Впервые представленный Фёдором в 1998 году в журнале Phrack, nmap уже более 20 лет является неотъемлемой частью инструментария каждого хакера/пентестера. nmap — это продуманный, хорошо документированный и надёжный инструмент, но NSE (скриптовый движок Nmap) выводит nmap на совершенно новый уровень!
NSE преобразует функционал nmap из классического инструмента сканирования портов в инструмент, способный сканировать уязвимости, обнаруживать сети, проводить фаззинг, взламывать пароли и даже эксплуатировать уязвимости. В настоящее время в Kali встроено 603 скрипта, но активное и преданное своему делу сообщество разработчиков ПО с открытым исходным кодом практически ежедневно разрабатывает новые скрипты и функции. Эти скрипты разделены на несколько категорий, включая:
Кали > nmap –script vuln 192.168.1.101
Эта команда запустит серию скриптов в категории «уязвимость» и выведет данные только в случае обнаружения уязвимости.
Давайте подробнее рассмотрим скрипты nmap (NSE) в нашей системе Kali 2020.
kali > locate *.nse
Как видите, скриптов nmap довольно много. Чтобы сохранить список в файл, просто введите:
kali > locate *.nse >nmapscripts
Затем, чтобы увидеть общее количество скриптов, просто используйте команду cat, за которой следует опция -n и имя файла, например;
kali > cat -n nmapscripts
Как вы видите, в Kali Linux 2020 установлено 603 скрипта nmap. Дополнительную информацию об этих скриптах можно найти на веб-сайте скриптов nmap по адресу:
https://nmap.org/nsedoc/
Как вы можете видеть ниже, на этой странице для каждого скрипта имеется объяснение его функции.
Кали > nmap -scripts-help=vuln
Обратите внимание, что nmap возвращает каждый скрипт в категории с подробным пояснением.
ключ –script и название категории, например, «vuln».
Категория уязвимостей включает скрипты для проверки известных уязвимостей в целевой системе. Чтобы запустить всю категорию уязвимостей на целевой системе, мы можем просто ввести:
Кали > nmap –script vuln 192.168.100.102
Мы можем более точно определить уязвимости SQL-инъекции, используя скрипт «http-sql-injection». Для начала давайте посмотрим на его экран справки.
kali > nmap –scripts-help=http-sql-injection
После нажатия Enter nmap предоставляет подробное описание этого скрипта. В этом справочном окне объясняется, что этот скрипт ищет на HTTP-сервере URL-адреса, уязвимые для атак с использованием SQL-инъекций.
Теперь давайте попробуем выполнить этот скрипт на нашем сервере OWASP BWA.
кали >nmap –script=http-sql-injection 192.168.1.101
Как вы можете видеть выше, этот скрипт обнаружил 6 потенциальных уязвимостей SQL-инъекции на этом веб-сайте.
кали > nmap –script="http-auth-finder" 192.168.1.101
Как видите выше, этот скрипт обнаружил две формы аутентификации в этой системе. Теперь, когда мы знаем, где они находятся, мы можем использовать такие инструменты, как BurpSuite или THC-Hydra, для перебора паролей.
Давайте сначала посмотрим на экран справки по скрипту сканера уязвимостей EternalBlue в скриптах Nmap. Его можно найти, выполнив поиск по номеру уязвимости, присвоенному Microsoft, «ms17-010» и введя:
kali > locate *.nse | grep ms17-010
Теперь, когда мы нашли подходящий сценарий для этой задачи, давайте посмотрим на его экран справки.
Кали > nmap –script-help=smb-vuln-ms17-0101.nse
Как видно выше, этот скрипт «пытается определить, уязвим ли сервер Microsoft SMBv1». Он также указывает на то, что эта уязвимость активно эксплуатируется вирусами-вымогателями WannaCry и Petya. Подробнее об EternalBlue можно узнать здесь .
Наконец, давайте запустим этот скрипт на нашей системе Windows 7 и посмотрим, уязвима ли она для этого вредоносного ПО.
Кали >nmap –script=smb-vuln-ms17-010.nse 192.168.1.103
Как видите выше, эта система уязвима! Чтобы воспользоваться этой уязвимостью, вы можете попробовать эксплойт EternalBlue в Metasploit, чтобы получить доступ к этой системе .
В предыдущей публикации на Hackers-Arise япознакомил вас с важнейшим инструментом в арсенале пентестера/хакера.Каждый пентестер/хакер должен уметь пользоваться nmap.
Впервые представленный Фёдором в 1998 году в журнале Phrack, nmap уже более 20 лет является неотъемлемой частью инструментария каждого хакера/пентестера. nmap — это продуманный, хорошо документированный и надёжный инструмент, но NSE (скриптовый движок Nmap) выводит nmap на совершенно новый уровень!
NSE преобразует функционал nmap из классического инструмента сканирования портов в инструмент, способный сканировать уязвимости, обнаруживать сети, проводить фаззинг, взламывать пароли и даже эксплуатировать уязвимости. В настоящее время в Kali встроено 603 скрипта, но активное и преданное своему делу сообщество разработчиков ПО с открытым исходным кодом практически ежедневно разрабатывает новые скрипты и функции. Эти скрипты разделены на несколько категорий, включая:
- аутентификация
- транслировать
- скотина
- по умолчанию
- открытие
- dos (отказ в обслуживании)
- эксплуатировать
- внешний
- фаззер
- навязчивый
- вредоносное ПО
- безопасный
- версия
- vuln (уязвимость)
Базовый синтаксис
Синтаксис использования скриптов nmap аналогичен синтаксису базовой команды nmap, за исключением ключевого слова «–script=». Для вызова NSE можно использовать ключевое слово –script=, за которым следует имя скрипта или его категория, а затем IP-адрес целевой системы, например:Кали > nmap –script vuln 192.168.1.101
Эта команда запустит серию скриптов в категории «уязвимость» и выведет данные только в случае обнаружения уязвимости.
Давайте подробнее рассмотрим скрипты nmap (NSE) в нашей системе Kali 2020.
Шаг №1: Запустите Kali и откройте терминал.
Начнем с запуска Kali Linux 2020 и открытия терминала, как показано ниже.
Шаг №2: Поиск скриптов NSE
В Kali 2020 встроено несколько скриптов NSE. Чтобы найти их, можно использовать команду Linux locate, указав подстановочный знак * и расширение каждого скрипта NMAP «.nse». Это позволит найти все файлы с этим расширением, включая все скрипты NMAP.kali > locate *.nse
Как видите, скриптов nmap довольно много. Чтобы сохранить список в файл, просто введите:
kali > locate *.nse >nmapscripts
Затем, чтобы увидеть общее количество скриптов, просто используйте команду cat, за которой следует опция -n и имя файла, например;
kali > cat -n nmapscripts
Как вы видите, в Kali Linux 2020 установлено 603 скрипта nmap. Дополнительную информацию об этих скриптах можно найти на веб-сайте скриптов nmap по адресу:
https://nmap.org/nsedoc/
Как вы можете видеть ниже, на этой странице для каждого скрипта имеется объяснение его функции.
Шаг №3: Помощь NSE
Хотя на сайте nmap есть элементарные объяснения каждого скрипта, если вам нужна дополнительная информация о скрипте, вы можете использовать ключ «–script-help=», а затем указать имя скрипта или категории скриптов. Например, если мне нужна дополнительная информация о категории скриптов «vuln», я могу просто ввести:Кали > nmap -scripts-help=vuln
Обратите внимание, что nmap возвращает каждый скрипт в категории с подробным пояснением.
Шаг №4: Тестирование категории скриптов уязвимостей на сервере Linux OWASP-BWA
Давайте попробуем использовать целую категорию скриптов nmap против сервера OWASP BWA. С помощью скриптов nmap можно запустить любой скрипт из этой категории (см. категории выше), просто указавключ –script и название категории, например, «vuln».
Категория уязвимостей включает скрипты для проверки известных уязвимостей в целевой системе. Чтобы запустить всю категорию уязвимостей на целевой системе, мы можем просто ввести:
Кали > nmap –script vuln 192.168.100.102
Мы можем более точно определить уязвимости SQL-инъекции, используя скрипт «http-sql-injection». Для начала давайте посмотрим на его экран справки.
kali > nmap –scripts-help=http-sql-injection
После нажатия Enter nmap предоставляет подробное описание этого скрипта. В этом справочном окне объясняется, что этот скрипт ищет на HTTP-сервере URL-адреса, уязвимые для атак с использованием SQL-инъекций.
Теперь давайте попробуем выполнить этот скрипт на нашем сервере OWASP BWA.
кали >nmap –script=http-sql-injection 192.168.1.101
Как вы можете видеть выше, этот скрипт обнаружил 6 потенциальных уязвимостей SQL-инъекции на этом веб-сайте.
Шаг 5: Тестирование других скриптов nmap в категории http
Давайте попробуем другой скрипт из категории «http». Что, если нам нужны формы входа для подбора имени пользователя и пароля? Мы можем найти каждую из них с помощью скрипта «http-auth-finder». Давайте запустим его на нашем сервере OWASP BWA и посмотрим, сможет ли он найти формы аутентификации.кали > nmap –script="http-auth-finder" 192.168.1.101
Как видите выше, этот скрипт обнаружил две формы аутентификации в этой системе. Теперь, когда мы знаем, где они находятся, мы можем использовать такие инструменты, как 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
Как видно выше, этот скрипт «пытается определить, уязвим ли сервер Microsoft SMBv1». Он также указывает на то, что эта уязвимость активно эксплуатируется вирусами-вымогателями WannaCry и Petya. Подробнее об EternalBlue можно узнать здесь .
Наконец, давайте запустим этот скрипт на нашей системе Windows 7 и посмотрим, уязвима ли она для этого вредоносного ПО.
Кали >nmap –script=smb-vuln-ms17-010.nse 192.168.1.103
Как видите выше, эта система уязвима! Чтобы воспользоваться этой уязвимостью, вы можете попробовать эксплойт EternalBlue в Metasploit, чтобы получить доступ к этой системе .