Вопрос или проблема
Я установил nmap
на macOS.
Я не на Linux, не мог найти директорию со скриптами. Я запустил
sudo nmap -sV --script vulners 69.164.220.111
Я продолжал получать следующую ошибку:
Starting Nmap 6.49BETA4 ( https://nmap.org ) at 2020-01-07 14:35 EST
NSE: failed to initialize the script engine:
/usr/local/bin/../share/nmap/nse_main.lua:801: 'vulners' did not match a category, filename, or directory
stack traceback:
[C]: in function 'error'
/usr/local/bin/../share/nmap/nse_main.lua:801: in function 'get_chosen_scripts'
/usr/local/bin/../share/nmap/nse_main.lua:1249: in main chunk
[C]: in ?
QUITTING!
Вы знаете, что я сделал не так?
Вы не сделали ничего плохого, помимо того, что у вас слишком старая версия nmap
.
Скрипт NSE vulners
был добавлен в версии Nmap 7.80 (2019-08-10) вместе с десятью другими скриптами NSE. Ваша версия Nmap — 6.49BETA4 (2015-07-06), что на несколько лет устарело.
На момент написания вопроса текущая версия Nmap была 7.80, но пакет Homebrew не был обновлён до этой версии до 11 августа того же года (с версии 7.70, так что ваша установка была серьёзно устаревшей в любом случае).
На момент ответа текущая версия Nmap, доступная в Homebrew, была 7.95 (2024-04-19).
Из анонса выпуска (также в changelog):
Nmap 7.80 [2019-08-10]
[...]
o [NSE] Добавлено 11 скриптов NSE от 8 авторов, всего теперь 598!
Они все перечислены на https://nmap.org/nsedoc/, а краткие описания ниже:
[...]
+ [GH#1126] vulners запрашивает API базы данных CVE Vulners, используя информацию CPE из обнаружения версий служб и приложений Nmap.
[GMedian, Даниэль Миллер]
Ответ или решение
Запуск скрипта nmap
на macOS может представлять собой вызов, особенно если вы сталкиваетесь с проблемами, как в приведенном вами примере. Основной проблемой в данном случае является устаревшая версия nmap
, установленная на вашей системе. Позвольте мне объяснить, как обновить nmap
, настроить его для использования и запускать скрипты в macOS.
Теория
Что такое Nmap?
Nmap
(Network Mapper) — это популярный инструмент для сетевой разведки и аудита безопасности. Он используется для сканирования сети и выявления активных устройств, открытых портов, операционных систем, обнаружения уязвимостей и многого другого.
NSE (Nmap Scripting Engine)
NSE позволяет пользователям автоматизировать задачи, которые nmap
не поддерживает стандартными средствами. Это делается через написание скриптов на языке программирования Lua. Данные скрипты хранятся в определенной директории, которую nmap
сканирует перед выполнением задач.
Пример
Вы столкнулись с ошибкой, говорящей о том, что скрипт vulners
не был найден. Это связано с тем, что ваша версия nmap
слишком старая и не поддерживает данный скрипт. Скрипт vulners
был добавлен только в релизе Nmap 7.80
.
Применение
Шаги для решения проблемы:
-
Обновление Nmap
- Убедитесь, что вы используете последнюю версию
nmap
. На macOS удобнее всего использоватьHomebrew
для управления пакетами.brew update brew upgrade nmap
- Это обновит
nmap
до последней доступной версии. На момент написания ответа доступна версия7.95
.
- Убедитесь, что вы используете последнюю версию
-
Поиск скриптовой директории
- После установки последней версии убедитесь, что скрипты находятся в нужной директории. Обычно скрипты
nmap
располагаются в следующем каталоге:/usr/local/share/nmap/scripts/
- Вы можете проверить наличие скрипта
vulners
:ls /usr/local/share/nmap/scripts/vulners.nse
- Если он отсутствует, убедитесь в корректности установки посредством повторной установки
nmap
или его загрузки из официального репозитория GitHub.
- После установки последней версии убедитесь, что скрипты находятся в нужной директории. Обычно скрипты
-
Запуск скрипта
- После успешного обновления и проверки наличия скрипта, вы можете выполнить
nmap
со следующим командованием:sudo nmap -sV --script vulners <адрес_вашего_целевого_хоста>
- Убедитесь, что команда выполняется с правами администратора (
sudo
), так как для большинства задачnmap
требуются расширенные привилегии.
- После успешного обновления и проверки наличия скрипта, вы можете выполнить
-
Проверка конфигурации
- Также имеет смысл проверить файл конфигурации
nmap
(nmap.conf
), чтобы убедиться, что в нем не указываются старые пути до скриптов или другие некорректные настройки.
- Также имеет смысл проверить файл конфигурации
Заключение
Эти шаги должны помочь вам справиться с проблемой и позволят эффективно использовать возможности nmap
для поиска уязвимостей и улучшения безопасности сети. Убедитесь, что обновляете не только nmap
, но и другие сети утилиты, чтобы всегда иметь доступ к новым функциям и улучшениям.