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

Название Способ увеличения покрытия исполняемого кода при фаззинг-тестировании с использованием механизма обратной трассировки: выпускная квалификационная работа бакалавра: направление 10.03.01 «Информационная безопасность» ; образовательная программа 10.03.01_05 «Безопасность компьютерных систем (Интеллектуальная защита от киберугроз)» = A method for increasing code coverage in fuzzing testing using a backtrace mechanism
Авторы Шевченко Сергей Владимирович
Научный руководитель Павленко Евгений Юрьевич
Организация Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Выходные сведения Санкт-Петербург, 2026
Коллекция Выпускные квалификационные работы ; Общая коллекция
Тематика фаззинг ; покрытие кода ; стек вызовов ; обратная трассировка ; AFL++ ; fuzzing ; code coverage ; call stack ; backtrace
Тип документа Выпускная квалификационная работа бакалавра
Язык Русский
Уровень высшего образования Бакалавриат
Код специальности ФГОС 10.03.01
Группа специальностей ФГОС 100000 - Информационная безопасность
DOI 10.18720/SPBPU/3/2026/vr/vr26-3166
Права доступа Доступ по паролю из сети Интернет (чтение)
Дополнительно Новинка
Ключ записи ru\spstu\vkr\42840
Дата создания записи 21.08.2026

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

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

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

Объект исследования – процесс фаззинг-тестирования ПО. Предмет – алгоритмы покрытия кода с обратной трассировкой. Цель работы – разработка и экспериментальная оценка способа увеличения покрытия кода при фаззинге на основе механизма обратной трассировки. Проведён анализ методов фаззинга и критериев покрытия. Выполнено сравнение способов получения контекста. Выбран метод ручного обхода кадров стека. Разработана реализация контекстно-зависимого покрытия, интегрированная в AFL++. Эксперименты проведены на платформе Magma с библиотеками SQLite3, libpng, Lua и OpenSSL. Разработан способ увеличения покрытия с настраиваемой глубиной анализа стека. Предложенный метод показал результаты, сопоставимые с режимом CTX AFL++, а в ряде сценариев – более высокие. Установлено, что оптимальная глубина трассировки составляет 8 кадров. Результаты могут использоваться в системах динамического анализа ПО и фаззинг-инструментах для повышения эффективности поиска уязвимостей. Предложенный способ позволяет увеличить покрытие кода, избегая проблемы «взрыва путей», характерного для полного хеширования стека, и может быть интегрирован в современные фаззеры без их глубокой модификации.

The object of the study is the fuzzing testing process of software. The subject is code coverage algorithms with backtrace analysis. The aim of the work is to develop and experimentally evaluate a method for increasing code coverage during fuzzing based on a backtrace mechanism. An analysis of fuzzing methods and coverage metrics was conducted. A comparison of methods for obtaining context was performed. A manual stack frame traversal method was selected. An implementation of context-sensitive coverage integrated into AFL++ was developed. Experiments were conducted on the Magma platform using SQLite3, libpng, Lua, and OpenSSL libraries. A method for increasing coverage with adjustable stack analysis depth was developed. The proposed method showed results comparable to CTX AFL++, and in some scenarios even higher performance. It was found that the optimal tracing depth is 8 frames. The results can be used in dynamic software analysis systems and fuzzing tools to improve vulnerability discovery efficiency. The proposed method allows increasing code coverage while avoiding the “path explosion” problem typical of full stack hashing, and can be integrated into modern fuzzers without major modifications.

Место доступа Группа пользователей Действие
Локальная сеть ИБК СПбПУ Все
Интернет Авторизованные пользователи СПбПУ
Интернет Анонимные пользователи
...