Vulners представляет собой обширную и постоянно обновляемую базу данных об уязвимостях, эксплоитах и патчах. Мы уже рассказывали про лучшие сайты для поиска уязвимостей, среди которых Vulners. Сегодня покажу, как получить и использовать API Vulners с библиотекой Python.
Еще по теме: Использование API VirusTotal
Vulners API
API Vulners позволяет программно получать и извлекать данные. API Vulners можно использовать для интеграции информации о уязвимостях в различные приложения, инструменты и сервисы, что облегчает задачу специалистов ИБ и разработчиков.
Основные возможности API Vulners:
- Доступ к обширной базе данных информации об уязвимостях, включая подробности, степень опасности, затронутые ПО и ссылки на ресурсы.
- Предоставляет информацию о публично доступных эксплойтах, связанных с уязвимостями.
- Данные о патчах и исправлениях, доступных для уязвимостей.
- API поддерживает поиск уязвимостей с использованием идентификаторов CVE (стандартный идентификатор для известных уязвимостей).
- Можно использовать API для поиска конкретных уязвимостей или информации о безопасности с использованием различных фильтров, таких как ключевые слова и другие.
Для использования API Vulners вам нужно зарегистрироваться и получить ключ API, который используется для аутентификации ваших запросов.
Получение API Vulners
Для регистрации бесплатной учетной записи и получения ключа API Vulners потребуется всего несколько минут. Ниже приведена инструкция о том, как это сделать.
Зарегистрируйте учетную запись.
После регистрации войдите в систему и перейдите на вкладку API keys.
Выберите название для сгенерированного ключа API, выберите область применения и тип лицензии.
Также можно ограничить доступ к ключу API по IP — указав IPv4-адреса, которым предоставляется доступ.
Выберите область применения из списка.
- webhook — для авторизации оповещения веб-хука.
- scan — для использования в агенте Linux.
- api — для авторизации любых вызовов API.
- errata — для авторизации дополнений Vulners CentOS.
- reports — для генерации отчетов сканера Linux.
Нажмите Save.
Ваш ключ API готов к использованию.
Использование API Vulners с библиотекой Python
Vulners – это библиотека Python для базы данных Vulners. Пакет доступен на PyPI.
Для установки выполните команду:
1 |
$ pip install vulners |
Все коллекции перечислены по адресу:
1 |
https://vulners.com/#stats |
Можно искать уязвимости с высокими баллами CVSS:
1 |
https://vulners.com/search?query=cvss.score:[6%20TO%2010]%20AND%20order:published |
Также можно искать уязвимости в Linux:
1 |
https://vulners.com/search?query=bulletinFamily:unix%20order:published |
Следующий скрипт позволяет использовать некоторые методы, предлагаемые Python API, для получения информации о конкретной уязвимости. Вы можете найти код в репозитории GitHub в файле search_vulners.py.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
import vulners vulners_api = vulners.Vulners(api_key="API_KEY") openssl = vulners_api.find_all(query="openssl", limit=5) for i, val in enumerate(openssl): for key, value in val.items(): print(key, ":", value) CVE_2023_001 = vulners_api.document("CVE-2023-0001") for key, value in CVE_2023_001.items(): print(key, ":", value) references = vulners_api.get_bulletin_references("CVE-2023-0001") for key, value in references.items(): for key, val in enumerate(value): for key, value in val.items(): print(key, ":", value) |
Скрипт использует API Vulners для получения информации по идентификатору CVE.
Следующий вывод представляет собой частичный результат, в котором получена информация о первом идентификаторе CVE, найденном в 2023 году.
API Vulners можно интегрировать в инструменты мониторинга безопасности, платформы оценки уязвимостей и другие приложения.
ПОЛЕЗНЫЕ ССЫЛКИ:
- Используем Nmap NSE для поиска уязвимостей
- Сканер уязвимостей из Nmap с помощью Vulscan
- Ищем уязвимости с помощью OpenVAS в Metasploit