Создание расширений FAST

Синтаксис описания элементов запроса

При создании расширения FAST вам необходимо понимать структуру запроса к приложению и ответа от приложения, чтобы корректно описывать элементы запроса, с которыми необходимо работать, с помощью point'ов.

Более подробная информация о синтаксисе описания элементов запроса доступна здесь.

Расширения FAST создаются путем описания всех необходимых секций в соответствующем YAML-файле. Каждый тип расширений использует в работе свой набор секций (подробнее о типах расширений).

Используемые секции

Модифицирующее расширение

Этот тип расширения использует следующие секции:

  • Обязательные секции:
    • meta-info — содержит информацию об уязвимости, которую обнаруживает расширение. Структура секции будет описана ниже.
    • detect — содержит описание обязательной фазы Detect. Подробнее о фазе и структуре соответствующей секции вы можете узнать здесь.
  • Необязательные секции (могут отсутствовать):
    • 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 ""