Создание расширений FAST
Синтаксис описания элементов запроса
При создании расширения FAST вам необходимо понимать структуру запроса к приложению и ответа от приложения, чтобы корректно описывать элементы запроса, с которыми необходимо работать, с помощью point'ов.
Более подробная информация о синтаксисе описания элементов запроса доступна здесь.
Расширения FAST создаются путем описания всех необходимых секций в соответствующем YAML-файле. Каждый тип расширений использует в работе свой набор секций (подробнее о типах расширений).
Используемые секции
Модифицирующее расширение
Этот тип расширения использует следующие секции:
- Обязательные секции:
- Необязательные секции (могут отсутствовать):
collect
— содержит описание необязательной фазы Collect. Подробнее о фазе и структуре соответствующей секции вы можете узнать здесь.match
— содержит описание необязательной фазы Match. Подробнее о фазе и структуре соответствующей секции вы можете узнать здесь.modify
— содержит описание необязательной фазы Modify. Подробнее о фазе и структуре соответствующей секции вы можете узнать здесь.generate
— содержит описание необязательной фазы Generate. Подробнее о фазе и структуре соответствующей секции вы можете узнать здесь.
Немодифицирующее расширение
Этот тип расширения использует следующие обязательные секции:
meta-info
— содержит информацию об уязвимости, которую обнаруживает расширение. Структура секции будет описана ниже.send
— содержит предопределенные запросы к хосту, который указан в базовом запросе. Подробнее о фазе и структуре соответствующей секции вы можете узнать здесь.detect
— содержит описание обязательной фазы Detect. Подробнее о фазе и структуре соответствующей секции вы можете узнать здесь.
Структура секции meta-info
Информационная секция meta-info
имеет следующую структуру в виде списка параметров:
meta-info:
- title:
- type:
- threat:
- description:
title
— необязательная строка-заголовок, описывающая уязвимость. Заданное значение будет отображаться в списке найденных уязвимостей веб-интерфейса Валарм в колонке «Заголовок». Это может быть полезно для идентификации уязвимости или конкретного расширения, с помощью которого была обнаружена уязвимость.Пример.
title: "Example vulnerability"
type
— обязательный параметр, описывающий тип уязвимости, на обнаружение которой нацелено расширение. Заданное значение будет отображаться в списке найденных уязвимостей веб-интерфейса Валарм в колонке «Тип». Параметр может принимать значения из списка.Пример.
type: sqli
threat
— необязательный параметр, задающий уровень опасности для обнаруженной уязвимости. Заданное значение будет отображаться в графическом виде в списке найденных уязвимостей веб-интерфейса Валарм в колонке «Риск». Параметр может принимать значение от 1 до 100 включительно. Чем больше значение параметра, тем опаснее обнаруженная уязвимость.Пример.
threat: 20
description
— необязательный строковый параметр, содержащий описание уязвимости, которую позволяет обнаружить расширение. Данная информация будет отображаться в подробном описании уязвимости.Пример.
description: "Уязвимость XSS"
Подключение расширений FAST
Для подключения расширений вам необходимо примонтировать директорию, содержащую YAML-файлы расширений, в Docker-контейнер FAST-ноды. Подробную информацию о процедуре монтирования вы можете найти, перейдя по ссылке.
results matching ""
No results matching ""
results matching ""
No results matching ""