Основы проблемы защиты программ различных объектов автоматизации

Автор работы: Пользователь скрыл имя, 01 Марта 2014 в 13:06, дипломная работа

Краткое описание

В связи с этим была определена цель дипломной работы: рассмотреть методологические основы проблемы защиты программ различных объектов автоматизации. Задачи: - описать жизненный цикл современных программных комплексов, модели угроз и принципы обеспечения безопасности программного обеспечения; - рассмотреть современные методы обеспечения безопасности программ на этапе их разработки и испытаний на практике; -разработать, реализовать и провести испытания аппаратно-программного стенда предназначенного для защиты программного обеспечения; - проанализировать литературу по данной теме, сделать выводы; - на практике провести профилактику проникновения вредоносного программного обеспечения посредством исследования Реестра ОС Windows

Содержание

Введение 1
Введение в теорию обеспечения безопасности программного обеспечения
1.1 Угрозы безопасности программного обеспечения
1.2 Несанкционированное копирование, распространение и использование программ
1.3 Модели угроз безопасности программного обеспечения
1.3.1 Подходы к созданию модели угроз технологической безопасности ПО
1.3.2 Элементы модели угроз эксплуатационной безопасности ПО
1.4 Основные принципы обеспечения безопасности
1.4.1 Принципы обеспечения технологической безопасности при обосновании, планировании работ и проектном анализе ПО
1.4.2 Принципы обеспечения технологической безопасности на этапах стендовых и приемо-сдаточных испытаний
1.4.3 Принципы обеспечения безопасности при эксплуатации программного обеспечения
1.5 Жизненный цикл программного обеспечения компьютерных систем. Технологическая и эксплуатационная безопасность программ
2 Практическая часть
2.1 Профилактика проникновения вредоносного программного обеспечения посредством исследования Реестра ОС Windows
2.2 Проверка потенциальных мест записей вредоносного программного обеспечения в системном реестре операционной системы Windows
2.3.1 Исследовать порядок формирования политики защиты от макровирусов при использовании приложения Microsoft Word (из пакета Office XP)
2.4 Знакомство с вопросами защиты компьютеров от атак из Интернет с помощью межсетевых экранов.
Заключение
Список использованной литературы

Вложенные файлы: 1 файл

текст_надира_анализ защищенности программного обеспечения_2.02.2014 - копия.docx

— 1.36 Мб (Скачать файл)
  • сокрытия признаков своего присутствия в программной среде КС;
  • реализации самодублирования, ассоциирования себя с другими программами и/или переноса своих фрагментов в иные (не занимаемые изначально указанной программой) области оперативной или внешней памяти;
  • разрушения (искажения произвольным образом) кода программ в оперативной памяти КС;
  • перемещения (сохранения) фрагментов информации из оперативной памяти в некоторые области оперативной или внешней памяти прямого доступа;
  • искажения произвольным образом, блокировки и/или подмены выводимых во внешнюю память или в канал связи массивов информации, образовавшихся в результате работы прикладных программ или уже находящихся во внешней памяти, либо изменения их параметров.

Можно выделить следующие основные типы РПС.

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

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

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

Существуют три основные архитектуры построения перехватчиков паролей.

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

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

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

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

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

Иногда выделяют особый класс логических бомб - временные бомбы, для которых условием срабатывания является достижение определенного момента времени.

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

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

Целевое назначение мониторов может быть самым разным:

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

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

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

сетевой трафик;

потоки данных, связанные с удалением информации с дисков или из оперативной памяти компьютера (так называемая «сборка мусора»).

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

Кроме того, РПС можно классифицировать по методу и месту их внедрения и применения, т.е. по «способу доставки» в компьютерную систему (ниже приводится пример персонального компьютера) [ПАС]:

  • РПС, ассоциированные с программно-аппаратной средой компьютерной системы (основная BIOS или расширенные BIOS);
  • РПС, ассоциированные с программами первичной загрузки (находящиеся в Master Boot Record или ВООТ-секторах активных разделов), - загрузочные РПС;
  • РПС, ассоциированные с загрузкой драйверов DOS, драйверов внешних устройств других ОС, командного интерпретатора, сетевых драйверов, т.е. с загрузкой операционной среды;
  • РПС, ассоциированные с системным программным обеспечением общего назначения (встроенные в клавиатурные и экранные драйверы, программы тестирования компьютеров, утилиты и оболочки интерфейса с пользователем и т.п.);
  • исполняемые модули, содержащие только код РПС (как правило, внедряемые в файлы пакетной обработки типа .BAT);
  • модули-имитаторы, совпадающие по внешнему виду с некоторыми программами, требующими ввода конфиденциальной информации - наиболее характерны для Unix-систем;
  • РПС, маскируемые под программные средства оптимизационного назначения (архиваторы, ускорители обмена с диском и т.д.);

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

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

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

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

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

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

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

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

Модели взаимодействия прикладной программы и программной закладки

Общая модель РПС можно представить в виде совокупности моделей, каждая из которых соответствует описанным выше типам РПС и характеризует действия злоумышленника, исходя из его образа мыслей и возможностей [ПАС].

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

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

3. Модель «наблюдатель». Закладка встраивается в сетевое или телекоммуникационное программное обеспечение. Пользуясь тем, что данное ПО, как правило, всегда активно, программная закладка осуществляет контроль за процессами обработки информации на данном компьютере, установку и удаление закладок, а также съем накопленной информации. Закладка может инициировать события для ранее внедренных закладок, действующих по модели «троянский конь».

4. Модель «компрометация». Закладка либо передает заданную злоумышленником информацию (например, клавиатурный ввод) в канал связи, либо сохраняет ее, не полагаясь на гарантированную возможность последующего приема или снятия. Более экзотический случай – закладка инициирует постоянное обращение к информации, приводящее к росту отношения сигнал/шум при перехвате побочных излучений.

5. Модель «искажение или инициатор ошибок». Программная закладка искажает потоки данных, возникающие при работе прикладных программ (выходные потоки), либо искажает входные потоки информации, либо инициирует (или подавляет) возникающие при работе прикладных программ ошибки.

6. Модель «сборка мусора». В данном случае прямого воздействия РПС может и не быть; изучаются «остатки» информации. В случае применения программной закладки навязывается такой порядок работы, чтобы максимизировать количество остающихся фрагментов ценной информации. Злоумышленник получает либо данные фрагменты, используя закладки моделей 2 и З, либо непосредственный доступ к компьютеру под видом ремонта или профилактики.

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