Основные изменения:
- Большая часть запросов Vulners API v.3 теперь использует Get, а не Post
- Новый запрос "search/id" для просмотра бюллетеня по известному идентификатору
- В запросе на поиск или на получение информации по идентификатору можно указать "references=true", чтобы результатах отображались все связанные объекты
- Результаты в формате json выводятся в отформатированном человекочитаемом виде
Обратите внимание на validateparam. Там указываются возможные входные параметры и их типы.
"lucene": [
{
"requireparam": {
"parameters": [
"query"
]
}
},
{
"validateparam": {
"parameters": [
{
"skip": "int",
"query": "str",
"size": "int",
"sort": "str"
}
]
}
}
], |
Примеры:
- Просмотр бюллетеня по идентификатору "DSA-1781":
- Просмотр бюллетеня по идентификатору "DSA-1781" с зависимостями (плагины детекта, эксплоиты и т.д.):
- Поиск бюллетеней по запросу "type:centos":
- Поиск бюллетеней по запросу "type:centos" с зависимостями (плагины детекта, эксплоиты и т.д.):
- Поиск бюллетеней по запросу "type:centos" с зависимостями (плагины детекта, эксплоиты и т.д.); показать 3 бюллетеня, 2 первых пропустить:
- Поиск по параметру из бюллетеня (идентификатор Nessus плагина):
- Посмотреть доступные хелпы по полям и их значениям:
{
"data": [
"nessus",
"cve",
"exploitdb",
"xssed",
"zdt",
...
"lenovo",
"msvr",
"paloalto",
"nginx"
],
"result": "OK"
} |
Как показывают измерения, скорость поиска по Vulners.com остается крайне высокой:
$ curl "https://vulners.com/api/v3/search/lucene/?query=type:centos&size=3&skip=2&references=true"
-w %{time_connect}:%{time_starttransfer}:%{time_total}
...
],
"result": "OK"
}0,000:0,162:0,165
|
В среднем один запрос выполняется 35-45ms