автореферат диссертации по машиностроению и машиноведению, 05.02.23, диссертация на тему:Разработка методов и средств комплексной оценки качества систем защиты программного обеспечения

кандидата технических наук
Лебедев, Сергей Сергеевич
город
Москва
год
2007
специальность ВАК РФ
05.02.23
Диссертация по машиностроению и машиноведению на тему «Разработка методов и средств комплексной оценки качества систем защиты программного обеспечения»

Автореферат диссертации по теме "Разработка методов и средств комплексной оценки качества систем защиты программного обеспечения"

На правах рукописи

Лебедев Сергей Сергеевич

РАЗРАБОТКА МЕТОДОВ И СРЕДСТВ КОМПЛЕКСНОЙ ОЦЕНКИ КАЧЕСТВА СИСТЕМ ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

Специальность 05 02 23 «Стандартизация и управление качеством продукции»

Автореферат диссертации на соискание ученой степени кандидата технических наук

ООЗ176424

Москва-2007

003176424

Работа выполнена в Московском авиационном институте (государственном техническом университете) на кафедре «Технологическое проектирование летательных аппаратов и управление качеством»

доктор технических наук, профессор Денискин Ю И

доктор технических наук, профессор Рахманов Михаил Львович кандидат технических наук, доцент Одинокое Сергей Анатольевич

Московский государственный институт электроники и математики

Защита состоится « » года в__ часов на заседании диссер-

тационного совета Д 212 125и0 при Московском авиационном институте (государственном техническом университете), «МАИ» Волоколамское шоссе, 4, г Москва, А-80, ГСП-3 125993

С диссертацией можно ознакомиться в библиотеке Московского авиационного института (государственного технического университета)

1 С

Автореферат разослан _» 2007 года

Научный руководитель

Официальные оппоненты

Ведущая организация

Ученый секретарь диссертационного совета к т н , профессор

Комаров Ю Ю

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность.

Прогресс в области применения информационных технологий (ИТ), обусловленный развитием вычислительных систем и программного обеспечения (ПО), сопровождается повышением требований к стабильности функционирования информационных систем и устойчивости при попытках нарушения их безопасности Эти требования сформулированы в различных нормативных документах, в том числе в требованиях Гостехкомиссии Российской Федерации Все большее значение приобретают различные методы защиты ПО от незаконного копирования и распространения Следует отметить, что качество современных систем защиты ПО изменяется в весьма широком диапазоне - от очень хорошего до крайне неудовлетворительного Это связано с недостаточной развитостью (или отсутствием вообще) единого теоретического и методологического обеспечения процессов разработки, тестирования и сертификации систем защиты ПО, учитывающих специфику этих систем и позволяющих комплексно оценить возможности конкретной системы защиты, не только с точки зрения ее устойчивости к взлому, но и с точки зрения ее влияния на работу пользователя защищенного ПО

Недостатком многих систем защиты является легкость их преодоления Злоумышленник, обладающий соответствующими знаниями и навыками, может различным образом за приемлемое время своей работы получить пароль системы защиты или добиться подмены правильного пароля (неправильный пароль принимается системой защиты за правильный) Следует также отметить такой часто встречающийся недостаток некоторых систем защиты ПО, как затруднение или даже невозможность доступа легального пользователя к функциям ПО Отмеченные недостатки систем защиты являются следствиями неудовлетворительного качества защиты ПО

Качественная система защиты ПО должна обладать двумя (отчасти противоречивыми) свойствами: обеспечивать достаточно надежную защиту, быть незаметной («прозрачной») для легального пользователя ПО На практике установлено, что защита ПО является достаточной, если стоимость ее взлома сравнима со стоимостью самого ПО

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

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

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

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

Актуальность постановки вопроса о всесторонней оценке качества систем защиты ПО подтверждается также тем, что разрабатываемые методы позволят оценить как показатели качества, непосредственно связанные с назначением систем защиты ПО и важные для пользователя-разработчика ПО (надежность, корректность, способность обеспечить защиту ПО и устойчивость к взлому), так и показатели качества, важные для пользователя защищенного ПО (удобство эксплуатации и обслуживания, временная эффективность, ресурсоемкость)

Все вышеизложенное подтверждает актуальность избранной темы диссертации и обусловливает целесообразность проведения диссертационного исследования

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

Для достижения указанной цели был сформирован комплекс научных и научно-прикладных задач

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

На основе всестороннего анализа международных и отечественных стандартов дать классификацию методов оценки качества программного обеспечения

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

Разработать обобщенную структуру систем защиты программного обеспечения Разработать модель системы «защищаемое программное обеспечение - система защиты программного обеспечения» и выполнить анализ работоспособности этой модели с учетом функциональных связей между ее структурными элементами

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

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

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

В качестве объекта исследования в диссертационной работе выбраны информационные технологии и системы защиты программного обеспечения

Предметом исследования являются методы и средства управления качеством систем защиты программного обеспечения Методы исследования.

Методы теории информации, методы математического описания и исследования информационных процессов, методы передачи, обработки, хранения, извлечения и классификации информации, методы теории алгоритмов, методы теории вычислительных процедур, методы управления качеством программного обеспечения, методы обеспечения надежности программ и др

При выполнении работы использовались отечественная и зарубежная научно-техническая литература, нормативные, руководящие и методические материалы Гостехкомиссии РФ, Федерального агентства по техническому регулированию и метрологии РФ и других организаций, касающиеся вопросов нормативно-методического обеспечения процесса обеспечения безопасности и качества программных комплексов и средств вычислительной техники Научная новизна.

Впервые с новым научным качеством, применительно к новой, ранее недостаточно изученной в научном плане объектной и предметной сфере управления качеством систем защиты программного обеспечения

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

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

3 Разработана общесистемная модель жизненного цикла систем защиты ПО, позволившая усилить ее направленность на повышение качества систем защиты за

счет оптимального управления процессами контроля качества на каждом этапе жизненного цикла.

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

5 Предложены и апробированы методические рекомендации по реализации технологической и эксплуатационной безопасности программных комплексов

В соответствии с поставленными в работе задачами автором получены следующие научные результаты

Классификация методов оценки показателей качества программного обеспечения общего назначения в применении к системам защиты

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

Методика и рекомендации проектирования высококачественных систем защиты программного обеспечения, основанных на неуязвимых при раскрытии алгоритмах

Модель системы «защищаемое программное обеспечение - система защиты программного обеспечения» Анализ работоспособности этой модели с учетом функциональных связей между ее структурными элементами

Комплексная модель оценки качества систем защиты программного обеспечения Общесистемная модель жизненного цикла систем защиты программного обеспечения, направленная на повышение качества систем защиты и использование разнообразных механизмов контроля качества на каждом этапе

Методика обеспечения безопасности компьютерной системы на основе принципов, регламентированных действующими стандартами качества и безопасности

Практическая значимость.

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

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

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

Результаты теоретических исследований, выполненных в диссертационной работе, внедрены в ЗАО «Диаком ЛТД», где использованы при разработке программного обеспечения лазерного комплекса DIAMAX

Результаты исследований также используются в учебном процессе Всероссийской государственной налоговой академии Российской Федерации при проведении практических и факультативных занятий Апробация работы

Основные теоретические и методические результаты диссертационной работы были доложены и обсуждены на научно-методических семинарах на факультете информационных технологий Всероссийской государственной налоговой академии, на кафедре "Технологическое проектирование летательных аппаратов и управление качеством" Московского авиационного института (государственного технического университета), на международных конференциях «Авиация и космонавтика - 2003», «Авиация и космонавтика - 2007» Публикации

По теме диссертационной работы опубликовано 8 печатных работ (статьи в периодических изданиях, тезисы докладов на научных конференциях и семинарах), в которых достаточно полно отражены теоретические и прикладные результаты выполненного исследования

Структура и объем диссертационной работы.

Диссертационная работа объемом 180 страниц машинописного текста состоит из введения, четырех глав, заключения, списка использованных источников из 193 наименований) и приложения В работе содержится 6 рисунков и 4 таблицы

СОДЕРЖАНИЕ РАБОТЫ

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

Обосновывается актуальность научного диссертационного исследования выбираются объект, предмет, определяются цели и задачи исследования, а также выделяются полученные резучьтаты, обладающие научной новизной и практической ценностью

Приводятся данные о фактическом внедрении, авторских публикациях, апробации работы и структуре диссертации

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

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

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

онная часть сообщения, а заголовки сообщений не шифруются Это позволяет свободно управлять потоками зашифрованных сообщений Сквозное шифрование организуется на сетевом и/или транспортном уровнях со1ласно эталонной модели рассмотренной архитектуры

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

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

- определения важнейших понятий, непосредственно связанных с проблемой управления безопасностью ИТ,

- определение важных архитектурных решений по созданию систем управления безопасностью ИТ (СУБ ИТ), в том числе, определение состава элементов, задач, механизмов и методов СУБ ИТ,

- описание типового жизненного цикла и принципов функционирования СУБ

ИТ,

- описание принципов формирования политики (методики) управления безопасностью ИТ,

- методика анализа исходных данных для построения СУБ ИТ, в частности методика идентификации и анализа состава объектов защиты, уязвимых мест информационной системы, угроз безопасности и рисков и др ,

- методика выбора соответствующих мер защиты и оценки остаточного риска,

- принципы построения организационного обеспечения управления в СУБ ИТ

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

Выполнена проблемная постановка задачи управления качеством и сертификации программного обеспечения

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

Контроль выполнения этих требований должен осуществляться с учетом предполагаемых условий эксплуатации ПО при форсированных нагрузках и тестирова-

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

Определена актуальность и намечены подходы к реализации обеспечения стабильности программно-технических решений при построении системы управления безопасностью информационных технологий

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

Вторая глава посвящена анализу и экспертным оценкам качества программного обеспечения общего назначения

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

Отмечено, что формализации показателей качества посвящена группа нормативных документов, в т ч международный стандарт ISO 9126 1991, в котором выделены характеристики (показатели качества), позволяющие оценивать ПО с точки зрения пользователя, разработчика и управляющего проектом Аналогом международного стандарта IS09126 1991 является российский стандарт ГОСТ Р ИСО/МЭК 9126-93

На основе всестороннего анализа указанных стандартов выделены классы показателей качества ПО сопровождения, надежности, удобства работы, эффективности, универсальности, корректности

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

Показано, что в настоящее время оценку структурной (топологической) и информационной сложности ПО проводят различными способами, которые можно разделить на метрики сложности потока управления и метрики сложности потока данных Оценка сложности потока управления в основном проводится с помощью метрик Холстеда и Маккейба

Согпасно метрике Холстеда объем программы V вычисляется по формуле

V = iVlog2(«),

где п=п1+п2 - словарь программы, N=N1+N2 - длина программы, nl - число уникальных операторов в программе, п2 - число уникальных операндов, в програм-

ме, N1 - общее число операторов в программе, N2 - общее число операндов в программе

Метрика Холстеда получила свое развитие в так называемых информационных языковых процессорах (ИЯП)

Необходимость оценки структурности связана с тем, что от этого показателя напрямую зависит удобство сопровождения и модификации ПО Кроме того, при строгом соблюдении технологии структурного проектирования ПО, количество ошибок в нем значительно снижается

Для оценки наглядности ПО необходимо использование методов психологии и/или метода экспертных оценок Понятие наглядности пока формализовать невозможно, однако существуют методики косвенной оценки наглядности, например, оценка уровня комментированное™ программы С

С = Ыс/Ы,

где Ыс - количество комментированных строк исходного текста программы,

N - общее количество строк исходного текста программы

Отмечено, что, используя оценку уровня языковых средств, применяемых в программе, можно также косвенно оценить наглядность программы. В основном для такой оценки применяются методы, основанные на метрике Холстеда Предложено также использовать метод, основанный на применении ИЯП и позволяющий сравнивать уровни языковых средств для нескольких программ путем сравнения похожих предложений, записанных на двух разных языках программирования

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

Проанализированы методы оценки надежности программного обеспечения традиционными методами оценки надежности промышленных изделий в применении к специфике ПО

В последнее время появляются методы оценки надежности, разработанные специально для оценки надежности ПО Они используют понятие математической модели надежности программы (МНП) Это предельно абстрагированная математическая модель программы, в которой отсутствуют детали, не влияющие на надежность Среди МНП выделены априорные МНП (АМН), эмпирические МНП (ЭМН) и полные (ПМН)

Наиболее известными и применяемыми на практике являются непрерывные эмпирические математические модели надежности (НЭМН) Джелински-Моранды и

Шумана. Согласно модели Шумана интенсивность отказов определяется тем, насколько часто в процессе выполнения программы приходится сталкиваться с дефектами Исследования, проведенные на ряде комплексов крупных программ показали, что распределение числа накопленных ошибок п от времени I их обнаружения хорошо аппроксимируется экспонентой (рис 1)

2 4 6 8 10 12 14

Рис 1 Зависимость времени наработки на проявление ошибки от количества устраненных ошибок

В связи с недостаточным распространением МНП в современном производстве программных средств оценка надежности ПО ведется в основном с помощью бета-тестирования Это приводит к некоторой неопределенности понятия «надежность» конкретного ПО

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

Исследованы также показатели эффективности и корректности Для учета показателей корректности даны рекомендации по применению эвристических методов, таких как, метод Миплса, метод «штурма», эмпирической модели фирмы ШМ и др

Исследован метод для экспертных оценок некоторых трудноформализуемых показателей качества, таких как легкость освоения ПО и удобство обслуживания и эксплуатации ПО Для формализации и суммирования результатов экспертной оценки использован подход, основанный на понятии нечеткого множества Л Заде Нечеткое множество А определяется как совокупность упорядоченных пар, составленных из элементов хеХ, и соответствующих степеней принадлежности Ра(х) и обозначается следующим образом

К - коэффициент пропорциональности, учитывающий масштаб

п = М0( 1-е-к')

число обнаруженных оши-

А = {(X, ¥фф].

где Fa(x) - функция принадлежности, выражающая степень принадлежности элемента х к множеству А, X - область определения функции принадлежности Fa(x)

Функция принадлежности Fa(x) является специальной характеристической функцией нечеткого множества А и принимает значения из интервала [0, 1] Область определения X функций принадлежности, рассматриваемых в данной методике, определяется метрикой показателя качества и для общности представляется интервалом [0, 1 ], на котором введена сетка точек действительной числовой оси, расположенных с шагом 0,005 (сетка может быть иной)

В процессе получения оценок используются нечеткие числа (¿-Л)-типа, определенные на интервале [0, 1 ] Нечеткое число может быть задано с помощью функции принадлежности (L-R) - типа следующим образом L((a-x)/l), х < а, 1 > 0, Fa(x) = 1, х = а, R((x-a)/r), х >а, г > 0, где L и R- невозрастающие функции на множестве неотрицательных действительных чисел, а — среднее значение (четкое число), / иг — левый и правый коэффициенты нечеткости соответственно

Нечеткое число, записываемое в виде тройки (а, I, г), является характеристикой ПО по определенному показателю качества (нечеткое значение показателя качества)

Процесс формирования мнения эксперта состоит в выборе этого мнения и его уточнении в зависимости от уверенности эксперта. В процессе формирования мнений для формализации их значений экспертами используются лингвистические переменные, принимающие значения показателей качества данного ПО и выражающие мнение эксперта Каждому лингвистическому значению соответствует нечеткое число (L-R) - типа. При этом а - мода нечеткого числа отражает значение мнения эксперта (четкое значение показателя качества), а коэффициенты нечеткости / и г соответствуют степени уверенности эксперта в своем мнении Процесс формализации мнений экспертов показан на рис 2

Полученные тройки нечетких чисел являются исходными данными для построения функции принадлежности

Рис. 2. Процесс формализации мнений экспертов

Значения функций принадлежности находятся по формуле:

0 < х < а, 1 > 0; , а < х < 1, г > 0, / = 1, N.

При оценке показателя качества группой экспертов строятся функции принадлежности, отражающие мнения каждого эксперта. Каждому эксперту приписывается коэффициент компетентности (по умолчанию равный единице).

Обобщенная функция принадлежности по всем экспертам получается с использованием меры согласованности мнений экспертов:

где 1гр[1](х) - функция принадлежности, отражающая мнение ¿-го эксперта. Обобщенная функция принадлежности вычисляется следующим образом:

где сЩ - коэффициент компетентности /-го эксперта.

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

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

Третья глава посвящена разработке комплексной модели оценки качества систем защиты программного обеспечения.

Под системой защиты ПО от несанкционированного копирования (НСК) и несанкционированного использования понимается комплексное средство, как правило,

г0 (х) = 1 - гпах Рр[1]{х) - тт 7</?[г](х),

являющееся частью самого ПО, предназначенное для затруднения, или (в идеале) предотвращения нелегального копирования (исполнения) защищенного ПО, с которым она ассоциирована.

Сформулированы требования к эффективной системе защиты ПО, которые показаны на рис. 3 а также предложена обобщенная структура системы защиты программного обеспечения, показанная на рис. 4.

Рис. 3. Требования к эффективной системе защиты ПО

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

Рассмотрены различные способы реализации обобщенной структуры системы защиты ПО. В частности, способы идентификации характеристик среды и способы противодействия нейтрализации защиты, в том числе способы с применением шито-

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

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

Приведен пример двухуровневой реализации шитого кода При реализации систем защиты ПО на основе шитого кода появляется уникальная возможность создания систем защиты ПО, переносимых между различными типами ЭВМ

В третьей главе диссертации разработана модель системы «защищаемое программное обеспечение - система защиты программного обеспечения»

На основе стандартного определения качества ПО дано определение качества системы защиты ПО

Качеством системы защиты ПО называется совокупность потребительских свойств системы защиты ПО, характеризующих ее способность удовлетворять потребность пользователей в защите ПО

Определены функции системы защиты в составе комплекса «система защиты ПО - защищаемое ПО» и рассмотрено функционирование этого комплекса С этой целью комплекс представлен в виде модели, показанной на рис 5

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

Разработана методика оценки качества систем защиты ПО Отличительной особенностью этой методики является то, что оценка качества системы защиты ПО проведена общепринятым стандартным способом - путем оценки совокупности показателей качества, дающих в целом общую оценку

Рис. 5. Модель системы «защищаемое ПО - система защиты ПО»

Выделены показатели качества, характерные как для систем защиты ПО, так и для ПО общего назначения, но имеющие особое значение в системах защиты. Это показатели корректности и надежности.

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

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

Под интегрированностью системы защиты с защищаемым ПО предложено понимать степень зависимости нормального функционирования защищенного ПО от функционирования его системы защиты. Степень интегрированности характеризу-

ет сложность процесса нейтрализации или полного удаления системы защиты от защищаемого ПО (в этом заключается процесс взлома) и имеет два аспекта: физический и информационный.

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

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

Разработка архи-

Рсгл-ЛЯ^ЛПТЬ-Я йпгп-1

Эскизное ппоек-1

Системный анализ и пооек-

Разработка программных компонент

Запись на носи-|

Комплексная

Аигпиомпя:-! г>т-1

Отладка про-

'Д »(РКИЧУ

Стендовые ис-1

Рекламацион-

Эксплуатация,

Контроль

Межведомст- Испыта-

Совместные

Эксплуатаци-

шмшш

I орая.. I

Рис. 6. Общесистемная модель жизненного цикла систем защиты программного обеспечения

В первой части ЖЦ проводится системный анализ, проектирование, разработка, тестирование и испытания системы защиты ПО Номенклатура работ, их трудоемкость, длительность и другие характеристики на этих этапах существенно зависят от объекта и среды разработки Изучение подобных зависимостей для различных классов ПО позволяет прогнозировать состав и основные характеристики графиков работ для новых версий ПО

Вторая часть ЖЦ, отражающая поддержку эксплуатации, сопровождения и совершенствования систем защиты ПО, относительно слабо связана с характеристиками объекта и среды разработки Номенклатура работ на этих этапах более стабиль-па, а их трудоемкость и длительность могут существенно изменяться, и зависят от массовости применения ПО Для любой модели ЖЦ обеспечение высокого качества системы защиты программных комплексов возможно лишь при использовании регламентированного технологическо1 о процесса на каждом из перечисленных этапов

Такой процесс поддерживается САБЕ-средствами автоматизации разработки, которые целесообразно выбирать из имеющихся или создавать с учетом объекта разработки и адекватного ему перечня работ

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

Разработана методика обеспечения безопасности при реализации общесистемной модели жизненного цикла систем защиты программного обеспечения Существенным отличием предлагаемой методики является конкретизация вопросов обеспечения безопасности при разработке систем защиты ПО в части реализации основных принципов, регламентированных в действующих стандартах безопасности Например, на этапе системного анализа и проектирования вопросы обеспечения качества системы защиты ПО связаны с реализацией следующих принципов

1 Комплексность обеспечения безопасности системы защиты ПО

2 Планируемость применения средств безопасности ПО

3 Обоснованность средств обеспечения безопасности ПО

4 Достаточность безопасности про1 рамм

5 Гибкость управления защитой программ

6 Документируемость технологии создания систем защиты ПО

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

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

основу этой разработки положена схема угроз, которые могут быть реализованы на различных этапах ЖЦ систем защиты ПО (Таблица 1)

Таблица 1 Возможные схемы угроз на этапах жизненного цикла систем защиты программного обеспечения____

Этап жизненного цикла систем защиты ПО Схема угроз

I Этап системного анализа и проектирования Программные закладки

II Этап разработки программных компонент Программные закладки

III Этапы отладки, контроля и испытания программных компонент Программные закладки и маскирующие мероприятия

IV Этап эксплуатации, сопровождения и совершенствования Программные закладки

Наполнение модели технологической безопасности ПО следует проводить с учетом включения следующих элементов

- матрицы чувствительности компьютерной системы к появлению искажений,

- описания запутанных участков кода системы защиты ПО,

- реестра камуфлирующих условий для конкретной системы защиты ПО,

- справочных данных о разработчиках,

- реального и/или реконструированного злого умысла по разрушению системы защиты ПО

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

С учетом этого выполнена практическая реализация дискретной эмпирической модели надежности (ДЭМН) системы защиты программного обеспечения

При реализации ДЭМН системы защиты ПО в качестве базового принят наиболее изученный и распространенный метод Нельсона

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

N /=1

где у„ - величина, которая принимает значение 0, если прогон программы на наборе Е, заканчивается вычислением приемлемого значения функции, и значением /, если этот прогон заканчивается обнаружением дефекта

Вероятность Я того, что прогон программы р на наборе входных данных Е„ выбранных случайно с распределением вероятностей р„ приведет к получению приемлемого результата, равна Я = 1 —Р

Следует заметить, что реальные условия испытаний систем защиты программ всегда существенно отличаются от тех, которые требуются для представительного измерения уровня безопасности ПО Например, тестовые прогоны выполняются на выбранных определенным образом входных наборах данных Тогда вычисление вероятности Я производится с помощью специального алгоритма, предусматривающего использование результатов испытаний

ЗАКЛЮЧЕНИЕ.

Полученные в ходе настоящего диссертационного исследования научные результаты дают автору работы основание для следующих выводов и рекомендаций

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

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

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

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

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

5 Разработана методика получения общей оценки качества программного обеспечения, в соответствии с которой производится суммирование предварительно полученных раздельных оценок некоторой совокупности показателей качества оцениваемой программы Отмечено, что эта методика применима только к оценке качества программного обеспечения общего назначения

6 Определение и формализация показателей качества, разработка способов их оценки в применении к системам защиты программного обеспечения позволила выделить основные показатели, учитываемые при оценке качества систем защиты, особенности систем защиты, связанные с этой оценкой, методы оценки различных показателей качества программного обеспечения, применимые к системам его защиты

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

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

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

10 Разработана модель системы «защищаемое программное обеспечение - система защиты программного обеспечения» В рамках этой модели сформулированы требования к эффективной системе защиты программного обеспечения и определены ее функции в составе комплекса «система защиты - защищаемое программное обеспечение» На основе этих требований разработана обобщенная структура систем защиты программного обеспечения и впервые дано определение качества системы защиты программного обеспечения

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

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

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

ных комплексов В рамках обобщенной методики выполнена практическая реализация дискретной эмпирической модели надежности системы защиты программного обеспечения

14 Разработанные в диссертации комплексная модель оценки качества систем защиты программного обеспечения, а также реализованные в этой модели методы и средства приняты к внедрению в ЗАО "Диаком ЛТД", а также в учебный процесс Всероссийской Государственной Налоговой Академии Российской Федерации

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

Предложенное научное решение проблемной задачи непрерывной оценки качества средств защиты программного обеспечения на протяжении всего жизненного цикла имеет важное теоретическое и практическое значение

Основные положения диссертационного исследования изложены в следующих опубликованных работах автора

Научные статьи, опубликованные в научных журналах, выпускаемых в Российской Федерации, рекомендуемых ВАК.

1 Лебедев С С Оценка качества обучающих программных продуктов //Высшее образование в России 1998 №2 -0,2пл

2 Лебедев С С О качестве систем дистанционного образования //Высшее образование в России 2000 № 6 - 0,2 п л

3. Лебедев С С Качество систем защиты //Высшее образование в России 2003 № 1 -0,2 п л

4 Лебедев С С Разработка методов и средств комплексной оценки качества систем защиты программного обеспечения //Вестник МАДИ 2007 № 1 - 0,5 п л

5 Лебедев С С Оценка качества систем защиты программного обеспечения //Вестник РУДН Серия «Инженерные исследования» 2007 № 3 - 0,5 п л

Научные статьи, опубликованные в других изданиях.

6 Лебедев С С Качество систем управления базами данных //Качество и жизнь 2002 №1 -0,3 п л

7 Лебедев С С. Современные тенденции в обеспечении качества систем защиты программного обеспечения //Материалы международной конференции "Авиация и космонавтика 2007" - М Изд-во МАИ, 2007 - 0,1 п л

8 Лебедев С С Построение качественного программного обеспечения систем дистанционного обучения. //Качество и жизнь Специальный выпуск - М Академия проблем качества, 2007 - 0,3 п л

Отпечатано в ООО «Компания Спутника» ПД № 1 -00007 от 25 09 2000 г Подписано в печать 02 11 07 Тираж 100 экз Уел пл 1,5 Печать авторефератов (495) 730-47-74, 778-45-60

Оглавление автор диссертации — кандидата технических наук Лебедев, Сергей Сергеевич

ВВЕДЕНИЕ.;.

1. АНАЛИЗ СОСТОЯНИЯ И КОНЦЕПЦИИ РАЗВИТИЯ НОРМАТИВНО-МЕТОДИЧЕСКОЙ БАЗЫ В ОБЛАСТИ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И СИСТЕМ ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

1.1. Анализ общих вопросов обеспечения качества информационных технологий.

1.2. Международная нормативно-методическая база в области качества и безопасности информационных технологий.

1.2.1. Нормативное обеспечение управления информационной безопасностью.

1.2.2. Нормативное обеспечение моделей безопасности информационных технологий.

1.2.3. Нормативное обеспечение методов и механизмов безопасности информационных технологий.:.

1.2.4. Нормативное обеспечение криптографических алгоритмов.

1.3. Российская нормативно-методическая база в области качества и 1 безопасности информационных технологий.

1.3.1. Нормативное обеспечение управления информационной >' безопасностью.

1.3.2. Нормативное обеспечение отечественных криптографических ; алгоритмов.

1.4. Проблемная постановка задачи управления качеством и сертификации программного обеспечения.

Выводы по главе 1.

2. ЭКСПЕРТНАЯ ОЦЕНКА КАЧЕСТВА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ ОБЩЕГО НАЗНАЧЕНИЯ.

2.1. Показатели сопровождения программного обеспечения.

2.1.1. Структурная и информационная сложность.1.

2.1.2. Структурность.:.1.

2.1.3. Наглядность.

2.1.4. Повторяемость.

2.2. Показатели надежности программного обеспечения.

2.2.1. Оценка надежности программного обеспечения традиционными методами оценки надежности промышленных изделий.

2.2.2. Оценка надежности программного обеспечения специально разработанными методами.

2.3. Показатели удобства применения программного обеспечения.

2.3.1. Легкость освоения.

2.3.2. Доступность эксплуатационных программных документов.

2.3.3. Удобство эксплуатации и обслуживания.

2.4. Показатели эффективности программного обеспечения.

2.5. Показатели универсальности программного обеспечения.

2.5.1. Гибкость.

2.5.2. Мобильность.

2.5.3. Модифицируемость.

2.6. Показатели корректности программного обеспечения.

2.6.1. Логическая корректность.

2.6.2. Полнота реализации.

2.6.3. Согласованность.

2.6.4. Проверенность.

2.7. Разработка метода экспертных оценок показателей качества.

Выводы по главе 2.

3. РАЗРАБОТКА КОМПЛЕКСНОЙ МОДЕЛИ ОЦЕНКИ КАЧЕСТВА СИСТЕМ ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

3.1. Обобщенная структура системы защиты программного обеспечения.

3.2. Модели систем защиты программного обеспечения.

3.2.1. Классификация систем защиты программного обеспечения по виду средств, используемых для реализации защитных функций.

3.2.2. Классификация систем защиты программного обеспечения по способу их внедрения.

3.2.3. Классификация систем защиты программного обеспечения по способу осуществления ими защитных функций.

3.3. Методы реализации систем защиты программного обеспечения.

3.3.1. Способы задания эталонных характеристик.

3.3.2. Способы задания (генерации) пароля.

3.3.3. Способы верификации пароля.

3.4. Защита алгоритма работы системы защиты программного обеспечения от исследования.

3.4.1. Шифрование исполняемого кода.

3.4.2. Применение специфических приемов программирования.

3.4.3. Затруднение анализа исполняемого кода.

3.4.4. Программные методы нейтрализации инструментов исследования алгоритма.

3.4.5. Защита алгоритма с применением аппаратных средств.

3.5. Модель системы «защищаемое программное обеспечение - система защиты программного обеспечения».

3.6. Методика оценки качества систем защиты программного обеспечения.

Выводы по главе 3.

4. МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ПРОЦЕССОВ УПРАВЛЕНИЯ КАЧЕСТВОМ ПРИ РАЗРАБОТКЕ И ЭКСПЛУАТАЦИИ СИСТЕМ

ЗАЩИТЫ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ.

4.1. Общесистемная модель жизненного цикла систем защиты программного обеспечения.

4.2. Методика обеспечения безопасности при реализации общесистемной модели жизненного цикла систем защиты программного обеспечения.

4.3. Обобщенная методика технологической безопасности программных комплексов.

4.4. Практическая реализация дискретной эмпирической модели надежности системы защиты программного обеспечения.

Выводы по главе 4.

Введение 2007 год, диссертация по машиностроению и машиноведению, Лебедев, Сергей Сергеевич

Прогресс в области применения информационных технологий (ИТ), обусловленный развитием вычислительных систем и программного обеспечения (ПО), сопровождается повышением требований к стабильности функционирования информационных систем и устойчивости при попытках нарушения их безопасности. Вышеуказанные требования сформулированы в различных нормативных документах, в том числе в требованиях Федеральной службы по техническому и экспортному контролю. Кроме этого все большее значение приобретают различные методы защиты ПО от незаконного копирования и распространения. Это связано в первую очередь с развитием вычислительной техники и глобальных компьютерных сетей, значительно облегчающих передачу, копирование и распространение больших объемов информации. Вероятность несанкционированного использования ПО также увеличивается по мере увеличения количества пользователей персональных компьютеров. По этим причинам современное ПО должно обеспечиваться различными средствами защиты от несанкционированного доступа. Программными средствами защиты называются специальные программы, которые включаются в состав ПО компьютерных систем специально для осуществления функций защиты. Программные средства являются важнейшей и непременной частью механизма защиты современных компьютерных систем, что обусловлено такими их достоинствами, как универсальность, простота реализации, гибкость, практически неограниченные возможности изменения и развития. К недостаткам программных средств относится необходимость расходования ресурсов процессора на их функционирование и возможность несанкционированного (злоумышленного) изменения, а также тот факт, что программные средства защиты можно реализовать только в тех структурных элементах компьютерной системы, в составе которых имеется процессор, хотя функции защиты программными средствами могут осуществляться и в интересах других структурных элементов. Поэтому программные средства защиты применяются в центральных процессорах, устройствах группового управления вводом-выводом данных, а также в аппаратуре связи в тех случаях, когда в их составе имеются процессоры.

Известные на сегодняшний день программы защиты в соответствии с выполняемыми ими функциями, можно разделить на следующие группы:

- программы идентификации;

- программы регулирования работы (технических средств, пользователей, функциональных задач, элементов баз данных и т.д.);

- программы шифрования защищаемых данных;

- программы защиты программ (операционных систем, систем управления базами данных, программ пользователей и др.);

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

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

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

При отсутствии пароля к защищенному ПО предъявляются следующие требования:

1. Полная неработоспособность.

2. Ограничение на время пользования.

3. Функциональные ограничения.

4. Комбинация временных и функциональных ограничений.

На практике установлено, что защита ПО является достаточной, если стоимость получения пароля несанкционированным способом сравнима со стоимостью самого ПО.

Так ситуация должна выглядеть в идеале. В действительности дело обстоит намного сложнее. Как было отмечено выше, огромная масса современного защищенного ПО имеет защиту низкого качества. Многие системы защиты легко преодолеваются («вскрываются»). Злоумышленник, обладающий соответствующими знаниями и навыками, может различным образом за приемлемое время своей работы получить пароль системы защиты или добиться подмены правильного пароля (неправильный пароль принимается системой защиты за правильный). Следует также отметить такой часто встречающийся недостаток некоторых систем защиты ПО, как затруднение или даже невозможность доступа легального пользователя к функциям ПО. Эта ситуация возможна по следующим причинам:

- ошибки в реализации алгоритмов защиты;

- изначально ошибочные алгоритмы защиты;

- программные или аппаратные сбои;

- заражение защищаемого ПО компьютерными вирусами;

- изменения программно-аппаратной среды, в которой функционирует защищенное ПО, например, при установке на компьютер нового оборудования.

Все вышеперечисленные недостатки систем защиты являются следствиями неудовлетворительного качества защиты ПО. В связи с этим сформулируем два (отчасти противоречивых) свойства качественной системы защиты ПО:

- обеспечение достаточно сильной защиты;

- незаметность («прозрачность») системы защиты для легального пользователя ПО.

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

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

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

- системность целевую (защищенность информации рассматривается как составная часть общего понятия качества информации);

- системность пространственную (предполагается взаимоувязанное решение всех вопросов защиты во всех компонентах как отдельно взятой компьютерной системы, так и распределенных компьютерных систем);

- системность временную (предполагается непрерывность работ по защите информации, осуществляемых по взаимоувязанным планам;

- системность организационную (предполагается единство организации всех работ по защите информации и управления их осуществлением).

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

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

Комплексная система защиты информации (КСЗИ) является совокупностью методов и средств, объединенных единым целевым назначением и обеспечивающих необходимую эффективность защиты информации в компьютерной системе. Комплексность системы защиты информации достигается охватом всех возможных угроз и согласованием между собой разнородных методов и средств, обеспечивающих защиту всех элементов компьютерной системы и, в первую очередь, систем защиты программного обеспечения.

При разработке методов и средств управления качеством систем защиты ПО следует учитывать основные требования, предъявляемые к комплексной системе защиты информации:

- система защиты ПО должна обеспечивать выполнение ПО своих основных функций без существенного ухудшения его характеристик;

- экономическая целесообразность, т.к. стоимость системы защиты ПО обычно включается в стоимость компьютерной системы;

- защита информации должна обеспечиваться на всех этапах жизненного цикла, при всех технологических режимах обработки информации, в том числе при проведении ремонтных и регламентных работ;

- в систему защиты ПО должны быть заложены возможности ее совершенствования и развития в соответствии с условиями эксплуатации и конфигурации компьютерной системы;

- применение системы защиты ПО не должно быть сложным для пользователя, не вызывать психологического противодействия и желания обойтись без нее.

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

Все вышеизложенное подтверждает актуальность избранной темы диссертации и обусловливает целесообразность проведения диссертационного исследования.

Объект исследования в диссертационной работе - информационные технологии и системы защиты программного обеспечения.

Предметом диссертационного исследования являются методы и средства управления качеством систем защиты программного обеспечения.

Целыо диссертационной работы является разработка комплексной модели оценки качества систем защиты программного обеспечения на основе требований международных стандартов в области качества.

Для достижения указанной цели был сформирован комплекс научных и научно-прикладных задач, включающий:

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

2. На основе всестороннего анализа международных и отечественных стандартов дать классификацию методов оценки качества программного обеспечения.

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

4. Разработать обобщенную структуру систем защиты программного обеспечения.

5. Разработать модель системы «защищаемое программное обеспечение -система защиты программного обеспечения» и выполнить анализ работоспособности этой модели с учетом функциональных связей между ее структурными элементами.

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

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

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

По степени изученности задачи диссертационной работы можно отнести к новым. В отечественной литературе, вопросам оценки качества ПО посвящены работы: /26, 27, 54, 68, 69, 70, 83, 85, 89, 91, 92, 96 133/ и другие. Вопросам построения систем защиты ПО и информации посвящены работы: /62,98, 115,118, 129,148/ и другие.

В зарубежной литературе вопросам оценки качества ПО посвящены работы:/38, 102, 139, 152, 154, 155, 169, 170, 173, 185, 191/и другие. Вопросам построения систем защиты ПО посвящено множество работ, среди которых особо следует выделить работу /37/ и большое количество электронных публикаций.

Актуальность постановки вопроса о всесторонней оценке качества систем защиты ПО подтверждается также тем, что разрабатываемые методы позволят оценить как показатели качества, непосредственно связанные с назначением систем защиты ПО и важные для пользователя-разработчика ПО (надежность, корректность, способность обеспечить защиту ПО и устойчивость к взлому), так и показатели качества, важные для пользователя защищенного ПО (удобство эксплуатации и обслуживания, временная эффективность, ресурсоемкость).

Методы исследования.

Методы теории информации, методы математического описания и исследования информационных процессов, методы передачи, обработки, хранения, извлечения и классификации информации, методы теории алгоритмов, методы теории вычислительных процедур, методы управления качеством программного обеспечения, методы обеспечения надежности программ и др.

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

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

В ходе диссертационного исследования были получены и выносятся на защиту следующие научные результаты:

1. Классификация методов оценки показателей качества программного обеспечения общего назначения в применении к системам защиты.

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

3. Методика и рекомендации проектирования высококачественных систем защиты программного обеспечения, основанных на неуязвимых при раскрытии алгоритмах.

4. Модель системы «защищаемое программное обеспечение - система защиты программного обеспечения. Анализ работоспособности этой модели с учетом функциональных связей между ее структурными элементами.

5. Комплексная модель оценки качества систем защиты программного обеспечения.

6. Общесистемная модель жизненного цикла систем защиты программного обеспечения, направленная на повышение качества систем защиты и использование разнообразных механизмов контроля качества на каждом этапе.

7. Методика обеспечения безопасности компьютерной системы на основе принципов, регламентированных действующими стандартами качества и безопасности.

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

Впервые с новым научным качеством, применительно к новой, ранее недостаточно изученной в научном плане объектной и предметной сфере управления качеством систем защиты программного обеспечения:

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

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

3. Разработана общесистемная модель жизненного цикла систем защиты ПО, позволившая усилить ее направленность на повышение качества систем защиты за счет оптимального управления процессами контроля качества на каждом этапе жизненного цикла.

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

5. Предложены и апробированы методические рекомендации по реализации проблемы технологической и эксплуатационной безопасности программных комплексов.

Практическая значимость и внедрение результатов диссертации.

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

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

Результаты исследований могут быть использованы в практической деятельности разработчиков систем защиты программного обеспечения.

Результаты теоретических исследований, выполненных в диссертационной работе, внедрены в ЗАО «Диаком ЛТД»; на факультете информационных технологий Всероссийской государственной налоговой академии Российской Федерации.

Апробация результатов исследования.

Основные теоретические и методические результаты диссертационной работы были доложены и обсуждены, а также представлены в виде тезисов

- На научно-методических семинарах на факультете информационных технологий Всероссийской государственной налоговой академии;

- На кафедре 104 "Технологическое проектирование и управление качеством" Московского авиационного института (государственного технического университета);

- На международных конференциях «Авиация и космонавтика - 2003», «Авиация и космонавтика - 2007».

Публикации.

По теме диссертационной работы опубликовано 8 печатных работ (статьи в периодических изданиях, тезисы докладов на научных конференциях и семинарах), в которых достаточно полно отражены теоретические и прикладные результаты выполненного исследования.

Аннотация.

Структурно диссертационная работа состоит из введения, 4-х глав, заключения, списка использованных источников из 193 наименований, и приложения.

Библиография Лебедев, Сергей Сергеевич, диссертация по теме Стандартизация и управление качеством продукции

1. Авдеева О.В. Автоматизированные системы аттестации алгоритмов: Авто-реф. дисс. к.ф-м.н. 05.13.11 -МГУ ВЦ, 1988.

2. Анисимов А.В., Иванов И.Ю. Подходы к защите программного обеспечения от атак злонамеренного хоста. //Проблеми програмування, С. 41-61 -Киев, 2006.

3. Архангельский Б.В., Черняховский В.В. Поиск устойчивых ошибок в программах. М.: Радио и связь, 1989.

4. Ахо А. Хопркрофт Дж. Ульман Дж. Построение и анализ вычислительных алгоритмов. Пер с англ. под ред. Ю.В. Матиясевича. М.: Мир, 1979.

5. Барлоу Р., Прошан Ф. Математическая теория надежности. Пер с англ. -М.: Советское радио, 1969.

6. Безбородов Ю.М. Индивидуальная отладка программ. М.: Наука, 1982.

7. Бекетова Е.А. Методы и средства оценки качества программ имитационных моделей: Автореф. дисс. к.т.н. Харьков, 1992. -16 с.

8. Белкин П.Ю., Михальский О.О., Першаков А.С. и др. Программно-аппаратные средства обеспечения информационной безопасности защищенных программ и данных. М.: Радио и связь, 1999. - 168 с.

9. Белов В.В. Технология комплексной оценки качества интеллектуальных программных продуктов двойного применения в процессе сертификационных испытаний: Автореф. дисс. к.т.н. РАН. Ин-т проблем информатики, 2000.

10. Бичевский Я.Я., Борзов Ю.В. Развитие методов символического тестирования программ ЭВМ//Автоматика и телемеханика, 1982, № 8, С. 93-101.

11. Богданов Д.В, Фнльчаков В.В. Стандартизация жизненного цикла и качества программных средств //Учеб. пособие. Минобразование РФ. С.-Петерб. гос. ун-т аэрокосм, приборостроения СПб. :С.-Петерб. гос. ун-т аэрокосм, приборостроения, 2000. 209 с.

12. Бойко П.В. Метод виртуального процессора в защите программного обеспечения //Труды Института системного программирования РАН, 2006, http://citforum.ru/securitv/software/virt ргос/.

13. Бойцов Б.В., Крянев Ю.В. Антология русского качества. М.: Изд-во «Стандарты и качество», 2000. - 400 с.

14. Борзов Ю.В. Символьное выполнение программ и автоматизированное построение тестов: Автореф. дисс. к.ф-м.н.- АН БССР. Ин-т математики, Минск, 1988.

15. Борзов Ю.В. Тестирование программ с использованием символического выполнения//Программирование, 1980, № 1 С. 51-60.

16. Борзов Ю.В., Уртанс Г.Б., Шимаров В.А. Выбор путей программ для построения тестов //Управляющие системы и машины, 1989, №6, С.29-36.

17. Боэм Б.У. Инженерное проектирование программного обеспечения. М.: Радио и связь, 1985.

18. Боэм Б., Браун Дж., Каспар X., Липов М., Мак-Леод Г., Иерит М. Характеристики качества программного обеспечения. Пер с англ. Е.К. Масловского. М.: Мир, 1981.

19. Брассар Ж. Современная криптология. М.: Изд-во «Полимед», 1999.

20. Бурдаев О., Иванов М., Тетерин И. Ассемблер в задачах защиты информации. М.: «Кудиц-образ», 2004.

21. Бутаков В.А. Методы создания качественного программного обеспечения ЭВМ. -М.: Энергоатомиздат, 1984.

22. Былинович А.П. Методы повышения качества программных средств на основе мультихромосомной генетической модели: Автореф. дисс. к.т.н. -М.: 1998.

23. Буинцев Д.Н. Метод защиты программных средств на основе запутывающих преобразований: Автореф. дисс. к.т.н., Томск, 2006.

24. Васильев В.А., Одиноков С.А. Информационное обеспечение в управлении качеством //Материалы региональной научно-практической конференции "Управление качеством" Воронеж, 2003, с. 18-23.

25. Воробьев С.Г., Копыльцов А.В, Пальчун Б.Н., Юсупов P.M. Методы и модели оценки качества ПО. Ин-т информатики и автоматизации. СПб.:1992.

26. Воробьев С.Г. Система условных редукций и их применение в проблемно-ориентированной верификации программ: Автореф. дисс. к.ф-м.н. СО АН СССР, Новосибирск, 1987.

27. Вялых С.А. Повышение эффективности защиты автоматизированных систем оперативного управления от вредоносных программных воздействий: Автореф. дисс. к.т.н. Воронеж, 1999.

28. Гибин Ю.В. Разработка методов и средств обеспечения качества программ АСУП: Автореф. дисс. на соискание ученой степени к.т.н. Тверь,1993.

29. Гласс Р. Руководство по надежному программированию. Пер с англ. М.: Финансы и статистика, 1982.

30. Головкин Б.А. Надежное программное обеспечение (обзор) //Зарубежная радиоэлектроника, 1978, № 12, с.3-61.

31. ГОСТ 28195-89: Оценка качества программных средств. Общие положения. М.: Издательство стандартов, 1989.

32. ГОСТ 28147-89. Системы обработки информации. Защита криптографическая. Алгоритм криптографического преобразования.

33. ГОСТР 34.10-94. Информационная технология. Криптографическая защита информации. Процедуры выработки и проверки электронной цифровой подписи на базе асимметричного криптографического алгоритма.

34. ГОСТ Р 34.11-94. Информационная технология. Криптографическая защита информации. Функция хэширования.

35. Грис Д. Наука программирования. Пер. с англ. под ред. А.П.Ершова. -М.: Мир, 1984.

36. Гроувер Д., Сатер Р., Фипс Дж. и др. Под ред. Д. Гроувера. Защита программного обеспечения. М.: Мир, 1992.

37. Дал У., Дейкстра Э., Хоор К. Структурное программирование. М.: Мир, 1975.

38. Девянин П.Н., Михальский О.О., Правиков Д.И., Щербаков А.Ю. Теоретические основы информационной безопасности. М.: Радио и связь, 1999.

39. Демин А.Ю. Проектирование и оценка качества программ на основе структурно-графических представлений: Автореф. дисс. к.т.н. Томск, 1998.

40. Денисенко С.В. Количественная оценка эффективности статического семантического контроля программ //Программирование, 1988, №3, С.81-90.

41. Дмитриев А.К., Мальцев П.А. Основы теории построения и контроля сложных систем. JL: Энергоатомиздат, Ленинградское отделение, 1988.

42. Долгин А. Алгоритм противодействия исследованию исполняемых модулей //Компьютер Пресс, 1993, №11, С.55-61.

43. Домарев В.В. Защита информации и безопасность компьютерных систем. Киев: Диасофт, 1999.

44. Домарев В.В. Безопасность информационных технологий. Киев: Диасофт, 2004.

45. Домашев А.В., Попов В.О., Правиков Д.И. и др. Программирование алгоритмов защиты информации М.: «Нолидж», 2000. -279с.

46. Егоров А.А. Численная сертификация алгоритмов и программ: Автореф. дисс. к.т.н.-М.: 1995.

47. Егоров А.А. Инструментальные средства численной сертификации алгоритмов и программ //Научная апробация выпускников Высшей компьютерной школы. М.: изд. МГУ, 1995.

48. Есин Ю.Ф., Максимов В.А., Мамаев В.Я. Автоматизированное проектирование программного обеспечения бортовых систем отображения информации. М.: Машиностроение, 1993.

49. Зелковиц М., Шоу А., Гэнон Дж. Принципы разработки программного обеспечения М.: Мир, 1982.

50. Изосимов А.В., Рыжко A.JI. Конструктивный контроль программного обеспечения информационных систем //Проблемы повышения качества информации: Межвузовский сб.науч.трудов Вып.808. -М.:Изд.МИИТ, 1988, с.82-84.

51. Изосимов А.В., Рыжко A.J1. Метрическая оценка качества программ. М.: Изд. МАИ, 1989.

52. Йодан Э. Структурное проектирование и конструирование программ. Пер. с англ. под ред. J1.H. Королева. М.: Мир, 1979.

53. Казарин О.В. Безопасность программного обеспечения компьютерных систем. М.: МГУЛ, 2003. - 212 с.

54. Казарин О.В., Теория и практика защиты программ.- М.: МГУЛ, 2004. -450 с.

55. Карпов А.Г. Методы сертификации программных средств защиты информации в автоматизированных системах управления: Автореф. дисс. к.т.н.-СПб, 1997.-16с.

56. Карповский Е.Я., Сагач В.В., Чернецкий А.А. Надежность алгоритмовуправления. Киев: Тэхника, 1983.

57. Карповский Е.Я., Чижов С.А. Надежность программной продукции. Киев: Тэхника, 1990.

58. Касперски К. Образ мышления дизассемблер IDA. - М.: Солон-Р, 2004.

59. Касперски К. Техника и философия хакерских атак. Изд.2. М.: Солон-Р, 2005.

60. Касперски К. Техника защиты компакт-дисков от копирования. СПб.: BHV, 2004.

61. Касперски К. Техника отладки программ без исходных текстов. СПб.: BHV, 2005.

62. Касперски К. Фундаментальные основы хакерства. Искусство дизассемб-лирования. М.: Солон, 2005.

63. Клименко О.А. Экономико-математическое исследование потребительского качества программных средств: На прим. компьютерных программ для автоматизации бухгалтерского учета: Автореф. дисс. к.э.н., Ростов-на-Дону, 1997.- 159 с.

64. Кнут Д.Э. Искусство программирования. Москва-Санкт-Петербург-Киев: «Вильяме», 2000.

65. Коган Б.И. Измерительные языковые процессоры для исследования и оценки качества ПС: Автореф. дисс. к.т.н., ДВО РАН, Ин-т автоматики и процессов управления, Владивосток, 1993.

66. Коган Б.И. Оценка качества и исследование программных продуктов: реляционный подход: Определение базовой объектив, системы внутренних свойств программных продуктов //ДВО РАН, Ин-т автоматики и процессов управления, Владивосток: ИАПУ, 1996. 55 с.

67. Котов С. JI. Нормирование жизненного цикла программной продукции, М.: ЮНИТИ-ДИАНА, 2002.

68. Кулаков А.Ф. Оценка качества программ ЭВМ. Киев: Тэхника, 1984.

69. Кулаков А.Ф. Управление качеством программных средств ЭВМ. Киев: Тэхника, 1989.-217 с.

70. Куприков М.Ю. Применение информационных технологий на этапах жизненного цикла изделия //Качество и жизнь, 2004, № 4. С.210-213.

71. Лебедев С.С. Оценка качества обучающих программных продуктов //Высшее образование в России, 1998, № 2.

72. Лебедев С.С. О качестве систем дистанционного образования //Высшее образование в России, 2000, № 6.

73. Лебедев С.С. Качество систем управления базами данных //Качество и жизнь, 2002, № 1.

74. Лебедев С.С. Качество систем защиты //Высшее образование в России, 2003, №1.

75. Лебедев С.С. Оценка качества систем защиты программного обеспечения //Вестник РУДН. Серия "Инженерные исследования", 2007, № 3.

76. Лебедев С.С. Разработка методов и средств комплексной оценки качества систем защиты программного обеспечения //Вестник МАДИ, 2007, № 4.

77. Лебедев С.С. Современные тенденции в обеспечении качества систем защиты программного обеспечения //Материалы международной конференции "Авиация и космонавтика 2007" М.: Изд-во МАИ, 2007.

78. Лебедев С.С. Построение качественного программного обеспечения систем дистанционного обучения //Качество и жизнь, альманах. М.: 2007.

79. Липаев В.В., Позин Б.А., Блау С.Л. Анализ стратегии тестирования логики программы //Кибернетика, 1982, № 2, С.45.

80. Липаев В.В. Выбор и оценивание характеристик качества программных средств //Методы и стандарты М.: «Синтег», 2001. -224 с.

81. Липаев В.В. Качество программного обеспечения. М.: Финансы и статистика, 1983. - 263 с.

82. Липаев В.В. Качество программных средств. Методические рекомендации. М.: Янус-К, 2002.

83. Липаев В.В. Конструктивные показатели качества программ и их связь с технологией проектирования //Техническая кибернетика, 1982., № 2, С.151-163.

84. Липаев В.В. Методы обеспечения качества крупномасштабных программных средств. М.: «Синтег», 2003. 520 с.

85. Липаев В.В. Надежность ПО АСУ. М.: Энергоиздат, 1981.

86. Липаев В.В. Надежность программных средств. М.: «Синтег», 1998 -232 с.

87. Липаев В.В. Отладка сложных программ. Методы. Средства. Технологии. М.: Энергоатомиздат, 1993.

88. Липаев В.В. Программная инженерия. Методологические основы. М: «ТЕИС», 2006. - 608 с.

89. Липаев В.В. Программно-технологическая безопасность информационных систем. М.: Изд. МИФИ, 1997. - 143 с.

90. Липаев В.В. Процессы и стандарты жизненного цикла сложных программных средств. М.: «Синтег», 2006. 276с.

91. Липаев В.В. Сопровождение и управление конфигурацией сложных программных средств. М.: «Синтег», 2006. 372 с.

92. Липаев В. В. Стандартизация характеристик и оценивания качества программных средств. М.: Машиностроение, 2001. - 24с.

93. Липаев В.В. Тестирование программ. М.: Радио и связь, 1986.

94. Липаев В.В. Функциональная безопасность программных средств. М.: «Синтег», 2004. 348 с.

95. Лонгботтом Р. Надежность вычислительных систем. Пер. с англ. под ред. П.П. Пархоменко. М.: Энергоатомиздат, 1985.

96. Мадан В.И. Исследование и анализ количественных характеристик качества программ: Автореф. дисс. к.ф-м.н., Украинский институт кибернетики, 1992.

97. Майерс Г. Искусство тестирования программ. М.: Финансы и статистика, 1982.

98. Майерс Г. Надежность программного обеспечения. Пер. с англ. под ред. В.Ш. Кауфмана. М.: Мир, 1980.

99. Мельников В. Защита информации в компьютерных системах. М.: Финансы и статистика, 1997.

100. Мобильность программного обеспечения. Пер. с англ. под ред. Д.Б. Подшивалова. -М.: Мир, 1980.

101. Муса Дж.Д. Измерение и обеспечение надежности ПС //ТИИЭР, 1980, Т.68, №9, с. 113-128.

102. Насыпный В.В. Синтез систем обработки информации с защитой от программных закладок и вирусов //Метод, пособие. М.: 1997. - 28 с.

103. Непомнящий В.А., Рякин О.М. Прикладные методы верификации программ. М.: Радио и связь, 1989.

104. Николаев Ю.И. Проектирование защищенных информационных технологий. СПб.: Изд-во СПбГТУ, 1997.

105. Новиков В.И. Методы и средства обеспечения качества вычислительных систем при сопровождении программных средств: Автореф. дисс. к.т.н., Институт проблем информатики АН СССР. М.: 1990. - 23 с.

106. Одиноков С.А. Информационно-методическое обеспечение по управлению технологическим процессом //Материалы международной научно-технической конференции "Менеджмент качества продукции и услуг" -Брянск: БГТУ, 2004, с. 130-132.

107. Осовецкий Л.Г. Сертификация критичных программных средств вычислительных систем: Автореф. дисс. д.т.н., СПб, 1993.

108. Охрименко С.А. Технологические и организационные средства защитыот программных злоупотреблений. Кишинев: 1990. - 47 с.

109. Петраков А.В. Основы практической защиты информации. М.: Радио и связь, 1999.

110. Полонников Р.И., Никандров А.В. Методы оценки показателей надежности ПО. СПб: «Политехника», 1992.

111. Правиков Д.И. Ключевые дискеты: Разработка элементов защиты от несанкционированного копирования. М.: Радио и связь, 1995.

112. Проскурин В.Г., Кругов С.В., Мацкевич И.В. Программно-аппаратные средства обеспечения информационной безопасности. Защита в операционных системах. М.: Радио и связь, 2000. - 166 с.

113. Расторгуев С.П., Дмитриевский Н.Н. Искусство защиты и «раздевания» программ. М.: «Софтмаркет», 1991.

114. Расторгуев С.П. Программные методы защиты информации в компьютерах и сетях. М.: Изд-во агенства «Яхтсмен», 1993.

115. Расторгуев С.П. Программные методы защиты информации. Пенза: 2000. - 94 с.

116. Рахманов M.JI. Анализ развития законодательной и нормативной базы аккредитации в Российской Федерации //Стандарты и качество, 2003, №9.

117. Рахманов M.JI. Ресурсное управление процессами аккредитации М.: Изд-во Стандартов, 2004.

118. Роббинс Д. Отладка приложений. СПб.: BHV, 2001. - 490 с.

119. Роббинс Д. Отладка приложений Microsoft .NET и Microsoft Windows. -М.: «Русская редакция», 2004. 736 с.

120. Саркисян А.А. Повышение качества программ на основе автоматизированных методов. М.: Радио и связь, 1991. - 156 с.

121. Середа С.А. Анализ средств преодоления систем защиты программного обеспечения //ИНФОРМОСТ: Радиоэлектроника и Телекоммуникации, 2002, № 4.

122. Середа С.А., Процедура разработки систем программно-технической защиты программного обеспечения //Инновации в процессе обучения: Сборник научных трудов Академического Совета МЭСИ. М.: Изд-во МЭСИ, 2004.

123. Скворцов С.А. Алгоритмы оценки качества функционирования программного обеспечения вычислительных систем реального времени на основе моделей нечеткой математики: Автореф. дисс. к.т.н. Киев: 1991. - 16 с.

124. Скородумов Б.И. Программно-аппаратные комплексы защиты от несанкционированного доступа к информации //Учеб. пособие. М.: 1996. -107с.

125. Спесивцев А.В., Вегнер В.А., Крутяков А.Ю., Серегин В.В., Сидоров В.А. Защита информации в персональных ЭВМ. М.: Радио и связь, 1992.

126. Степанов Е.А., Корнеев И.К. Информационная безопасность и защита информации. М.: Инфра-М, 2001. - 304 с.

127. Тейер Т., Липов М., Нельсон Э. Надежность программного обеспечения. -М.: Мир, 1981.

128. Тищенко Е.Н. Программные средства защиты данных в информационных системах (экономико-статистический анализ): Автореф. дисс. к.э.н. -Ростов-на-Дону: 1994. 28 с.

129. Тыртышников Е.Е., Егоров А.А. Численная сертификация алгоритмов и программ: Матричные методы и алгоритмы. М.: ИВМ РАН, 1993.

130. Фокс Дж. Программное обеспечение и его разработка. М.: Мир, 1985.

131. Хетагуров Я.А., Древе Ю.Г. Проектирование информационно-вычислительных комплексов. М.: Высшая школа, 1987.

132. Хогланд Г., Макгроу Г. Взлом программного обеспечения: анализ и использование кода. М.: «Вильяме», 2005.

133. Холдстед М. Начала науки о программах. М.: Финансы и статистика, 1981.

134. Хубаев Г.Н. Экономическая оценка потребительского качества программных средств //Текст лекций. Ростов-на-Дону, 1997. - 102 с.

135. Цивин С.В. Методы защиты программных средств вне доверенной вычислительной среды: Автореф. дисс. к.т.н. Пенза, 2000. - 21 с.

136. Чернов А.В. Анализ запутывающих преобразований программ //Труды Института системного программирования РАН М.:ИСП РАН, 2002.

137. Черноножкин С.К. Методы и инструменты метрической поддержки разработки качественных программ: Автореф. дисс. к.ф-м.н. Новосибирск: 1998.- 18 с.

138. Шаракшанэ А.С., Шахин В.П., Халецкий А.К. Испытания программ сложных автоматизированных систем. М.: Высшая школа, 1982.

139. Шеннон Р. Имитационное моделирование систем искусство и наука. Пер. с англ. под ред. Е.К. Масловского. - М.: Мир, 1978.

140. Шимаров В.А. Методы инструментального контроля качества программ на основе структуры передач управления: Автореф. дисс. к.ф-м.н. АН БССР, Ин-т математики, Минск, 1989.

141. Шубинский М.И. Развитие методов оценки и прогноза качества и надежности программного обеспечения на основе нечеткой математики: Автореф. дисс. к.т.н. СПб, 1996. - 18 с.

142. Шураков В.В. Надежность программного обеспечения систем обработки данных. М.: Статистика, 1981.

143. Щербаков АЛО. Введение в теорию и практику компьютерной безопасности. М.: издатель Молгачева С.В., 2001.

144. Щербаков А. Защита от копирования: Построение программных средств. М.: «Эдель», 1992.

145. Ященко В.В., Варновский Н.П., Нестеренко Ю.В. и др. Введение в криптографию. М.: МЦНМО, 1999.

146. Adamov R., Richter L. A Proposal for Measuring the Structural Complexity of Programs //The Journal of Systems and Software, 1990, V. 12, N 1,Р.55-70.

147. Allen R. and Garlan D. Formalizing architectural connection. //Proceedings of the 16th International Conference on Software Engineering. IEEE Computer Society, 1994.

148. Arthur Lowel Jay Improving software quality: an insider guide to TQM. -New-York: Wiley, 1993.

149. Aucsmith D. Tamper resistant software: An implementation. //Hiding Information Hiding, First International Workshop, V.l 174, Springer-Verlag, 1996, P.317-333.

150. Backer A.L. and others. A Philosophy for Software Measurement //The Journal of Systems and Software, 1990, V.12, N 3, P. 277-281.

151. Basili V., Philips T. Evaluating and comparing the Software metrics in the Software engineering Laboratory//ACM Sigmetrics, V.10, № 3, P.95-106.

152. Bhide S. Generalized Software Process-integrated Metrics Framework //The Journal of Systems and Software, 1990, V.12, N 3, P. 249-254.

153. Bjones R., Hoeben S. Vulnerabilities in pure software security systems //Uti-maco Software AG, 2000.

154. Carter J.L., Wegman M.N. Universal classes of hash functions //Journal of computer and system sciences, Vol. 18,1979, P. 143-154.

155. Collberg C., Myles G., Huntwork A. Sandmark A Tool for Software Protection //Research.IEEE Security and Privacy, V.l, № 4 (July/August 2003), P. 40-49.

156. Collberg C., Thomborson C. Software watermarking:Models and dynamic embeddings. //Symposium on principles of Programming Languages, 1999.

157. Computer-aided verification //1-st International conference, CAV proc. -Berlin: Springer, 1991.

158. Computer-aided verification //5-th International conference, CAV proc. -Elounda, Greece: Costa Courcubetis, 1993.

159. Devanbu P.T., Stubblebine S. Software Engineering for Security: a Roadmapin //Proceedings of the Conference on The future of Software engineering. ACM Press, 2000, P. 227-239.

160. Dhuijati D., Adve V. Safecode: a platform for developing reliable software in unsafe languages. PhD Thesis, University of Illinois at Urbana-Champaign, 2006.

161. Dwaikat Z., Parisi-Presicce F. Risky trust: risk-based analysis of software systems //ACM SIGSOFT Software Engineering Notes, v.30 n.4, July 2005.

162. Elshoff J. An analysis of some commercial PL/1 programs //IEEE Transactions on Software Engineering, 1978, V. SE 2, № 3, P. 113-120.

163. European conference on software quality assurance (2,1990, Oslo).

164. Ford R., Allen W.H. How Not to Be Seen //IEEE Security and Privacy, V.5, №1, P.67-69,2007.

165. Gilb T. Principles of software engineering management. Wokingham, England: Addison-Wesley, 1988.

166. Gilb T. Software metrics. Studentliteratur AB - Lund, Cambridge, 1976.

167. Grunbauer J., Hollmann H., Juijens J., Wimmel, G. Modeling and Verification of Layered Security Protocols: A Bank Application //SAFECOMP 2003, LNCS 2788, P. 116-129,2003.

168. Hachez, G. A Comparative Study of Software Protection Tools Suited for E-Commerce with Contributions to Software Watermarking and Smart Cards. PhD thesis,Universite Catholique de Louvain, 2003.

169. Harrison W. e.a. Applying software complexity metrics to program maintenance //Computer, 1981, V. 15, № 9, P. 65-79.

170. Hatebur D., Heisel M., Schmidt H. A Pattern System for Security Requirements Engineering //Proceedings of the The Second International Conference on Availability, IEEE Computer Society, 2007.

171. Howard M., LeBlanc D. Writing Secure Code, 2nd ed., Microsoft Press, 2003.

172. Linn C., Debray S. Obfuscation of executable code to improve resistance tostatic disassembly //Proc. 10th ACM Conference on Computer and Communications Security, P. 290-299.

173. McCabe T. A complexity measure //IEEE Transactions on Software Engineering, 1976, V.SE 2, № 4? p.308-320.

174. Musa J.D., Iannino A., Okumoto K. Software reliability: Measurement, Prediction, Application. New-York: McGraw-Hill, 1987.

175. NESSIE security report v.2.0, http://www.cryptonessie.org.

176. Naedele M., Koch T. Trust and tamper-proof software delivery //Proceedings of the 2006 international workshop on Software engineering for secure systems, Shanghai, China, 2006.

177. Ozment A. Schechter S.E. Milk or wine: does software security improve with age? //Proceedings of the 15 th conference on USENIX Security Symposium -Volume 15, Vancouver, Canada, 2006.

178. Percy A. Salas P., Krishnan P., Ross K. Model-Based Security Vulnerability Testing //Proceedings of ASEC 2007, IEEE Computer Society, 2007.

179. Program verification: Fundamental issue in computer science //Ed. by Tymo-thy R., Colburn et. al. Dordrecht, Kluwer academy publication, 1993. (Studies in cognitive systems Vol.14).

180. RFC 1186: http://www.faqs.org/ftp/rfc/rfcl 186.txt

181. Rosenberg J.B. How debuggers work. New York: John Wiley and Sons, 1996.

182. Rubey R., Hartwick R. Quantitative measurement of program quality//ACM National conf. Proceedings, 1968, P. 671-677.

183. Szentes J., Gras J. Some Practical Views of Software Complexity Metrics and Universal Measurement Tool (QUALIGRAPH)//l-st Australian Software Engineering Conference, Canberra, May 1986., P. 83-88.

184. Van Lamsweerde A. Elaborating security requirements by construction of intentional anti-models //Proceedings of the 26th International Conference on Software Engineering. IEEE Computer Society, 2004, P. 148-157.

185. Viega J., McGraw G. Building Secure Software: How to Avoid Security Problems the Right Way, Addison-Wesley, 2001.

186. Wallace D.R., Fujii R.U. Software verification and validation: An overview //IEEE Sotware, 1989. May P. 10-17.

187. Woodward M, Hennel M., Hidley D. A measure of control flow complexity in program text //IEEE Transactions on Sotware Engineering, 1979, V.SE.5, №1.

188. ISO/IEC 11442-4-93 Техническая документация. Обращение машино-ориентированной технической информации. Требования защиты.

189. ISO/IEC 11558-92 Информационные технологии. Уплотнение данных для обмена информацией. Адаптивное кодирование с вложенным словарем. Алгоритм DCLZ (уплотнение данных по Lempel и Ziv).ГОСТ 28195-89. ОБЩИЕ ПОЛОЖЕНИЯ

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

191. Номенклатура показателей качества и характеризуемые ими свойства программных средств приведены в табл. 1, где представлены 2 уровня иерархической структуры показателей качества ПС: