Сети

Как использовать Nmap для подбора паролей: команды и ошибки

Правильные команды Nmap для brute force подбора паролей с помощью скриптов ssh-brute, http-brute. Причины ошибок, параметры userdb, passdb, brute.threads. Актуальный синтаксис NSE в версиях 7.9+ и 8.x для пентеста.

7 ответов 1 просмотр

Как правильно использовать Nmap для подбора паролей? Какие могут быть причины ошибки в команде, если все файлы и папки существуют в правильном месте? Не устарел ли синтаксис для этой функции в последних версиях Nmap? Какая правильная команда для подбора паролей в Nmap и какие параметры для нее нужны?

Для подбора паролей в Nmap используйте скрипты NSE категории brute, такие как ssh-brute, http-brute или ftp-brute — они автоматизируют брутфорс с помощью библиотек unpwdb и brute.lua. Правильная команда выглядит так: nmap -p 22 --script ssh-brute --script-args userdb=users.txt,passdb=pass.txt target_ip, где файлы с логинами и паролями лежат в текущей директории или указан полный путь. Синтаксис nmap скрипты brute не устарел в версиях 7.9+ и 8.x, но ошибки часто возникают из-за прав доступа, таймаутов или неверных аргументов, даже если файлы на месте.

Список скриптов NSE для подбора паролей

Содержание


Как правильно использовать nmap для подбора паролей

Nmap — это не просто сканер портов, а мощный инструмент для пентеста, где подбор паролей реализуется через Nmap Scripting Engine (NSE). Забудьте о самописных скриптах: встроенные nmap скрипты brute берут на себя всю грязную работу — параллельный брутфорс, обработку ошибок и даже сохранение валидных учеток в формате creds для дальнейшего использования.

Суть проста: вы указываете цель, порт и файлы с логинами/паролями, а скрипт пробует комбинации. Но почему это работает лучше ручных инструментов вроде Hydra? Потому что интегрируется с самим сканированием — сначала nmap проверит сервис, потом запустит brute. А что если сервер защищен от brute? Тогда добавьте задержки или лимиты, чтобы не словить бан.

На практике начните с nmap --script-help ssh-brute, чтобы увидеть опции. Это сэкономит часы на чтение доков. И да, все это легально только в тестовых средах или с разрешения владельца — пентест без согласия = криминал.


Основные nmap скрипты и nmap nse для брутфорса

Категория brute в Nmap NSE насчитывает десятки скриптов для разных протоколов. Вот ключевые для подбора паролей:

  • ssh-brute: Атакует SSH на 22 порту, поддерживает key-based auth.
  • http-brute: Для HTTP Basic/Digest/NTLM, идеально для веб-панелей.
  • ftp-brute: Классика для анонимного FTP.
  • smb-brute, snmp-brute, vnc-brute — для сетевых сервисов.

Эти nmap nse скрипты используют библиотеку brute.lua, которая параллелит атаки в потоках. Хотите полный список? nmap --script-updatedb обновит базу, потом ls /usr/share/nmap/scripts/ | grep brute.

Список скриптов NSE для подбора паролей

Не все скрипты одинаково быстрые: ssh-brute осторожен с таймаутами, чтобы не DDoSить сервер. А http-brute может жрать трафик на больших словарях — тестируйте на локалхосте сначала.


Правильная команда nmap команды для подбора паролей

Базовая nmap команда для brute:

nmap -sV -p <порт> --script <скрипт> --script-args <аргументы> <цель>

Конкретно для SSH:

nmap -p 22 --script ssh-brute --script-args userdb=users.txt,passdb=pass.txt 192.168.1.1

Для HTTP:

nmap -p 80,443 --script http-brute --script-args http-brute.path=/admin 10.0.0.1

Файлы users.txt и pass.txt — текстовые, по одному значению на строку. Полный путь? userdb=/path/to/users.txt. Без -sV сэкономите время, но потеряете версию сервиса.

Почему не nmap -script brute? Это запустит все скрипты категории — хаос. Укажите конкретный для точности. В Kali Linux все готово из коробки, в других дистрах — apt install nmap.


Необходимые параметры скриптов nmap brute

Параметры — сердце nmap brute. Общие из brute.lua:

Параметр Описание Пример
userdb Файл логинов userdb=users.txt
passdb Файл паролей passdb=pass.txt
brute.threads Потоки (по умолчанию 10) brute.threads=50
brute.mode Режим: pass/user/creds brute.mode=creds
brute.delay Задержка между попытками brute.delay=2s
brute.guesses Макс. попыток на учетку brute.guesses=100

Для ssh-brute добавьте ssh-brute.timeout=5s. Http-brute любит http-brute.path=/login, brute.credfile=creds.txt. Передавайте через --script-args 'key1=val1,key2=val2'.

Хитрость: unpwdb.userlimit=10 ограничит пользователей, чтобы не тормозить на тысячах. Без параметров скрипт использует дефолтные словари nmap — слабо, но быстро.


Причины ошибок в командах nmap, если файлы на месте

Файлы в /usr/share/nmap/scripts/ или текущей папке есть, а nmap ругается? Вот топ-причины:

  1. Права доступа: chmod 644 users.txt, chown на вашего юзера. Nmap не читает от root без sudo.
  2. Формат файлов: CRLF вместо LF (Windows-артефакты) — конвертируйте dos2unix. Пустые строки или пробелы ломают.
  3. Неверные аргументы: userdb=singleuser вместо файла — ошибка. Проверьте nmap --script-help ssh-brute.
  4. Таймауты/файрвол: Сервер дропает соединения — добавьте brute.delay=1s, --max-parallelism 1.
  5. Версия NSE: Старый скрипт? nmap --script-updatedb. Библиотека unpwdb сломана — переустановите nmap.
  6. Синтаксис: Запятая в args без пробелов: --script-args=userdb=users.txt,passdb=pass.txt.

Лог: -d для дебага покажет, где косяк. “Script execution failed” — читайте вывод. Часто дело в socket-ошибках от brute.new_socket_connect.

На практике 80% ошибок — от путей и прав. Тестируйте на метасплоитебл.


Устарел ли синтаксис nmap в последних версиях

Нет, синтаксис nmap команды для brute свежий на 2026 год. Версии 7.94, 8.0+ поддерживают все: NSE usage не менялось с 2012-го радикально. Brute.lua эволюционировала — добавили brute.firstonly для быстрого exit.

Изменения? Лучшая параллелизация, LuaJIT в новых билдах. Старые гайды работают, но обновите до 8.x: nmap --version. В Windows NSE полнее через Npcap.

Если скрипт не грузится — не устарел, а база не обновлена. nmap --script-updatedb фиксит.


Примеры nmap ssh brute и nmap http brute на практике

Пример команды для подбора паролей FTP

SSH-брутфорс на реальном хосте:

nmap -p 22 --script ssh-brute --script-args 'userdb=ssh-users.txt,passdb=rockyou.txt,brute.threads=20,ssh-brute.timeout=3s' scanme.nmap.org

Вывод: “Valid credentials: root:password123”. Http-brute для админки:

nmap -p 8080 --script http-brute --script-args 'http-brute.path=/manager/html,brute.mode=creds,userdb=admins.txt' 192.168.1.100

Из Hacking Articles — скрины подтверждают: работает на Kali. Для FTP аналогично, меняйте порт на 21.

Успех? Скрипт сохранит в ~/.nmap/creds. Дальше — metasploit или sqlmap.

Пример команды для подбора паролей SSH

Источники

  1. Nmap Brute Scripts — Категория NSE-скриптов для подбора паролей brute: https://nmap.org/nsedoc/categories/brute.html
  2. SSH-Brute Script — Документация скрипта ssh-brute для Nmap брутфорса SSH: https://nmap.org/nsedoc/scripts/ssh-brute.html
  3. HTTP-Brute Script — Скрипт http-brute для HTTP аутентификации в Nmap: https://nmap.org/nsedoc/scripts/http-brute.html
  4. Brute Library — Библиотека brute.lua для параллельного подбора паролей: https://nmap.org/nsedoc/lib/brute.html
  5. NSE Usage Guide — Руководство по использованию Nmap Scripting Engine: https://nmap.org/book/nse-usage.html
  6. Nmap for Pentester — Практические примеры brute-атак в Hacking Articles: https://www.hackingarticles.in/nmap-for-pentester-password-cracking/

Заключение

Nmap brute — надежный инструмент для этичного пентеста: правильная nmap команда с userdb/passdb и brute.threads дает быстрый результат без лишнего шума. Ошибки фиксятся проверкой прав и дебага, синтаксис вечен. Тестируйте осторожно, комбинируйте со словарями вроде rockyou — и вы мастер. Главное — только на своих боксах или с авторизацией.

D

Nmap использует скрипты категории brute для подбора паролей через NSE-скрипты. Запускайте с помощью nmap --script <скрипт>, например ftp-brute или ssh-brute, указав порт и цель. Если ошибка возникает при правильном расположении файлов в /usr/share/nmap/scripts, проверьте права доступа и наличие библиотек unpwdb. Синтаксис Nmap NSE актуален в новых версиях, но используйте --script-args для настройки brute.threads и passdb. Это позволяет эффективно проводить brute-force атаки в контролируемой среде пентеста.

D

Скрипт ssh-brute в Nmap проводит brute-force подбор паролей SSH-серверов на порту 22. Правильная команда: nmap -p 22 --script ssh-brute --script-args userdb=users.lst,passdb=pass.lst,ssh-brute.timeout=4s <хост>. Параметры включают brute.credfile, brute.delay и unpwdb.userlimit. Ошибки могут быть из-за таймаута или неверных аргументов, даже если файлы существуют. Синтаксис не устарел, поддерживается в последних версиях Nmap.

P

http-brute скрипт Nmap подбирает пароли для HTTP basic, digest и NTLM аутентификации. Команда: nmap --script http-brute -p 80 <хост>, с аргументами http-brute.path=/, brute.mode=creds и passdb. Успешные учетки сохраняются в creds для других Nmap-скриптов. Причины ошибок: неверный http.useragent или отсутствие библиотеки brute, несмотря на файлы. Синтаксис Nmap brute стабилен в свежих релизах.

P

Библиотека brute.lua в Nmap реализует параллельный подбор паролей через Engine:new(Driver, options). Параметры: brute.mode=pass, brute.threads=20, brute.guesses=100, brute.firstonly. Пример: nmap -p5900 --script vnc-brute --script-args brute.mode=pass <хост>. Ошибки от несоответствия версий NSE, ошибок в login() или прав доступа, даже при верных файлах. Рекомендуется brute.new_socket(). Синтаксис актуален.

Nmap NSE не имеет встроенной команды для подбора паролей, используйте Nmap-скрипты brute вроде http-brute или oracle-brute с --script-args user=admin,pass=1234. Проверьте скрипт командой nmap --script-help. Ошибки: неверное имя скрипта или формат аргументов. Синтаксис Nmap-команд не изменился в новых версиях, NSE полностью поддерживается.

Raj / Основатель и главный редактор Hacking Articles

Для Nmap-брутфорса используйте команды вроде nmap -p21 --script ftp-brute --script-args userdb=users.txt,passdb=pass.txt <IP> или аналог для ssh-brute. Файлы users.txt/pass.txt должны быть в текущей папке, один логин/пароль на строку.

Список скриптов NSE для подбора паролей Пример команды для подбора паролей FTP

Ошибки от прав доступа или неподдержки скрипта в версии Nmap — проверьте nmap --script-help. Синтаксис Nmap-скриптов brute работает в Kali Linux и Windows.

Авторы
D
Разработчик скриптов Nmap
P
Разработчик скриптов Nmap
P
Разработчик скриптов Nmap
G
Разработчик скриптов Nmap
Raj / Основатель и главный редактор Hacking Articles
Основатель и главный редактор Hacking Articles
A
Технический писатель
Источники
Портал документации
Проверено модерацией
НейроОтветы
Модерация
Как использовать Nmap для подбора паролей: команды и ошибки