Детальная информация

Название Методы ручного и автоматизированного выявления уязвимостей программного обеспечения BMC: выпускная квалификационная работа бакалавра: направление 10.03.01 «Информационная безопасность» ; образовательная программа 10.03.01_05 «Безопасность компьютерных систем (Интеллектуальная защита от киберугроз)» = Methods for manual and automated vulnerability detection in BMC software
Авторы Аргандейкина Софья Артуровна
Научный руководитель Макаров Александр Сергеевич
Организация Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения Санкт-Петербург, 2026
Коллекция Выпускные квалификационные работы ; Общая коллекция
Тематика фаззинг ; поиск уязвимостей ; bmc ; openbmc ; статический ; анализ ; сетевой стек ; аппаратная виртуализация ; afl++ ; clang static analyzer ; qemu ; fuzzing ; vulnerability scanning ; static analysis ; network stack ; hardware virtualization
Тип документа Выпускная квалификационная работа бакалавра
Язык Русский
Уровень высшего образования Бакалавриат
Код специальности ФГОС 10.03.01
Группа специальностей ФГОС 100000 - Информационная безопасность
DOI 10.18720/SPBPU/3/2026/vr/vr26-3167
Права доступа Доступ по паролю из сети Интернет (чтение, печать, копирование)
Дополнительно Новинка
Ключ записи ru\spstu\vkr\42841
Дата создания записи 21.08.2026

Разрешенные действия

Действие 'Прочитать' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Действие 'Загрузить' будет доступно, если вы выполните вход в систему или будете работать с сайтом на компьютере в другой сети

Группа Анонимные пользователи
Сеть Интернет

Целью работы является поиск программных дефектов в сетевом стеке ядра Linux на основе технологии фаззинга с сохранением состояния. Объектом исследования является сетевой стек ядра Linux. Задачи, решаемые в ходе исследования: 1. Исследовать архитектуру ПО BMC и основные векторы атак на него. 2. Проанализировать современные методы ручного и автоматизированного выявления уязвимостей в прошивках встраиваемых систем, включая статический анализ, динамический анализ и фаззинг. 3. Разработать гибридный метод обнаружения уязвимостей в прошивке BMC, объединяющий статический анализ и направленный фаззинг. 4. Выполнить программную реализацию разработанного метода. 5. Оценка скорости и точности работы созданного средства. В ходе работы исследована архитектура ПО BMC на примере компонента bmcweb прошивки OpenBMC. Проанализированы современные методы выявления уязвимостей встраиваемых систем. Разработано средство поиска дефектов в ПО BMC, продемонстрирована его эффективность. Сделан вывод, что безопасность сетевых сервисов BMC требует дальнейшего изучения. Полученные результаты могут быть использованы для проектирования систем динамического анализа ПО BMC. Для достижения данных результатов была разработана программа, использующая технологию аппаратной эмуляции QEMU, а также инструменты Clang Static Analyzer и AFL++ для мониторинга и выявления уязвимостей в сетевом стеке BMC.

The goal of this thesis is to develop a hybrid method for identifying vulnerabilities in BMC that combines statistical analysis and targeted fuzzing. The target is BMC software. The objectives of this research are: 1. To examine the BMC software architecture and the main attack vectors. 2. To analyze modern methods for manual and automated vulnerability detection in embedded system firmware, including static analysis, dynamic analysis, and fuzzing. 3. To develop a hybrid method for detecting vulnerabilities in BMC firmware that combines static analysis and targeted fuzzing. 4. To implement a software implementation of the developed method. 5. Evaluation of the speed and accuracy of the developed tool. This study examined the BMC software architecture using the bmcweb component of the OpenBMC firmware as an example. Modern methods for identifying vulnerabilities in embedded systems were analyzed. A tool for detecting defects in BMC software was developed and its effectiveness was demonstrated. It was concluded that the security of BMC network services requires further study. The obtained results can be used to design dynamic analysis systems for BMC software. To achieve these results, a program was developed using QEMU hardware emulation technology, as well as Clang Static Analyzer and AFL++ tools for monitoring and identifying vulnerabilities in the BMC network stack.

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все
Прочитать Печать Загрузить
Интернет Авторизованные пользователи СПбПУ
Прочитать Печать Загрузить
Интернет Анонимные пользователи
  • РЕФЕРАТ
  • ABSTRACT
  • Содержание
  • Определения, обозначения и сокращения
  • введение
  • 1 Методологии исследования и выявления уязвимостей в ПО BMC
    • 1.1 Этапы анализа программного обеспечения BMC
    • 1.2 Ручные методы анализа уязвимостей BMC
      • 1.2.1 Дизассемблирование
      • 1.2.2 Декомпиляция
      • 1.2.3 Динамический анализ с помощью QEMU
      • 1.2.4 Динамический анализ с помощью Unicorn Engine
      • 1.2.5 Тестирование сетевых сервисов с помощью Nmap
      • 1.2.6 Анализ безопасности с помощью Burp Suite
      • 1.2.7 Фаззинг
      • 1.2.8 Сравнительная таблица ручных методов анализа уязвимостей BMC
      • Таблица 1.1 - Сравнительная таблица ручных методов анализа уязвимостей BMC
      • Таблица 1.1 - Сравнительная таблица ручных методов анализа уязвимостей BMC (продолжение)
      • Таблица 1.1 - Сравнительная таблица ручных методов анализа уязвимостей BMC (продолжение) (1)
    • 1.3 Выводы
  • 2 АВТОМАТИЗИРОВАННЫЕ МЕТОДЫ ВЫЯВЛЕНИЯ УЯЗВИМОСТЕЙ В ПО BMC
    • 2.1 Автоматизированные методы и специализированные инструменты анализа уязвимостей
      • 2.1.1 EMBA
      • 2.1.2 FACT
      • 2.1.3 FWAnalyzer
      • 2.1.4 BinAbsInspector
      • 2.1.5 AFL++
      • 2.1.6 Clang-Tidy
      • 2.1.7 Сравнительная таблица инструментов статического и динамического анализа ПО BMC
    • 2.2 Выводы
  • 3 Разработка ГИБРИДНОГО МЕТОДА ОБНАРУЖЕНИЯ УЯЗВИМОСТЕЙ В ПО BMC
    • 3.1 Выбор компонента для анализа
    • 3.2 Обоснование выбора инструментов и технологий
      • 3.2.1 Инструмент статического анализа Clang Static Analyzer
      • 3.2.2 Инструмент динамического анализа AFL++
      • 3.2.3 Оркестрация
      • 3.2.4 Сводная таблица выбранных инструментов
    • 3.3 Архитектура гибридного метода
    • 3.4 Эксперименты
      • 3.4.1 Сравнение эффективности метода
      • 3.4.2 Сравнение разных версий bmcweb
      • 3.4.3 Оценка эффективности трансформации результатов SAST в данные для DAST
      • 3.4.4 Оценка сложности команды для AFL++
      • 3.4.5 Сравнение времени ручной и автоматической подготовки тестовых сценариев
    • 3.5 Выводы
  • Заключение
  • СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
...