G
Gidroponika
Всем доброго времени суток коллеги , сегодня мы поговорим о кастомной настройке , по моему мнению, замечательном инструменте предназначенного для сбора информации о целевой системе и первичной оценки на защищенность.
Речь пойдет об сканере SPARTA .
От себя скажу , что этот инструмент даже с дефолт настройками находил много чего во время пентестов, в это же время этот инструмент является очень гибким и легко наполняемым каркасом для создания своего универсального сканера на уязвимости!
Теперь давайте посмотрим на него с точки зрения пентестера, которому бы хотелось добавить какие то автоматизированные действия на этапе сканирования, например исходя из своего личного опыта проведения тестов на проникновения.
Статья будет разбита на 4 части , что бы не быть очень длинной.
Содержания статьи:
Сам конфиг состоит из последующих секций:
[GeneralSettings]
[BruteForceSettings]
[StagedNmapSettings]
[ToolSettings]
[HostActions]
[PortActions]
[PortTerminalActions]
[ScheduleSettings]
Исходя из названий вроде бы как все должно быть понятно, но все таки давайте я проясню некоторые моменты:
[GeneralSetting] - Общии настройки в них стоит обратить внимания на параметры :
default-terminal=xfce4-terminal (указываем команду для запуска терминала Linux)
web-services="http,https,ssl,soap,http-proxy,http-alt,https-alt" (Список веб сервисов , которые нужны для распознавания и дальнейшей обработки утилитами такими как Nikto)
enable-scheduler=True (Важный параметр!, включает автоматическое выполнение действий из секции [ScheduleSettings], то есть при обнаружении открытого порта - выполнять действия прописанные в секции планировщика [ScheduleSettings], например если находит 80 порт открытым , то автоматически запускать сканер веб уязвимостей Nikto)
enable-scheduler-on-import=False (Отключить автоматический сканер при импорте файла с результатами сканирования, например scan.sprt)
max-fast-processes=10 (Здесь мы настраиваем многопоточность , к-тво одновременных задач)
[BruteSettins] - думаю тут понятно все, здесь прописаны настройки дефолтных путей к словарям, дефолтные имена и пароли для брута и т.д.
Единственно что можно добавить , что параметр
services="" это список сервисов , которые поддаются бруту, в дефолтном конфиге приведен список всех сервисок которые может брутить программой Hydra,
так как брут сервисов реализован через эту программу. Список всех сервисов и номера портов к ним можно найти в файле /etc/services
[StagedNmapSettins] - Здесь мы можем прописать список портов для фаз сканирования портов нмапом.
[ToolSettings] - все просто, прописаны полные пути для запуска утилит , которые используются в ходе сканирования.
[HostActions] - Список действий которых , мы можем выполнить с хостом
Следующие две секции самые интересные как по мне, отличаются они не сильно , но все таки отличаются:
[PortActions] - список действий по конкретному порту сервиса, вывод обработки команды будет в самой программе SPARTA в виде отдельной вкладки.
[PortTerminalActions] - выполнять действие по сервису в отдельном терминале, спартра запускает 3d party иснтрумент в окне стандартного терминала, который мы указали в секции [GeneralSettins]
!ВАЖНО!
Именно в эти секции мы будем дописывать необходимый нам функционал!
Синтаксис написания команды в конфиге мы обсудим в следующей части статьи.
[ScheduleSettings] - так же довольно важная секция конфига, она определяет список действий прописанных в PortActions которые будут автоматически запускаться при обнаружении конкретного сервиса, например строчка:
nikto="http,https,ssl,soap,http-proxy,http-alt,https-alt", tcp
Означает что в случае tcp обнаружения открытого одного из сервиса http,https,ssl,soap,http-proxy,http-alt,https-alt запускать действия nikto , которое в PortActions означает что команда на каждое такое обнаружение будет выполнаться следующая:
nikto -o \"[OUTPUT].txt\" -p [PORT] -h [IP] (Как вы смогли догадаться строки в скобках, это переменные самой программы SPARTA)
Важно!
Стоит помнить что секция планировщика будет выполняться только в том случае , если в[GeneralSettings] секции будет стоять
enable-scheduler=True
Речь пойдет об сканере SPARTA .
От себя скажу , что этот инструмент даже с дефолт настройками находил много чего во время пентестов, в это же время этот инструмент является очень гибким и легко наполняемым каркасом для создания своего универсального сканера на уязвимости!
Теперь давайте посмотрим на него с точки зрения пентестера, которому бы хотелось добавить какие то автоматизированные действия на этапе сканирования, например исходя из своего личного опыта проведения тестов на проникновения.
Статья будет разбита на 4 части , что бы не быть очень длинной.
Содержания статьи:
- Разбор секций конфифа /etc/sparta.conf
- Разбор скриптов /usr/share/sparta/scripts
- Добавление своих словарей
- Добавление своего функционала
![92005bc7a3fa039b586a0.png](/proxy.php?image=https%3A%2F%2Ftelegra.ph%2Ffile%2F92005bc7a3fa039b586a0.png&hash=f246dd13899a3971a58b3c0e86291e82)
Сам конфиг состоит из последующих секций:
[GeneralSettings]
[BruteForceSettings]
[StagedNmapSettings]
[ToolSettings]
[HostActions]
[PortActions]
[PortTerminalActions]
[ScheduleSettings]
![cd6a943fe1d23d8957eae.png](/proxy.php?image=https%3A%2F%2Ftelegra.ph%2Ffile%2Fcd6a943fe1d23d8957eae.png&hash=45232ea706d45a369da7dfdcb1482648)
![23610fcbd7ab1a9bf1d95.png](/proxy.php?image=https%3A%2F%2Ftelegra.ph%2Ffile%2F23610fcbd7ab1a9bf1d95.png&hash=66db7132c3e2cb080fabfd8ffb4a8eaa)
Исходя из названий вроде бы как все должно быть понятно, но все таки давайте я проясню некоторые моменты:
[GeneralSetting] - Общии настройки в них стоит обратить внимания на параметры :
default-terminal=xfce4-terminal (указываем команду для запуска терминала Linux)
web-services="http,https,ssl,soap,http-proxy,http-alt,https-alt" (Список веб сервисов , которые нужны для распознавания и дальнейшей обработки утилитами такими как Nikto)
enable-scheduler=True (Важный параметр!, включает автоматическое выполнение действий из секции [ScheduleSettings], то есть при обнаружении открытого порта - выполнять действия прописанные в секции планировщика [ScheduleSettings], например если находит 80 порт открытым , то автоматически запускать сканер веб уязвимостей Nikto)
enable-scheduler-on-import=False (Отключить автоматический сканер при импорте файла с результатами сканирования, например scan.sprt)
max-fast-processes=10 (Здесь мы настраиваем многопоточность , к-тво одновременных задач)
[BruteSettins] - думаю тут понятно все, здесь прописаны настройки дефолтных путей к словарям, дефолтные имена и пароли для брута и т.д.
Единственно что можно добавить , что параметр
services="" это список сервисов , которые поддаются бруту, в дефолтном конфиге приведен список всех сервисок которые может брутить программой Hydra,
так как брут сервисов реализован через эту программу. Список всех сервисов и номера портов к ним можно найти в файле /etc/services
![9b37f91a76d76056f76c4.png](/proxy.php?image=https%3A%2F%2Ftelegra.ph%2Ffile%2F9b37f91a76d76056f76c4.png&hash=c55ffa79ad452a4040c681b591d319c0)
[StagedNmapSettins] - Здесь мы можем прописать список портов для фаз сканирования портов нмапом.
[ToolSettings] - все просто, прописаны полные пути для запуска утилит , которые используются в ходе сканирования.
[HostActions] - Список действий которых , мы можем выполнить с хостом
![fd7ff6760afea31dedb3b.png](/proxy.php?image=https%3A%2F%2Ftelegra.ph%2Ffile%2Ffd7ff6760afea31dedb3b.png&hash=5afe1d07d12009ea1402ec106888bdd6)
Следующие две секции самые интересные как по мне, отличаются они не сильно , но все таки отличаются:
[PortActions] - список действий по конкретному порту сервиса, вывод обработки команды будет в самой программе SPARTA в виде отдельной вкладки.
[PortTerminalActions] - выполнять действие по сервису в отдельном терминале, спартра запускает 3d party иснтрумент в окне стандартного терминала, который мы указали в секции [GeneralSettins]
!ВАЖНО!
Именно в эти секции мы будем дописывать необходимый нам функционал!
Синтаксис написания команды в конфиге мы обсудим в следующей части статьи.
![68c65751b7c44eded70ba.png](/proxy.php?image=https%3A%2F%2Ftelegra.ph%2Ffile%2F68c65751b7c44eded70ba.png&hash=10d0fe29c5cfc3bc2c60003945650313)
![9b4aa93666fab5fe2861a.png](/proxy.php?image=https%3A%2F%2Ftelegra.ph%2Ffile%2F9b4aa93666fab5fe2861a.png&hash=49667f9c388ae645575b93ad2198ea69)
[ScheduleSettings] - так же довольно важная секция конфига, она определяет список действий прописанных в PortActions которые будут автоматически запускаться при обнаружении конкретного сервиса, например строчка:
nikto="http,https,ssl,soap,http-proxy,http-alt,https-alt", tcp
Означает что в случае tcp обнаружения открытого одного из сервиса http,https,ssl,soap,http-proxy,http-alt,https-alt запускать действия nikto , которое в PortActions означает что команда на каждое такое обнаружение будет выполнаться следующая:
nikto -o \"[OUTPUT].txt\" -p [PORT] -h [IP] (Как вы смогли догадаться строки в скобках, это переменные самой программы SPARTA)
Важно!
Стоит помнить что секция планировщика будет выполняться только в том случае , если в[GeneralSettings] секции будет стоять
enable-scheduler=True