Ви є тут

Разработка метода, алгоритмов и программ для автоматического поиска уязвимостей программного обеспечения в условиях отсутствия исходного кода

Автор: 
Благодаренко Артем Васильевич
Тип роботи: 
кандидатская
Рік: 
2011
Кількість сторінок: 
140
Артикул:
156087
179 грн
Додати в кошик

Вміст

ВВЕДЕНИЕ.
1. АНАЛИЗ МЕТОДОВ АВТОМАТИЧЕСКОГО ПОИСКА УЯЗВИМОСТЕЙ ПО БЕЗ ИСХОДНОГО КОДА
1.1. ОС ЮВНЫП ПОНЯТИЯ.
1.1.1 Проблема уязвимости ПО.
1.1.2 Задача поиска уязвимостей
1.2. Обзор методов, исюльзуемых при тестировании по.
1.2.1 Профилактика уязвимостей.
1.2.2 Модульное и интеграционное тестирование
1.2.3 Внедрение ошибок и отслеживание утечки ресурсов
1.3. Обзор методов, используемых при верификации ПО
1.3.1 Ручной поиск уязвимостей.
1.3.2 Поиск шаблонов уязвимостей.
1.3.3 Тестирование методом серого ящикам
1.3.4 Фаззииг в памяти.
1.4. Цель и задачи работы
1.5. Выводы
2. РАЗРАБОТКА АЛГОРИТМА ОЦЕНКИ ПОКРЫТИЯ КОДА ТЕСТАМИ
2.1. Выбор критерия оценки покрытия кода тесгами.
2.1.1 Классы критериев.
2.1.2 Интегральная структурная оценка степени завершенности тестирования ПО
2.2. алгоритм оценки покрытия кода.
2.2.1 Оценка покрытия с использованием датчиков исполнения.
2.2.2 Расстановка датчиков исполнения на основе статического анализа.
2.2.3 Расстановка датчиков исполнения на основе динамического анализа
2.3. Отслеживание реакции НО на входные данные.
2.3.1 Динамическая оценка покрытия.
2.3.2 Сохранение значений параметров функций.
2.4. Оценка покрытия с использованием аппаратных средств процессора
2.4.1 Аппаратные средства отладки процессоров ле
2.4.2 Разработка средства оценки покрытия кода на основе аппаратных возможностей
2.5. ВЫВОДЫ
3. РАЗРАБОТКА АЛГОРИТМОВ ОБЕСПЕЧЕНИЯ И УЛУЧШЕНИЯ ПОКРЫТИЯ КОДА ТЕСТАМИ
3.1. АЛГОРИТМ обеспечения кода тестами.
3.1.1 Аналог модульного тестирования для ПО в условиях отсутствия исходного кода.
3.1.2 Критерий оценки охвата тестирования
3.1.3 Оценка охвата тестирования.6
3.1.4 Алгоритм внедрения данных. Генерация интерфейсов
3.1.5 Алгоритм внедрения данных. Динамическая компоновка
3.2. ГЕНЕРАЦИЯ ТЕСТОВЫХ ДАННЫХ
3.2.1 Использование данных, поступающих из спутникового канала
3.3. АЛГОРИТМ УЛУЧШЕНИЯ ПОКРЫТИЯ ТЕСТАМИ
3.3.1 Алгоритм последовательного внедрения ошибок.8I
3.3.2 Последовательное внедрение ошибок в бинарный код
3.4. ВЫВОДЫ.
4. РАЗРАБОТКА МЕТОДА АВТОМАТИЧЕСКОГО ПОИСКА
УЯЗВИМОСТЕЙ ПО В УСЛОВИЯХ ОТСУТСТВИЯ ИСХОДНОГО КОДА
4.1. Описание.
4.1.1 Входные данные
4.1.2 Выходные данные.
4.1.3 Ограничения.
4.1.4 Последовательность шагов
4.1.5 Выбор точки внедрения данных
4.1.6 Выбор цели
4.1.7 Предварительный анализ
4.1.8 Выбор точки внедрения данных
4.2. Внедрение данных и отслеживание реакции
4.2.1 Подготовка тестов.
4.2.2 Пример создания теста.
4.2.3 Исполнение теста
4.2.4 Оценка результатов
4.3. Анализ уязвимости на основе данных о сбое.
4.4. ВЫВОДЫ
5. ЭКСПЕРИМЕНТАЛЬНОЕ ИССЛЕДОВАНИЕ МЕТОДА,
АЛГОРИТМОВ И ПРОГРАММ
5.1. Описание системы
5.2. Сравнение предложенного алгоритма оценки покрытия с аналогами.
5.2.1 Сравнение с алгоритмом, использующим аппаратные средства.
5.3. Сравнение предложенного алгоритма внедрения данных с аналогами
5.3.1 Сравнение с тестированием черного ящика в памяти.
5.4. Сравнение предложенного алгоритма увеличения покрытия с аналогами
5.4.1 Алгоритм последовательного внедрения ошибок в действии.
5.4.2 Сравнение с алгоритмом случайного внедрения ошибок.
5.5. Выводы
ЗАКЛЮЧЕНИЕ.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ