Анализ CVE-уязвимостей для ВКР по кибербезопасности: от изучения баз до автоматизации поиска

Статья на Xakep разбирает ситуацию, когда WPScan находит 20 CVE, но ни один эксплоит не срабатывает. Дело не в «сломанных» инструментах, а в непонимании механики CVE: какая информация скрывается за идентификатором, почему один баг даёт полный контроль над сервером, а другой остаётся лишь формальностью. Для студента, готовящего ВКР по защите информации, это отличная отправная точка: вместо абстрактного «исследования уязвимостей» можно построить реальный проект — от анализа баз данных до разработки собственного сканера или методики приоритизации. Разберём, как превратить материалы статьи в полноценные главы диплома, какие стандарты и метрики использовать и как защитить работу с минимальной болью.

Интеграция CVE-анализа в диплом по информационной безопасности

Что такое CVE и почему это не просто список?

В статье наглядно показано: CVE — это идентификатор, а не описание эксплоита. Он содержит статус (кандидат, принят, отклонён), дату, описание проблемы и ссылки на источники. Настоящая ценность для студента — научиться связывать CVE с практическими последствиями: какие версии ПО затронуты, какой вектор атаки (AV:N — сетевой, AV:L — локальный), сложность эксплуатации и влияние. Без этого любая «находка» WPScan остаётся просто строкой в отчёте.

Для ВКР по направлению «Информационная безопасность» это даёт три прикладных направления:

Темы ВКР: от анализа до автоматизации

НаправлениеАктуальность (отсылка к статье)ЦельЗадачи (3-4)Структура работы
Анализ и приоритизация CVE в веб-приложениях WPScan находит 20 CVE, но эксплойты не работают — проблема ложной тревожности и «мусорных» уязвимостей. Разработать методику ранжирования CVE по фактической эксплуатируемости. 1. Сравнить базы CVE/NVD/Exploit-DB.
2. Выделить критерии (CVSS, наличие эксплоита, тип уязвимости).
3. Построить модель приоритизации.
4. Проверить на реальном стенде.
Гл.1 — Теория CVE и метрик; Гл.2 — Разработка методики; Гл.3 — Тестирование и результаты.
Автоматизация поиска уязвимостей в CMS-системах WPScan — лишь пример. Студент может расширить до Joomla, Drupal и др. Создать сервис, который собирает CVE по выбранной CMS и проверяет конфигурацию. 1. Изучить API NVD и CIRCL.
2. Разработать модуль сбора и нормализации данных.
3. Реализовать сопоставление с версиями ПО.
4. Оценить точность.
Гл.1 — Обзор CAVP и CVE; Гл.2 — Проектирование и реализация; Гл.3 — Эксперимент.
Модель оценки рисков от CVE для корпоративной инфраструктуры Статья подчёркивает, что одинаковые CVE в разном окружении имеют разный эффект. Разработать модель рисков, учитывающую CVSS, критичность актива и компенсирующие меры. 1. Классифицировать активы.
2. Сопоставить CVE с активами.
3. Рассчитать риск.
4. Внедрить в процесс аудита.
Гл.1 — Анализ подходов; Гл.2 — Разработка модели; Гл.3 — Апробация.

Как использовать материалы статьи в главах ВКР

В первой главе (аналитической) возьмите из статьи описание структуры CVE, статусов и типов уязвимостей. Добавьте обзор стандартов — OWASP Top 10, CVSS v3.1, MITRE ATT&CK. Во второй главе (проектной) опишите архитектуру своего решения. Если разработка не предусмотрена, спроектируйте алгоритм поиска и приоритизации — этого достаточно для квалификационной работы бакалавра.

В третьей главе покажите эффективность. Пример из статьи: найдено 20 CVE, реально эксплуатируемых — 2. Ваша методика должна сокращать число ложных срабатываний. В качестве метрики возьмите Precision/Recall, сокращение времени анализа, F1-меру.

Для схем используйте UML (диаграмма вариантов использования, диаграмма деятельности) или C4 (контекст, контейнеры, компоненты). Если в работе есть взаимодействие с внешними API, отразите это на диаграмме последовательности. Пример простого запроса к API NVD на Python:

import requests, json

def get_cve(keyword, apikey=None):
    params = {'keywordSearch': keyword, 'resultsPerPage': 10}
    headers = {'apiKey': apikey} if apikey else {}
    r = requests.get('https://services.nvd.nist.gov/rest/json/cves/2.0',
                     params=params, headers=headers, timeout=30)
    return r.json()

# Проверка: найти CVE для WordPress
data = get_cve('wordpress', apikey='ваш_ключ_NVD')
for item in data.get('vulnerabilities', []):
    print(item['cve']['id'], item['cve']['descriptions'][0]['value'][:100])

Не забудьте про нормоконтроль: оформление кода — по ГОСТ 19.402-78, а структура текста — по ГОСТ 7.32-2017. Если вы пишете про автоматизированную систему, примените ГОСТ 34.601-2020.

Метрики эффективности: как считать пользу от вашей работы

В ВКР по информационной безопасности комиссия всегда спрашивает: «Что изменилось?». Заготовьте 3-4 показателя:

Ссылайтесь на ISO/IEC 25010 для качественных характеристик ПО: функциональность, производительность, сопровождаемость. И помните — эффективность должна считаться на вашем стенде, а не на глаз.

FAQ: частые вопросы студентов

Где брать данные для анализа CVE, если нет доступа к коммерческим базам?

Используйте открытые API — NVD (NIST), CIRCL CVE Search, Vulners. Для получения статистики по эксплоитам подойдёт Exploit-DB, Metasploit Framework с модулями. Всё это доступно бесплатно, для ВКР данных более чем достаточно.

Можно ли обойтись без программирования в ВКР?

Да, если это аналитическая работа. Например, сравнительное исследование покрытия CVE в двух базах. Но для технической специальности код желателен — он сильно повышает оценку и упрощает защиту.

Как оформить схемы атак по стандартам?

Для бизнес-процессов — BPMN, для вариантов использования — UML. Тактики атак опишите матрицей MITRE ATT&CK, а архитектуру — C4. Каждую диаграмму подписывайте по ГОСТ 7.32-2017, рисунки должны иметь ссылки в тексте.

Что делать, если руководитель требует «конкретные результаты»?

Проведите тестирование на виртуальной машине с уязвимым веб-приложением (OWASP JuiceShop, DVWA) и зафиксируйте, сколько CVE из первоначального списка были подтверждены. Даже один такой эксперимент — уже результат.

Типичные ошибки студентов

1. Зависимость от одного источника. Студенты копируют CVE из WPScan или NVD, не проверяя по другим базам. Реально эксплуатируемых может быть меньше, чем на «бумаге». В ВКР это выглядит как неумение работать с данными. Используйте как минимум два источника и укажите это в методологии.

2. Игнорирование CVSS и его ограничений. CVSS 9.8 не значит, что сервер упадёт за минуту. Нужен контекст: какой компонент затронут, есть ли компенсирующие меры. Покажите в работе, что вы учитываете это.

3. Неправильное оформление результатов. Код без комментариев, схемы «в Paint», таблицы без единиц измерения, цель и задачи не совпадают. Комиссия видит это сразу. Сверьтесь с методичкой и ГОСТом ещё до предзащиты.

Из статьи Xakep стоит вынести главное: CVE — это не гарантия взлома, а лишь карточка в каталоге. Ваша сила — в умении интерпретировать эти данные.

Чек-лист «Что проверить перед сдачей»

  1. Все ли источники из статьи и дополнительной литературы оформлены по ГОСТ 7.0.100-2018?
  2. Соответствуют ли задачи тексту глав — нет ли «висяков» (задача есть, а раздела нет)?
  3. Подписаны ли рисунки и таблицы, есть ли на них ссылки в тексте?
  4. Посчитаны ли метрики эффективности и сравниваются ли они с исходным состоянием?
  5. Проверен ли код на работоспособность и включён ли он в приложение?
  6. Уникальность текста выше требований вуза (обычно 60–70%)?
  7. Есть ли акт о внедрении или справка о тестировании?

Что вы получите в итоге

Проработав CVE-тему для диплома, вы научитесь:

Не хотите тратить 120 часов на разбор CVE-API и оформление ГОСТ? Мы можем бесплатно проконсультировать вас по структуре ВКР, помочь с планом, оформлением схем или реализацией кода. Даже если вы решите написать диплом самостоятельно, один разговор сэкномит вам неделю мучений. Просто напишите нам — с какой темой работаете и на каком этапе застряли.
Материал подготовлен экспертами компании «ВКР-Профи». Мы помогаем студентам с 2010 года: разрабатываем темы, пишем код, оформляем отчёты по ГОСТ. Если вам нужна помощю с дипломом или ВКР на заказ по направлениям ИБ, веб-технологиям или автоматизации, наши специалисты готовы подсказать оптимальное решение. Последнее обновление: 2026-08-11

Источник: CVE с самого начала. Учимся искать информацию об уязвимостях (опубликовано 2026-03-18)