Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ. Кафедра «Информатики и информационных технологий» № 409Б



МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ

Кафедра «Информатики и информационных технологий» № 409Б

 

 

Курсовая работа

по дисциплине: «Теория информационной безопасности и методология защиты информации»

Тема: Исследование методов и средств защиты программного обеспечения

 

 

Выполнил: Славкин А. С.

Проверил: Красоткин Ю. И.

 

 

Серпухов 2012

 


Реферат

Ключевые слова: ПРОГРАМНОЕ ОБЕСПЕЧЕНИЕ, УГРОЗЫ БЕЗОПАСНОСТИ ПО, СРЕДСТВА ЗАЩИТЫ ПО, МЕТОДЫ АНАЛИЗА БЕЗОПАСНОСТИ ПО, СРЕДСТВА ДЕСТРУКТИВНОГО ВОЗДЕЙСТВИЯ НА ПО.

Цель работы - выявить наиболее эффективные средства и методы защиты программного обеспечения.

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

 


Содержание

 

Введение

. Воздействие вредоносных средств на безопасность ПО

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

Контрольно-испытательные методы

Логико-аналитические методы

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

Парольная защита

Системы «привязки» ПО

Средства защиты ПО с электронными ключами

Средства защиты ПО с ключевыми дисками

. Анализ правовых средств защиты ПО

Лицензирование ПО

Патентование ПО

Авторское право

Метод авторизации ПО через Интернет

Заключение

Список использованных источников


Обозначения и сокращения

ПК - персональный компьютер

ПО - программное обеспечение

ИТ - информационные технологии

КС - компьютерная система

ИС - информационная система

РПС - разрушающее программное средство

НСД - несанкционированный доступ

СЗПО - средства защиты программного обеспечения

 


Введение

 

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

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

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

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


 

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

Контрольно-испытательные методы

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

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

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

Рассмотрим схему анализа безопасности программы контрольно-испытательным методом, представленную на рисунке 2.

Рисунок 2 - Схема анализа безопасности ПО с помощью контрольно-испытательных методов


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

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

Логико-аналитические методы

При проведении анализа безопасности с помощью логико-аналитических методов строится модель программы и формально доказывается эквивалентность модели исследуемой программы и модели РПС. В простейшем случае в качестве модели программы может выступать ее битовый образ, в качестве моделей вирусов множество их сигнатур, а доказательство эквивалентности состоит в поиске сигнатур вирусов в программе. Более сложные методы используют формальные модели, основанные на совокупности признаков, свойственных той или иной группе РПС [4]. Рассмотрим схему анализа безопасности программы логико-аналитическим методом, представленную на рисунке 3.


Рисунок 3 - Схема анализа безопасности ПО с помощью логико-аналитических методов

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

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

В целом полный процесс анализа ПО включает в себя три вида анализа [3]:

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

) сигнатуры вирусов;

) сигнатуры элементов РПС;

) сигнатуры (лексемы) «подозрительных функций»;

б) синтаксический верификационный анализ - предполагает поиск, распознавание и классификацию синтаксических структур РПС, а также построение структурно - алгоритмической модели самой программы;

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

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


Парольная защита

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

Процедуры парольной защиты просты в реализации и, поэтому, очень часто применяются производителями ПО. Большинство парольных СЗПО использует логические механизмы, сводящиеся к проверке правильности пароля/кода и запуске или не запуске ПО, в зависимости от результатов проверки. Существуют так же системы, шифрующие защищаемое ПО и использующие пароль или производную от него величину как ключ дешифрации, большинство таких систем использует слабые или простейшие алгоритмы шифрования, нестойкие к направленным атакам. Лишь в последнее время разработаны парольные СЗПО, реализующие стойкие криптоалгоритмы типа DES и RSA, они реализованы в виде защитного модуля и вспомогательных библиотек и устанавливаются на уже скомпилированные модули ПО [2].

Слабым звеном парольных защит является блок проверки правильности введённого пароля/кода. Для такой проверки можно сравнивать введённый пароль с записанным в коде ПО правильным либо с правильно сгенерированным из введённых дополнительных данных паролем. Путём анализа процедур проверки можно найти реальный пароль, записанный в коде ПО, найти правильно сгенерированный пароль из введённых данных либо создать программу для перебора паролей для определения пароля с нужной ХЭШ - суммой. Кроме того, если СЗПО не использует шифрования, достаточно лишь принудительно изменить логику проверки для получения беспрепятственного доступа к ПО [5].

Рисунок 4 - Схема установления подлинности пользователя


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

Положительные стороны парольной защиты [1]:

− надёжная защита от злоумышленника-непрофессионала;

− минимальные неудобства для пользователя;

− возможность передачи пароля/кода по сети;

− отсутствие конфликтов с системным и прикладным ПО и аппаратным обеспечением;

Отрицательные стороны парольной защиты:

− низкая стойкость большинства систем защиты данного типа;

− пользователю необходимо запоминать пароль/код.

Надежный пароль должен удовлетворять целому ряду требований:

а)пароль должен быть секретным:

) недопустимо отображение пароля на экране;

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

)файл паролей должен иметь надежную криптографическую защиту;

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

б) пароль должен быть длинным. Пароль должен состоять не менее чем из 8 символов, иначе он легко может быть взломан программами прямого перебора;

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

д) пароль не должен представлять собой распространенные слова, имена, названия для защиты от атаки со словарем.

И) каждый пароль должен использоваться уникально - только одним пользователем и для получения доступа только к одной из программ. Нельзя использовать один и тот же пароль для доступа к нескольким программам.

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

Системы «привязки» ПО

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

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

Положительные факторы:

− не требуется добавочных аппаратных средств для работы защиты;

− затруднение несанкционированного доступа к скопированному ПО;

− простота применения.

Отрицательные факторы:

− ложные срабатывания СЗПО при любых изменениях в параметрах ПК;

− низкая стойкость при доступе злоумышленника к ПК пользователя;

− возможность конфликтов с системным ПО.

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

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


Лицензирование ПО

Суть любой из систем лицензирования заключается в том, что после установки программного обеспечения на локальный компьютер пользователю необходимо получить от производителя ключ, который был бы тем или иным образом привязан к компьютеру (в основном), хотя это может быть и банальный пароль, и вовсе необязательно этот ключ привязан к компьютеру. Системы лицензирования бывают как «одна лицензия - один компьютер» так и «одна лицензия - один пользователь». Как правило, для этих целей используют механизм заполнения анкеты на сайте производителя (для идентификации пользователей) + пересылку (на тот же сайт) специального идентификатора компьютера, на основе которого и выполняется генерация ключа. Как правило, в ключе, в зашифрованном виде, содержится информация о пользователе, продукте и числе лицензий [1].

Ярким представителем системы лицензирования является Globertrotter FlexLM - система лицензирования, которую используют многие компании, работающие на корпоративном рынке. Данной системой пользуются такие крупные компании как Rational, AliasWavefront и многие другие.(и ряд других компаний) предлагает два типа лицензий: Floating и Node Locked.- плавающий тип лицензий. Данный вид лицензий устанавливается на сервер и оговаривает число одновременно работающих машин в сети. То есть, имея 10 лицензий, с продуктом могут только 10 машин одновременно, но продукт можно инсталлировать на сколь угодно рабочих мест. Данный тип защиты позволяет продукту распространяться, но запускать его одновременно можно только на ограниченном числе машин. Защита наиболее эффективна на корпоративном рынке, где работает много специалистов. На лицо экономическая выгода, основывающаяся на том, что не все пользователи одновременно работают с одними и теми же программами. В случае корпоративного применения возможна экономия от 80% до 50% от общего числа необходимых лицензий.Locked - фиксированный тип лицензий. Данный способ защиты позволяет работать только на одной машине. Способ хорошо подходит для индивидуальных пользователей, которым необходимо работать только с одной рабочей машины. Как правило, стоимость Floating лицензии выше, чем Node Locked в силу вышеуказанных причин. Также лицензии делятся на две категории: постоянные и временные.

Патентование ПО

Программы не являются объектами промышленной собственности, а являются объектами авторского права. Тем не менее, в отличие от других объектов авторского права, Российское патентное ведомство осуществляет официальную государственную регистрацию программ и выдает соответствующие свидетельства о регистрации [3]. Правовая защита распространяется на все виды программного обеспечения для ПК (в том числе на операционные системы и программные комплексы), которые могут быть выражены на любом языке и в любой форме, включая исходный код

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

Авторское право

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

Однако без регистрации держатель авторского права не может реализовать свои права. Например, он не может возбудить иск о нарушении его права и не может получить возмещение [1].

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

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

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

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

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

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

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


Заключение

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

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

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

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


 

МОСКОВСКИЙ АВИАЦИОННЫЙ ИНСТИТУТ

Кафедра «Информатики и информационных технологий» № 409Б

 

 

Курсовая работа

по дисциплине: «Теория информационной безопасности и методология защиты информации»

Тема: Исследование методов и средств защиты программного обеспечения

 

 

Выполнил: Славкин А. С.

Проверил: Красоткин Ю. И.

 

 

Серпухов 2012

 


Реферат

Ключевые слова: ПРОГРАМНОЕ ОБЕСПЕЧЕНИЕ, УГРОЗЫ БЕЗОПАСНОСТИ ПО, СРЕДСТВА ЗАЩИТЫ ПО, МЕТОДЫ АНАЛИЗА БЕЗОПАСНОСТИ ПО, СРЕДСТВА ДЕСТРУКТИВНОГО ВОЗДЕЙСТВИЯ НА ПО.

Цель работы - выявить наиболее эффективные средства и методы защиты программного обеспечения.

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

 


Содержание

 

Введение

. Воздействие вредоносных средств на безопасность ПО

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

Контрольно-испытательные методы

Логико-аналитические методы

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

Парольная защита

Системы «привязки» ПО

Средства защиты ПО с электронными ключами

Средства защиты ПО с ключевыми дисками

. Анализ правовых средств защиты ПО

Лицензирование ПО

Патентование ПО

Авторское право

Метод авторизации ПО через Интернет

Заключение

Список использованных источников


Обозначения и сокращения

ПК - персональный компьютер

ПО - программное обеспечение

ИТ - информационные технологии

КС - компьютерная система

ИС - информационная система

РПС - разрушающее программное средство

НСД - несанкционированный доступ

СЗПО - средства защиты программного обеспечения

 


Введение

 

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

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

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

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


 


Поделиться:



Последнее изменение этой страницы: 2020-02-16; Просмотров: 150; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.09 с.)
Главная | Случайная страница | Обратная связь