Приветствую, гостей и обитателей форума Codeby.net!
В этой статье речь пойдет о двух вещах:
Что касается первой, мы видели очень много надстроек облегчающих вывод, анализ и прочие моменты при работе со сканером nmap, их много и они разнообразны.
Но в этот раз мне попалась, довольно интересная вещь – работающая в докере web-панель, которая позволяет анализировать отчеты nmap формата XML, при этом она анализирует хосты на возможные уязвимости, а так же позволяет строить карту сети.
WebMap – достаточно информативна, легка в использовании и обладает весьма дружественным интерфейсом.
Ну а второй пункт, собственный DNS, это скорее дополнение к статье, так как, при установке и настройке WebMap, мне захотелось обращаться к ней не по IP, а по доменному имени, для удобства.
Нужно было давно этим заняться, так как сервисов и хостов в моей локальной сети достаточно много и я постоянно путаюсь, что и где живет.
Ну и может кому-то это будет полезной подсказкой.
Приступим к установке и настройке DNS, я выбрал Bind9 располагаться он будет на:
Bind9 - это пакет, создающий DNS-сервер в локальной или глобальной сети. Bind9 может также работать и в режиме кеширующего DNS-сервера.
Настраиваем файл конфигурации Bind9:
Приводим его к следующему виду:
acl - создает ACL (Access control list) - список контроля доступа, с помощью которого ограничивается диапазон адресов, которые могут запрашивать зоны с нашего сервера.
allow-query { mynetwork; }; - список тех, кто имеет право запрашивать информацию.
forwarders {192.168.0.1; 8.8.8.8; }; - это DNS провайдера, или любые другие, у которых можно получить информацию о доменах неизвестных вашему серверу.
listen-on-v6 { none; } - запрещает работать с IPv6.
Корректируем файл локальной конфигурации Bind9:
Этот файл содержит локальную конфигурацию DNS-сервера, в нем объявляются зоны, связанные с доменами этого сервера.
Добавляем в него файлы наших зон (зону прямого просмотра и зону обратного просмотра):
Зона в DNS — это часть пространства имён DNS, управляемая конкретным сервером или группой серверов DNS.
Зона прямого просмотра - это тип зоны, в которой доменное имя преобразуется в IP-адрес. Создаем файл для зоны прямого просмотра:
Со следующим содержимым:
$ORIGIN - оригинальное имя зоны
ns1.home.loc. - Наш DNS-сервер (точка в конце обязательна).
admin.home.loc. – e-mail администратора сервера, где вместо символа @ используется точка.
Serial - серийный номер зоны в формате ГГГГММДД и номер текущего изменения за этот день. (Важно, при каждом изменении, нужно редактировать этот номер, увеличивая его в большую сторону) Пример: 2019011701.
Refresh - период времени, с которым вторичный сервер DNS обращается к основному.
Retry - период, с которым вторичный сервер будет повторять попытки при неудачном обновлении.
Expire - максимальное время использования данных на вторичном сервере, после которого делается обязательное обновление.
Negative Cache TTL - время актуальности данных в кэше запросов.
Далее идут записи имён хостов с ip-адресами или псевдонимами.
ns.provider.org. - вместо этой записи можете указать NS вашего регистратора либо Free DNS сервиса.
В конце файла оставляем пустую строку.
Зона обратного просмотра, выполняет преобразование IP-адреса в доменное имя. Создадим файл для зоны обратного просмотра:
В этом файле должны быть только записи типа PTR. В конце этого файла так же должна быть пустая строка. Число 111 - это последний октет в IP адресе нашего DNS сервера.
Проверим корректность работы DNS.
Редактируем resolv.conf, приводим его к следующему виду:
Проверяем, все ли работает корректно:
Пропишем адрес DNS в свой роутер, на этом настройка закончена, позже мы к нему еще вернемся, чтобы внести последние штрихи.
Приступим к установке WebMap, как я уже говорил, эта панель работает в докере, у вас должен быть установлен и настроен пакет docker.
Стартуем докер webmap:
Для доступа к панели инструментов WebMap нам нужен токен. Создаем новый токен с помощью:
Проверяем работу панели, перейдя по адресу сервера, указав порт 8000 и введя токен:
Теперь, немного о функционале WebMap:
При создании PDF-версии отчета Nmap XML в качестве заголовка документа на первой странице используется имя файла XML. WebMap заменит некоторые части имени файла следующим образом:
PDF заголовок: ACME Ltd.
CVE и эксплойты.
Благодаря API-сервисам circl.lu, WebMap может искать CVE и эксплойты для каждого CPE, собранного Nmap. Не все CPE проверяются через API circl.lu, но только если указана конкретная версия (например: cpe: / a: microsoft: iis: 7.5 и не cpe: / o: microsoft: windows).
Подробнее с видео и картинками можно ознакомиться здесь.
Запустим сканирование хоста с дальнейшим анализом его в WebMap, но перед этим добавим WebMap в файлы зон DNS сервера, чтобы мы могли обращаться к нему по адресу:
Сканируем сеть:
По завершении сканирования, в WebMap появится отчет для дальнейшего анализа:
Смотрим подробную карту сети, включая подробную информацию об открытых портах и работающих на них сервисах.
Общая информация выглядит так:
Подведя итоги, можно сказать, что WebMap очень удобен, информативен, интерактивность карты сети, вы сами можете попробовать, мне очень понравилась.
И весь функционал, предоставленный в этой панели, соответствует целевому использованию, ничего лишнего я там не нашел.
Для решения CTF было удобно работать с WebMap, плюс – это все отчеты в одном месте, систематизация порадовала.
Надеюсь, данная статья была полезна, на этом все, спасибо за внимание.
Специально для Codeby.net.
В этой статье речь пойдет о двух вещах:
- WebMap – Web-панель для анализа отчетов XML Nmap;
- DNS для своей локальной сети.
Что касается первой, мы видели очень много надстроек облегчающих вывод, анализ и прочие моменты при работе со сканером nmap, их много и они разнообразны.
Но в этот раз мне попалась, довольно интересная вещь – работающая в докере web-панель, которая позволяет анализировать отчеты nmap формата XML, при этом она анализирует хосты на возможные уязвимости, а так же позволяет строить карту сети.
WebMap – достаточно информативна, легка в использовании и обладает весьма дружественным интерфейсом.
Ну а второй пункт, собственный DNS, это скорее дополнение к статье, так как, при установке и настройке WebMap, мне захотелось обращаться к ней не по IP, а по доменному имени, для удобства.
Нужно было давно этим заняться, так как сервисов и хостов в моей локальной сети достаточно много и я постоянно путаюсь, что и где живет.
Ну и может кому-то это будет полезной подсказкой.
Приступим к установке и настройке DNS, я выбрал Bind9 располагаться он будет на:
Bind9 - это пакет, создающий DNS-сервер в локальной или глобальной сети. Bind9 может также работать и в режиме кеширующего DNS-сервера.
Код:
apt install –y bind9 dnsutils
Настраиваем файл конфигурации Bind9:
Код:
nano /etc/bind/named.conf.options
Приводим его к следующему виду:
acl - создает ACL (Access control list) - список контроля доступа, с помощью которого ограничивается диапазон адресов, которые могут запрашивать зоны с нашего сервера.
allow-query { mynetwork; }; - список тех, кто имеет право запрашивать информацию.
forwarders {192.168.0.1; 8.8.8.8; }; - это DNS провайдера, или любые другие, у которых можно получить информацию о доменах неизвестных вашему серверу.
listen-on-v6 { none; } - запрещает работать с IPv6.
Корректируем файл локальной конфигурации Bind9:
Код:
nano /etc/bind/named.conf.local
Этот файл содержит локальную конфигурацию DNS-сервера, в нем объявляются зоны, связанные с доменами этого сервера.
Добавляем в него файлы наших зон (зону прямого просмотра и зону обратного просмотра):
Зона в DNS — это часть пространства имён DNS, управляемая конкретным сервером или группой серверов DNS.
Зона прямого просмотра - это тип зоны, в которой доменное имя преобразуется в IP-адрес. Создаем файл для зоны прямого просмотра:
Код:
nano /etc/bind/zones/home/flz.home.zone
Со следующим содержимым:
$ORIGIN - оригинальное имя зоны
ns1.home.loc. - Наш DNS-сервер (точка в конце обязательна).
admin.home.loc. – e-mail администратора сервера, где вместо символа @ используется точка.
Serial - серийный номер зоны в формате ГГГГММДД и номер текущего изменения за этот день. (Важно, при каждом изменении, нужно редактировать этот номер, увеличивая его в большую сторону) Пример: 2019011701.
Refresh - период времени, с которым вторичный сервер DNS обращается к основному.
Retry - период, с которым вторичный сервер будет повторять попытки при неудачном обновлении.
Expire - максимальное время использования данных на вторичном сервере, после которого делается обязательное обновление.
Negative Cache TTL - время актуальности данных в кэше запросов.
Далее идут записи имён хостов с ip-адресами или псевдонимами.
ns.provider.org. - вместо этой записи можете указать NS вашего регистратора либо Free DNS сервиса.
В конце файла оставляем пустую строку.
Зона обратного просмотра, выполняет преобразование IP-адреса в доменное имя. Создадим файл для зоны обратного просмотра:
Код:
nano /etc/bind/zones/home/rlz.home.zone
В этом файле должны быть только записи типа PTR. В конце этого файла так же должна быть пустая строка. Число 111 - это последний октет в IP адресе нашего DNS сервера.
Проверим корректность работы DNS.
Код:
named-checkconf –z
rndc reload
Редактируем resolv.conf, приводим его к следующему виду:
Код:
nano /etc/resolv.conf
Проверяем, все ли работает корректно:
Код:
nslookup home.loc
nslookup 192.168.0.111
Пропишем адрес DNS в свой роутер, на этом настройка закончена, позже мы к нему еще вернемся, чтобы внести последние штрихи.
Приступим к установке WebMap, как я уже говорил, эта панель работает в докере, у вас должен быть установлен и настроен пакет docker.
Код:
curl -sL http://bit.ly/webmapsetup | bash
Стартуем докер webmap:
Код:
docker ps –a
docker start [container ID]
Для доступа к панели инструментов WebMap нам нужен токен. Создаем новый токен с помощью:
Код:
docker exec -ti webmap /root/token
Проверяем работу панели, перейдя по адресу сервера, указав порт 8000 и введя токен:
Код:
http://192.168.0.101:8000
Теперь, немного о функционале WebMap:
- Импорт и анализ файлов Nmap XML;
- Запуск и планирование сканирований Nmap из панели инструментов;
- Статистика и графики по обнаруженным службам, портам, ОС и т. Д;
- Проверка одного хоста, выбрав его IP-адрес;
- Прикрепление ярлыков на хост;
- Создание заметок для конкретного хоста;
- Создание отчетов в формате PDF с диаграммами, деталями, метками и заметками;
- Копирование в буфер обмена команд Nikto, Curl или Telnet;
- Поиск CVE и эксплойтов на основе CPE, собранных Nmap;
- RESTful API.
При создании PDF-версии отчета Nmap XML в качестве заголовка документа на первой странице используется имя файла XML. WebMap заменит некоторые части имени файла следующим образом:
- _ will replaced by a space ()
- .xml will be removed
PDF заголовок: ACME Ltd.
CVE и эксплойты.
Благодаря API-сервисам circl.lu, WebMap может искать CVE и эксплойты для каждого CPE, собранного Nmap. Не все CPE проверяются через API circl.lu, но только если указана конкретная версия (например: cpe: / a: microsoft: iis: 7.5 и не cpe: / o: microsoft: windows).
Подробнее с видео и картинками можно ознакомиться здесь.
Запустим сканирование хоста с дальнейшим анализом его в WebMap, но перед этим добавим WebMap в файлы зон DNS сервера, чтобы мы могли обращаться к нему по адресу:
-
Ссылка скрыта от гостей
Код:
nano /etc/bind/zones/home/rlz.home.loc
Код:
nano /etc/bind/zones/home/flz.home.loc
Сканируем сеть:
Код:
nmap -sT -A -T4 -oX /tmp/webmap/myhost.xml 192.168.0.1/24
По завершении сканирования, в WebMap появится отчет для дальнейшего анализа:
Смотрим подробную карту сети, включая подробную информацию об открытых портах и работающих на них сервисах.
Общая информация выглядит так:
Подведя итоги, можно сказать, что WebMap очень удобен, информативен, интерактивность карты сети, вы сами можете попробовать, мне очень понравилась.
И весь функционал, предоставленный в этой панели, соответствует целевому использованию, ничего лишнего я там не нашел.
Для решения CTF было удобно работать с WebMap, плюс – это все отчеты в одном месте, систематизация порадовала.
Надеюсь, данная статья была полезна, на этом все, спасибо за внимание.
Специально для Codeby.net.