Добрый день, уважаемые читатели Хабра. Мы с Вами знакомы ещё со статей статья1 и статья2. В данной статье, посвященной продукту Setezor, будет приведено описание интеграции со сканером уязвимостей веб-ресурсов Acunetix (В обиходе - окунь).
Для тех кто не знает, что такое сканер веб-ресурсов на наличие уязвимостей. Сканер - специализированное ПО, которое позволяет произвести комплексный анализ сайта для выявления существующих проблем в конфигурации, разграничении прав доступа и ошибок в реализации функционала.
Почему так важно регулярно производить сканирование своих веб-ресурсов?
По нашему мнению, такой подход позволяет вовремя выявить возможные "дыры" в безопасности сайта и вовремя их устранить, не позволяя злоумышленнику проэксплуатировать их. Это критически важно в контексте безопасности информации, поскольку любые уязвимости могут привести к финансовым потерям, последствиям для репутации бизнеса, а в случае критической инфраструктуры и к угрозам безопасности федерального масштаба.
В настоящее время существует несколько предложений на рынке ПО, например:
RedCheck
Acunetix
Nessus
В качестве инструмента, с которым была произведена интеграция, был выбран Acunetix, но почему?
Во-первых, инструмент получает своевременные обновления, что гарантирует актуальность банка данных угроз, которые могут быть выявлены.
Во-вторых, Acunetix является ведущим инструментом на рынке. Например, American Express является компанией, которая производит анализ своих ресурсов с помощью Acunetix.
В-третьих, наличие хорошо документированного API, что позволяет произвести интеграцию со своим программным решением.
В-четвёртых, Acunetix предлагает богатый выбор профилей сканирования, а также позволяет записывать целые сценарии выполнения сканирования, вплоть до авторизации в форме через iframe.
В-пятых, есть
ломанаяознакомительная версия
Для чего мы сделали интеграцию?
Поскольку SeteZor является программным продуктом типа Network Intelligence Solution, нам необходимо собирать максимально большой объем информации о сети, в т.ч. о программных продуктах и их уязвимостях. Это облегчает работу при тестировании на проникновение и дает более широкую картину в понимании работы сети. Так же Наш вариант интеграции является более "легковесным", по типу "запустил и забыл".
Какие преимущества использования Acunetix через интерфейс SeteZor?
В первую очередь, удобство в агрегации и анализе информации (все собирается в одном месте).
Удобство при создании отчёта для конкретного скана.
Возможность запуска сканирования для целой группы, в которой могут находиться множество таргетов, через определённый промежуток времени(позволяет снизить нагрузку на сервер, на котором крутится Acunetix)
-
Визуальное отображение и управление таргетами на карте. Удобно при работе с большим объемом как при анализе внешнего периметра, так и внутреннего.
Все уязвимости, которые были выявлены в ходе сканирования, записываются в базу данных проекта автоматически. Это реализовано на уровне фоновых задач.
Реализован функционал скачивания отчетов о сканировании в формате html и pdf.
В дальнейшем планируется управлять целой стаей окуней, т.е. SeteZor будет иметь функционал командного центра. Такой подход даст большую гибкость и массовость ;) при проведении сканирования ресурсов. А так же отображение найденных уязвимостей на конкретном узле.
Как взаимодействовать с Acunetix в SeteZor?
Создание связи SeteZor и Acunetix
В первую очередь необходимо перейти во вкладку Tools, которая доступна в панели навигации. Затем мы попадаем на страницу, на которой отражены все инструменты. Среди них нужно выбрать Acunetix. И перейти в настройки.
Для успешной связки нужно заполнить все поля:
Наименование для сущности Acunetix
Адрес ресурса, на котором развернут Acunetix
API KEY. Ключ генерируется в окуне и находится в профиле администратора по адресу "{url}/app/profile".
После нажатия на кнопку "Save" данные пропишутся в конфигурационный файл проекта и все таргеты, которые находятся в Acunetix, импортируются в базу данных проекта.
Взаимодействие с группами
На вкладке Groups пользователя встречает таблица, в которой отображены все группы, которые зарегистрированы в Окуне.
Для добавления новой группы необходимо нажать на кнопку Add Group. После этого отобразится модальное окно с формой, на которой присутствуют поля для создания группы.
Для запуска сканирования всех таргетов в группе необходимо нажать на кнопку Scan. После этого отобразится модальное окно, в котором задаются параметры для сканирования.
Scan Speed подразумевает 4 варианта скорости сканирования таргета:
Sequential (самый медленный вариант, 1 конкурентный запрос раз в 120мс)
Slow (2 конкурентных запроса раз в 50 мс)
Moderate (5 конкурентных запросов раз в 20мс)
Fast (10 конкуретных запросов без задержки)
Параметр Scan Start Date определяет дату начала сканирования.
Параметр Scan Start Time определяет точное время начала сканирования первого таргета.
Параметр Scan Interval задаёт промежуток времени между сканами таргетов в группе.
Scan Profile задаёт профиль сканирования:
Full Scan
Critical / High Risk
Critical / High / Medium Risk
Cross-site Scripting
SQL Injection
Weak Passwords
Crawl Only
OWASP Top 10
PCI checks
Sans Top 25
Malware Scan
Также реализован функционал установки членства таргетов в группе.
При нажатии на кнопку "Edit membership" открывается модальное окно. В левой области отображены таргеты выбранной группы, в правой области отображены оставшиеся таргеты.
Для добавления таргетов в группы, необходимо в правой области отметить чекбоксы напротив таргетов, которые необходимо добавить, и нажать на кнопку "Add". Напротив, для удаления таргетов необходимо отметить таргеты в левой области и нажать кнопку "Remove".
Для сохранения необходимо нажать кнопку "Save".
Взаимодействие с таргетами
На вкладке Targets отображен интерфейс взаимодействия с таргетами.
Для добавления нового таргета нужно нажать "Add Target". После этого отобразится модальное окно.
В отобразившейся форме можно выбрать, в какую группу стоит добавлять таргеты. Кроме того, при нажатии на "+" в форму добавятся поля для новых таргетов. Чтобы завершить добавление, необходимо нажать на кнопку "Add".
Также, на интерфейсе присутствует функционал для установки прокси, кастомных кук и кастомных заголовков отдельного таргета.
Чтобы установить прокси таргета необходимо в ячейке Proxy нажать кнопку Set. После этого отобразится модальное окно.
В появившейся форме необходимо заполнить поля:
Address. В данном поле нужно указать IP адрес сервера, через которое будет производиться проксирование.
Port. В данном поле указывается значение порта.
Username и Password. Данные поля являются опциональными, если для прокси необходима авторизация
Для установки кастомных кук необходимо в ячейке "URL | Cookie" нажать "Set". После этого отобразится модальное окно.
В поле "URL" необходимо ввести адрес, для которого будет установлен куки. В поле "Key" вводится название куки, а в поле "Value" само значение. Также реализован функционал добавления множества куки для отдельного таргета. Для сохранения установленных значение необходимо нажать кнопку "Save".
Для установки кастомных заголовков необходимо в ячейке Headers нажать кнопку "Set".
После этого отобразится модальное окно, в котором аналогично куки можно установить заголовки в формате ключ-значение.
Импорт таргетов из CSV файла
Чтобы произвести импорт таргетов, нужно нажать на кнопку "Import targets".
В появившемся модальном окне есть возможность выбора группы, в которую будут добавляться таргеты из файла CSV и само поле, при нажатии на которое откроется файловый менеджер с возможностью выбора файла.
Взаимодействие со сканами
На странице со сканами присутствует функционал формирования отчёта для отдельно взятого скана. При нажатии на кнопку "Create report" появится модальное окно.
Существует множество профилей, по которым будет формироваться отчёт:
PCI DSS 4.0
Sarbanes Oxley
Developer
Comprehensive (new)
Quick
Executive Summary
HIPAA
Affected Items
Scan Comparison
CWE Top 25
ISO 27001
NIST SP 800-53
OWASP Top 10 2013
OWASP Top 10 2017
OWASP Top 10 2021
PCI DSS 3.2
DISA STIG
WASC Threat Classification
После выбора профиля, нужно нажать на кнопку "Add".
Взаимодействие с отчётами
На вкладке Reports отображен интерфейс с созданными отчётами.
На данной странице присутствует возможность скачивания сформированных отчётов в формате PDF и HTML, которое происходит при нажатии на одноимённую кнопку напротив отчёта.
Послесловие
Спасибо за внимание. Надеемся, что наш инструмент поможет Вам в работе и не только . Все новости SeteZor'a можно прочитать на нашем канале. Все замечания и предложения направляйте в чат. Скачать SeteZor бесплатно и без подписок можно с нашего Git репозитория.