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

Название: Выбор оптимального алгоритма подготовки данных для максимизации покрытия кода при тестировании программного обеспечения на безопасность: выпускная квалификационная работа бакалавра: направление 27.03.03 «Системный анализ и управление» ; образовательная программа 27.03.03_02 «Cистемный анализ в информационных системах и технологиях»
Авторы: Железный Иван Игоревич
Научный руководитель: Магер Владимир Евстафьевич
Организация: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Выходные сведения: Санкт-Петербург, 2020
Коллекция: Выпускные квалификационные работы; Общая коллекция
Тематика: тестирование программного обеспечения; покрытие кода; бинарная инструментация; фаззинг; software testing; code covering; binary instrumentation; fuzzing
Тип документа: Выпускная квалификационная работа бакалавра
Тип файла: PDF
Язык: Русский
Уровень высшего образования: Бакалавриат
Код специальности ФГОС: 27.03.03
Группа специальностей ФГОС: 270000 - Управление в технических системах
Ссылки: Отзыв руководителя; Отчет о проверке на объем и корректность внешних заимствований
DOI: 10.18720/SPBPU/3/2020/vr/vr20-478
Права доступа: Доступ по паролю из сети Интернет (чтение, печать)
Ключ записи: ru\spstu\vkr\10041

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

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

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

Сеть: Интернет

Аннотация

В представленной работе рассмотрены основные подходы, используемые для автоматизированного выявления программных ошибок, основанные на анализе покрытия исполняемого кода. Предложен подход, использующий метод системных матриц, для оценки трасс выполнения программы. В практической части работы было разработано программное средство для оценки эффективности рассматриваемых методов, и проведен сравнительный анализ.

In this paper, the main approaches used for the automated detection of software errors are considered, based on the analysis of the coverage of executable code. An approach using the system matrix method for estimating program execution paths is proposed. In the practical part of the work, a software tool for evaluation of the effectiveness of methods under consideration was developed, and a comparative analysis was carried out.

Права на использование объекта хранения

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

Оглавление

  • СОДЕРЖАНИЕ
  • ВВЕДЕНИЕ
  • 1 Обзор методов подготовки тестовых данных для выявления ошибок в программном обеспечение
    • 1.1 Выявление ошибок в программном обеспечении с использованием фаззинга
    • 1.2 Исследование алгоритма подготовки данных на основе анализа покрытия кода, применяемого в AFL
    • 1.3 Описание основных недостатков фаззинговой стратегии используемой в AFL
    • 1.4 Подходы для повышения эффективности фаззинга, используемые в VUzzer
      • 1.4.1 Расчет весов базовых блоков на основе вероятностной оценки исполнения
      • 1.4.2 Выявление кода обработки ошибок
  • 2 Оптимизация существующих методов генерации входных данных при тестировании программного обеспечения
    • 2.1 Формализация задачи покрытия кода
    • 2.2 Расчет весов базовых блоков на основе оценки безопасности исполняемого кода
    • 2.3 Использование метода системных матриц для выбора оптимальных входных данных
  • 3 Подготовка демонстрационного стенда для оценки эффективности работы рассматриваемых алгоритмов
    • 3.1 Анализ инструментов оценки покрытия исполняемого кода
    • 3.2 Разработка программного средства анализа покрытия кода
      • 3.2.1 Разработка статического анализатора кода
      • 3.2.2 Разработка программного средства динамического анализа покрытия исполняемого кода
  • 4 Сравнение результатов проведенных испытаний
  • Заключение
  • Список использованных источников

Статистика использования

stat Количество обращений: 12
За последние 30 дней: 0
Подробная статистика