Введение
ГЛАВА 1 Анализ проблемы обеспечения безопасности программного обеспечения в автоматизированных системах ОАО «РЖД» 11
1.1 Общая характеристика предметной области 11
1.2 Анализ проблемы обеспечения безопасности
1.2.1 Уязвимости программного обеспечения 16
1.2.2 Классификация и учет уязвимостей ПО 19
1.2.3 Последствия эксплуатации уязвимого ПО 23
1.2.4 Анализ недекларированных возможностей как уязвимостей ПО 25
1.3 Обзор существующих методов выявления уязвимостей 29
1.3.1 Стандарты разработки программного обеспечения 33
1.3.2 Методы тестирования безопасности 35
1.3.3 Особенности сертификации безопасности программного обеспечения 38
1.3.4 Методы статического анализа 44
1.4 Постановка научной и частных задач исследования 56
Выводы по главе 1 58
Глава 2 Модель системы оценки соответствия програм много обеспечения требованиям безопасности 60
2.1 Анализ существующей системы выявления уязвимостей 60
2.1.1 Формализация показателей, оцениваемых экспертом 64
2.1.2 Обобщение и систематизация данных статического анализа 71
2.1.3 Модель системы
2.2 Выбор и обоснование используемых математических методов 75
2.3 Особенности применения аппарата искусственных нейронных сетей
2.3.1 Модель нейрона 84
2.3.2 Классификация нейронных сетей 87
2.3.3 Исследование процесса обучения нейронных сетей 89
2.3.4 Применение нейронных сетей для решения задач классификации 93
2.4 Разработка модели системы поддержки принятия решения о
соответствии программного обеспечения требованиям безопасности 97
Вывод по главе 2 99
ГЛАВА 3 Разработка метода принятия решения о соотвест вии программного обеспечения требованиям безопасности 102
3.1 Метод верификации безопасности ПО 102
3.1.1 Основные этапы метода 103
3.1.2 Формирование вектора характеристик безопасности ПО 105
3.1.3 Оценивание характеристик безопасности 105
3.1.4 Принятие решения о соответствии ПО требованиям безопасности 107
3.2 Разработка архитектуры нейронной сети для решения задачи верификации безопасности ПО 110
3.2.1 Определение условий решаемой задачи ПО
3.2.2 Определение топологии ИНС 111
3.2.3 Расчет мощности ИНС 112
3.2.4 Разработка метода обучения искусственной нейронной сети используемой в качестве решателя в модуле принятия решений 114
3.2.5 Анализ полученных результатов обучения 128
3.3 Разработка метода использования ИНС для решения задачи поиска заданных конструкций 132
3.3.1 Разработка модели подсистемы поиска заданных конструкций 133
3.3.2 Анализ полученных результатов 137
3.4 Методика автоматизированной верификации безопасности ПО 141
Выводы по главе 3 142
ГЛАВА 4 Описание прототипа системы выявления уязвимостеи и предложений по его практической реализации 143
4.1 Разработка прототипа системы 143
4.1.1 Разработка функциональных требований 146
4.1.2 Методика обучения и тестирования системы 147
4.1.3 Проверка корректности исходных данных 150
4.1.4 Расчет характеристик безопасности ПО 152
4.1.5 Определение классификатора соответствия 152
4.1.6 Принятие решения о соответствии ПО требованиям безопасности 154
4.2 Апробация прототипа 156
4.2.1 Структура системы верификации безопасности ПО АС ОАО «РЖД». 158
4.2.2 Интерфейс системы верификации ПО 160
4.2.3 Анализ соответствия проекта требованиям безопасности 1 4.3 Методика проведения испытаний 168
4.4 Анализ полученных результатов и разработка предложений по
практическому применению СВУ 174
Выводы по главе 4 179
Заключение 182
Список использованных источников 185


