Skip to content

Импорт из DefectDojo в Vampy

Если у вас есть необходимость перенести исторические данные об уязвимостях из DefectDojo, то для этого можно выполнить следующий запрос:

curl -X 'POST' \
  'https://$VAMPY_URL/api/ext/v1/import/defect_dojo/' \
  -H 'accept: application/json' \
  -H 'Content-Type: multipart/form-data' \
  -H 'Authentication: $VAMPY_API_TOKEN' \
  -F 'spaceID=' \
  -F 'hostname=$DD_URL' \
  -F 'token=$DD_TOKEN' \
  -F 'ignoreSSLCheck=false' \
  -F 'timeout=60' \
  -F 'batchSize=10000' \
  -F 'productIDs=' \
  -F 'findingStatuses='

где

  • VAMPY_URL - путь к серверу Vampy, напр. https://vampy.corp.example.com;
  • VAMPY_API_TOKEN - API токен для бот пользователя;
  • DD_URL - путь к серверу Vampy, напр. https://defectdojo.corp.example.com;
  • DD_TOKEN - DefectDojo Токен, обычно находится по пути: /api/key-v2. Подробнее в документации;
  • ignoreSSLCheck - принимает значение true/false. Позволяет игнорировать некорректные/самоподписанные сертификаты
  • productIDs - Список идентификаторов продуктов из DefectDojo, разделенных запятыми, которые необходимо импортировать. Если оставить пустым, то будут импортированы все продукты
  • findingStatuses - Список статусов дефектов из DefectDojo, разделенных запятыми, которые необходимо импортировать. Если оставить пустым, то будут импортированы уязвимоcти с любыми статусами. Возможные значения: active, false_p, is_mitigated, verified, out_of_scope, risk_accepted, under_review

Как происходит импорт

Для импорта информации об уязвимостях из DefectDojo в Vampy используется API. Vampy получит список продуктов из DefectDojo, создаст соответствующие репозитории и продукты и перенесет в них все уязвимости из DefectDojo

Пример запроса

Приведем пример, который импортирует все активные уязвимости из DefectDojo продуктов с id 5,8,25 в Vampy

curl -X 'POST' \
  'https://$VAMPY_URL/api/ext/v1/import/defect_dojo/' \
  -H 'accept: application/json' \
  -H 'Content-Type: multipart/form-data' \
  -H 'Authentication: $VAMPY_API_TOKEN' \
  -F 'spaceID=' \
  -F 'hostname=$DD_URL' \
  -F 'token=$DD_TOKEN' \
  -F 'ignoreSSLCheck=false' \
  -F 'timeout=60' \
  -F 'batchSize=10000' \
  -F 'productIDs=5,8,25' \
  -F 'findingStatuses=active'