Выделяют следующие основные модели работы программных закладок.
1. Модель «перехват». Программная закладка внедряется в ПЗУ, ОС или прикладное ПО и сохраняет все или избранные фрагменты вводимой или выводимой информации в скрытой области внешней памяти прямого доступа. Для данной модели существенно наличие во внешней памяти места хранения информации, которое должно быть организовано таким образом, чтобы обеспечить ее сохранность на протяжении заданного промежутка времени и возможность последующего съема. Как правило, сохраняемая информация маскируется от просмотра легальными пользователями.
2. Модель «троянский конь». Программная закладка скрывается под исзвестное ПО.
3. Модель «наблюдатель». Программная закладка встраивается в постоянно активное ПО и осуществляет контроль за процессами обработки информации в компьютерной системе (реализует установку и удаление РПВ, съём накопленной информации и т.п.).
4. Модель «компрометация». Программная закладка либо передает заданную злоумышленником информацию в канал связи, либо сохраняет ее, не полагаясь на гарантированную возможность последующего приема или снятия.
В чем разница между OSI и TCP/IP? Зачем существуют одновременно две сетевые модели?
5. Модель «искажение или инициатор ошибок». Программная закладка искажает потоки выходных данных, возникающие при работе прикладных программ (например, записывает ключевую информацию в конец зашифрованного файла), либо искажает входные потоки информации (например, устраняет фальсификацию ЭЦП), либо инициирует или подавляет возникающие при работе прикладных программ ошибки.
6. Модель «уборка мусора». Программная закладка «изучает остатки информации», оставшиеся после удаления файлов. Может максимизировать количество оставшихся нетронутыми фрагментов ценной информации.
Условимся, что исполнение кода программной закладки может быть сопровождено операциями несанкционированной записи (НСЗ) и несанкционированного считывания (НСЧ). Возможные комбинации несанкционированных действий – НСЧ и НСЗ, а также санкционированных действий прикладной программы или операционной среды по записи (СЗ) или считыванию (СЧ) представлены в таблице 16.
Табл. 16. Возможные комбинации несанкционированных и санкционированных действий прикладной программы или операционной среды
№ | НСЧ | НСЗ | Действия программной закладки | СЧ | СЗ |
Нет | |||||
Нет | |||||
Нет | |||||
Нет | |||||
Изменение (разрушение) кода прикладной программы в оперативной памяти | |||||
Разрушение или сохранение выводимой прикладной программой данных | |||||
Разрушение или сохранение вводимой прикладной программой данных | |||||
Разрушение или сохранение вводимой и выводимой прикладной программой данных | |||||
Нет | |||||
Перенос выводимых прикладной программой данных в оперативную память | |||||
Перенос вводимых в прикладную программу данных в оперативную память | |||||
Перенос вводимых и выводимых прикладной программной данных в оперативную память | |||||
Размножение (самодублирование) | |||||
Разрушение или сохранение выводимой прикладной программой данных | |||||
Разрушение или сохранение вводимой прикладной программой данных | |||||
Разрушение или сохранение вводимой и выводимой прикладной программой данных |
Исходя из данного перечня комбинаций санкционированных и несанкционированных действий, можно выделить 3 основные группы деструктивных функций, которые могут выполняться закладками:
Модель OSI | 7 уровней за 7 минут
· сохранение фрагментов информации, возникающих при работе пользователя, прикладных программ, вводе-выводе данных, во внешней памяти (локальной или удаленной) сети или выделенной ПЭВМ, в том числе различных паролей, ключей и кодов доступа, конфиденциальных документов и т.п.;
· разрушение функций самоконтроля или изменение алгоритмов функционирования прикладных программ, например, программа разграничения доступа станет пропускать пользователей по любому паролю;
· навязывание некоторого режима работы (например, при уничтожении информации – блокирование записи на диск), либо замена записываемой информации навязанной закладкой.
Компьютерные вирусы как класс разрушающих программных воздействий.
Под компьютерными вирусами принято понимать разрушающие программные воздействия, обладающие следующими свойствами.
1. Способность к самодублированию – к созданию собственных копий, не обязательно совпадающих с оригиналом, но обладающих его свойствами.
2. Способность к ассоциированию с другими программами — наличие механизма, обеспечивающего внедрение создаваемых копий в исполняемые объекты компьютерной системы (заражающего механизма).
3. Способность к скрытию признаков своего присутствия в программной среде, к скрытию свойств 1 и 2.
Наиболее известными типами компьютерных вирусов являются файловые вирусы, загрузочные и макровирусы.
Жизненный цикл вирусов включает в себя две основные стадии – хранение (латентная фаза) и исполнение.
В ходе латентной фазы вирус не активен, не может контролировать работу операционной системы, и просто хранится на диске совместно с объектом, в который он внедрён.
Переход от латентной фазы к исполнению вируса осуществляется по некоторому активизирующему событию (открытие файла, наступление определенной даты и т.д.).
Фаза исполнения вируса, как правило, состоит из следующих этапов.
1. Загрузка вируса в память.
3. Заражение «жертвы» (инфицирование).
4. Выполнение деструктивных функций.
5. Передача управления программе-носителю вируса.
Загрузка вируса в память осуществляется ОС одновременно с загрузкой исполняемого объекта, в который внедрен вирус (например, при запуске на исполнение зараженного файла, при чтении загрузочного сектора диска и т.п.).
По способу поиска «жертвы» вирусы можно разделить на два класса. К первому классу относятся вирусы, осуществляющие «активный» поиск с использованием функций ОС, ко второму классу – вирусы, осуществляющие «пассивный поиск» с помощью механизмов расстановки «ловушек» для программных файлов (так часто поступают макровирусы).
Инфицирование объектов компьютерной системы осуществляется различными способами в зависимости от типа вируса. В простейшем случае этап заражения жертвы сводится к самокопированию кода вируса в выбранный в качестве жертвы объект (файл, загрузочный сектор, псевдосбойные сектора и т.д.).
Помимо простого копирования кода вируса в заражаемый объект на этом этапе могут использоваться более сложные алгоритмы, обеспечивающие защиту вируса на стадии хранения (шифрование, «мутации» кода и т.п.). Суть «мутаций» сводится к тому, что при внедрении в объект копии вируса, часть ее кода, относящаяся к расшифровщику, модифицируется так, чтобы возникли различия с оригиналом, но результаты работы остались неизменными. Наиболее распространенными приемами модификации кода являются следующие:
· изменение порядка независимых инструкций;
· замена некоторых инструкций на эквивалентные по результату работы;
· замена используемых в инструкциях регистров на другие;
· внедрение случайным образом зашумляющих инструкций.
Вирусы, использующие подобные механизмы мутации кода, получили название полиморфных.
Особенности воздействия программных закладок на программно-аппаратные средства защиты информации
Особенностью применения программно-аппаратных средств защиты в ПЭВМ являются следующие:
· собственные программы управления аппаратной частью, как правило, находятся в ПЗУ и, следовательно, не могут быть изменены программным путём;
· под управление аппаратным комплексом выделяются средства низкого уровня (операции с портами, либо выделенные прерывания);
· управление программам аппаратной части передается до загрузки операционной среды и часть операций, в основном связанных с инициализацией начальных состояний устройства, также происходит до загрузки операционной среды.
Все эти факторы накладывают определенные условия ограничительного характера на процесс воздействия программных закладок на рассматриваемые программно-аппаратные комплексы. Однако эти ограничения не таковы, чтобы в общем виде полностью исключить это воздействие.
Поскольку обращение к аппаратным средствам происходит из прикладных программ и, как правило, через некоторую промежуточную программу управления, то воздействие на аппаратное средство может быть сведено к воздействию либо на прикладную программу, либо на программу управления аппаратным комплексом, который находится в ОЗУ.
Зададимся следующей моделью работы программно-аппаратного комплекса. Пусть имеется выделенное прерывание int N и k его подфункций int N,1 I, int N, 2. int N, k, управлающие работой программно-аппаратного комплекса с точки зрения программной среды. При этом прикладные программы инициируют программно-аппаратный комплекс путем вызова заданной подфункции прерывания int N, i обычным образом.
Возможны две принципиально разные ситуации: обработчик int N, k находится в ПЗУ; обработчик int N, k находится в ОЗУ (рис. 56).
Рис. 56. Обработчик int N
Очевидно, что первая ситуация не допускает воздействия на обработчик программными средствами, вторая же позволяет произвольно изменять коды обработчика.
Далее, обработчик int N изменяет содержимое ОЗУ, например, выполняя шифрование заданного буфера, выработку производных ключей или электронное подписывание выделенного в ОП массива данных. При этом существующая информация либо изменяется, либо образуется новая информация в ОЗУ.
Необходимо отметить, что эти операции связаны с легко идентифицируемым событием в программной среде ПЭВМ — выполнением или завершением прерывания int N.
В рамках принятой модели можно выделить следующие пути воздействия программных закладок.
1.1. Сохранение на внешнем устройстве информации из изменяемой области ОЗУ, синхронизированное с прерыванием int N.
1.2. Разрушение информации в изменяемой области.
1.3. Определение прерывания int N на собственную программу в ОЗУ путем:
1.3.1. Изменения вызовов int N в пользовательской программе.
1.3.2. Встраивания в цепочки прерывания обычным образом.
Пункты 1.1 — 1.3 полностью сохраняются, но добавляется ещё один:
1.4. Изменение кода самого исходного обработчика int N.
Пусть работа программно-аппаратного комплекса строится по схеме изображенной на рисунке 57.
Рис. 57. Схема работы программно-аппаратного комплекса
Тогда возможны следующие ситуации:
1) нападение на пользовательскую программу, работающую с программно-аппаратным комплексом, путем исправления в ЕХЕ- или СОМ-файле данной программы вызовов прерываний int N (код CD N) на вызов своего прерывания, например, int М (рис. 58).
Рис. 58. Схема исправления вызовов прерываний int N в исполняемом файле
2) нападение на обработчик int N.
· исправление в таблице прерываний адреса int N на другой произвольный адрес в пределах ОЗУ (рис. 59);
Таблица прерываний: off1 seg1. offN segN. off255 seg255
Рис. 59. Схема исправления в таблице прерываний адреса int N
Источник: studopedia.su
Взаимодействия прикладной программы и программы с потенциально опасными последствиями
1. Взаимодействия прикладной программы и программы с потенциально опасными последствиями
Выполнила: Аюрова Д.Ч.
Проверил: Тенгайкин Е.А.
2. Взаимодействие прикладных программ
• Взаимодействие прикладных программ происходит
следующим образом. Обмен информацией во всех сетях
осуществляется
по
логическим
каналам
(ЛК),
следовательно, между взаимодействующими программами
должен быть установлен ЛК. Выделяются программаисточник и программа-приемник. После установления ЛК
программы становятся равноправными. Между двумя или
более
взаимодействующими
программами
может
существовать по одному или более логических каналов.
3.
• Прикладная
программа
или
приложение-программа,
предназначенная для выполнения определённых задач и
рассчитанная на непосредственное взаимодействие с пользователем. В большинстве операционных систем прикладные
программы не могут обращаться к ресурсам компьютера напрямую, а взаимодействуют с оборудованием и другими
программами посредством операционной системы. Также на
простом языке — вспомогательные программы.
• К прикладному программному обеспечению относятся компьютерные программы, написанные для пользователей или самими пользователями для задания компьютеру
конкретной работы. Программы обработки заказов или создания списков рассылки-пример прикладного программного обеспечения. Программистов, которые пишут прикладное программное обеспечение, называют прикладными программистами.
4. Программы с потенциально опасными последствиями
• Потенциально опасные программы – это программное
обеспечение, которое может нанести косвенный вред
компьютеру, на котором установлено или другим компьютерам
в сети: легальные программы, содержащие ошибки, программы
удаленного администрирования, клавиатурные шпионы,
программы вскрытия паролей, программы автоматического
дозвона на платные сайты, рекламные движки и т.д.
5.
Программой с потенциально опасными последствиями
назовем некоторую самостоятельную программу (набор
инструкций), которая способна выполнять любое непустое
подмножество перечисленных функций:
• — скрывать признаки своего присутствия в программной среде
ПЭВМ;
• — обладать способностью к самодублированию, ассоциированию себя с другими программами и/или переносу своих
фрагментов в иные области оперативной или внешней памяти;
• — разрушать (искажать произвольным образом) код программ в
оперативной памяти;
• — сохранять фрагменты информации из оперативной памяти в
некоторых областях внешней памяти прямого доступа
(локальных или удаленных);
• — искажать произвольным образом, блокировать и/или
подменять выводимый во внешнюю память или в канал связи
массив информации, образовавшийся в результате работы
прикладных программ, или уже находящиеся во внешней
памяти массивы данных.
6.
Программы с потенциально опасными
последствиями можно условно подразделить
на:
• классические программы-«вирусы»;
• программы типа «программный червь» или
«троянский конь» и фрагменты программ
типа «логический люк»;
• программы типа «логическая бомба»;
• программные закладки — обобщенный класс
программ
с
потенциально
опасными
последствиями.
7.
•Компьютерным вирусом называется программа, которая может создавать свои копии
(не обязательно совпадающие с оригиналом) и внедрять их в файлы, системные
области компьютера, сети и так далее. При этом копии сохраняют способность
дальнейшего распространения.
•Люком называется не описанная в документации на программный продукт
возможность работы с этим программным продуктом. Сущность использования люков
состоит в том, что при выполнении пользователем некоторых не описанных в
документации действий он получает доступ к возможностям и данным, которые в
обычных условиях для него закрыты (в частности — выход в привилегированный
режим).
•Существуют программы, реализующие, помимо функций, описанных в
документации, и некоторые другие функции, в документации не описанные. Такие
программы называются «троянскими конями».
•Логической бомбой обычно называют программу или даже участок кода в программе,
реализующий некоторую функцию при выполнении определенного условия.
•Программная закладка — скрытно внедрённая в защищенную систему
программа, либо намеренно измененный фрагмент программы, которая
позволяет злоумышленнику осуществить несанкционированный доступ к
ресурсам системы на основе изменения свойств системы защиты. Закладка
может быть внедрена самим разработчиком программного обеспечения.
8.
Кроме того, такие программы можно классифицировать по методу и
месту их внедрения и применения (то есть по «cпособу доставки» в
систему):
• закладки, связанные с программно-аппаратной средой (BIOS);
• закладки, связанные с программами первичной загрузки;
• закладки, связанные с драйвером DOS, командным интерпретатором,
сетевыми драйверами, то есть с загрузкой и работой операционной
среды;
• закладки, связанные с прикладным программным обеспечением
общего назначения (встроенные в клавиатурные и экранные
драйверы, программы тестирования ПЭВМ, утилиты, файловые
оболочки);
• исполняемые модули, содержащие только код закладки (как правило,
внедряемые в пакетные файлы типа BAT);
• модули-имитаторы, совпадающие по внешнему виду с легальными
программами, требующими ввода конфеденциальной информации;
• закладки, маскируемые под программные средства оптимизационного
назначения (архиваторы, ускорители и т.д.);
• закладки, маскируемые под программные средства игрового и
развлекательного назначения (как правило, используются для
первичного внедрения других закладок; условное название «исследователь»).
Источник: ppt-online.org
Модели взаимодействия прикладной программы и программной закладки
Общая модель РПС можно представить в виде совокупности моделей, каждая из которых соответствует описанным выше типам РПС и характеризует действия злоумышленника, исходя из его образа мыслей и возможностей [ПАС].
1. Модель «перехват». Программная закладка встраивается (внедряется) в ПЗУ, ОС или прикладное программное обеспечение и сохраняет все или избранные фрагменты вводимой или выводимой информации в скрытой области локальной или удаленной внешней памяти прямого доступа. Объектом сохранения может быть клавиатурный ввод, документы, выводимые на принтер, или уничтожаемые файлы-документы. Для данной модели существенно наличие во внешней памяти места хранения информации, которое должно быть организовано таким образом, чтобы обеспечить ее сохранность на протяжении заданного промежутка времени и возможность последующего съема. Важно также, чтобы сохраняемая информация была каким-либо образом замаскирована от просмотра легальными пользователями.
2. Модель «троянский конь». Закладка встраивается в постоянно используемое программное обеспечение и по некоторому активизирующему событию моделирует сбойную ситуацию на средствах хранения информации или в оборудовании компьютера (сети). Тем самым могут быть достигнуты две различные цели: во-первых, парализована нормальная работа компьютерной системы и, во-вторых, злоумышленник (например, под видом обслуживания или ремонта) может ознакомиться с имеющейся в системе или накопленной посредством использования модели «перехват» информацией. Событием, активизирующим закладку, может быть некоторый момент времени, либо сигнал из канала модемной связи (явный или замаскированный), либо состояние некоторых счетчиков (например, число запусков программ).
3. Модель «наблюдатель». Закладка встраивается в сетевое или телекоммуникационное программное обеспечение. Пользуясь тем, что данное ПО, как правило, всегда активно, программная закладка осуществляет контроль за процессами обработки информации на данном компьютере, установку и удаление закладок, а также съем накопленной информации. Закладка может инициировать события для ранее внедренных закладок, действующих по модели «троянский конь».
4. Модель «компрометация». Закладка либо передает заданную злоумышленником информацию (например, клавиатурный ввод) в канал связи, либо сохраняет ее, не полагаясь на гарантированную возможность последующего приема или снятия. Более экзотический случай – закладка инициирует постоянное обращение к информации, приводящее к росту отношения сигнал/шум при перехвате побочных излучений.
5. Модель «искажение или инициатор ошибок». Программная закладка искажает потоки данных, возникающие при работе прикладных программ (выходные потоки), либо искажает входные потоки информации, либо инициирует (или подавляет) возникающие при работе прикладных программ ошибки.
6. Модель «сборка мусора». В данном случае прямого воздействия РПС может и не быть; изучаются «остатки» информации. В случае применения программной закладки навязывается такой порядок работы, чтобы максимизировать количество остающихся фрагментов ценной информации. Злоумышленник получает либо данные фрагменты, используя закладки моделей 2 и З, либо непосредственный доступ к компьютеру под видом ремонта или профилактики.
У рассмотренных различных по целям воздействия моделей закладок имеется важная общая черта — наличие операции записи, производимой закладкой (в оперативную или внешнюю память). При отсутствии данной операции никакое негативное влияние невозможно. Вполне понятно, что для направленного воздействия закладка должна также выполнять и операции чтения. Так, например, можно реализовать функцию целенаправленной модификации данных в каком-либо секторе жесткого диска, которая возможна только после их прочтения.
Таким образом, исполнение кода закладки может быть сопровождено операциями несанкционированной записи (НСЗ), например, для сохранения некоторых фрагментов информации, и несанкционированного считывания (НСЧ), которое может происходить отдельно от операций чтения прикладной программы или совместно с ними. При этом операции считывания и записи могут быть не связаны с получением информации, например считывание параметров устройства или его инициализация — закладка может использовать для своей работы и такие операции, в частности, для инициирования сбойных ситуаций или переназначения ввода вывода.
Возможные комбинации несанкционированных действий (НСЧ и НСЗ), а также санкционированных действий прикладной программы или операционной среды по записи (СЗ) или считыванию (СЧ) приведены в табл. 1.2 [ПАС].
Ситуации 1 — 4 соответствуют нормальной работе прикладной программы, когда закладка не оказывает на нее никакого воздействия.
Ситуация 5 может быть связана либо с разрушением кода прикладной программы в оперативной памяти ЭВМ, поскольку прикладная программа не выполняет санкционированные действия по записи и считыванию, либо с сохранением уже накопленной в ОП информации.
Ситуация 6 связана с разрушением или с сохранением информации (искажение или сохранение выходного потока), записываемой прикладной программой.
Ситуация 7 связана с сохранением информации (сохранение входного потока) считываемой прикладной программой.
Ситуация 8 связана с сохранением информации закладкой при считывании или записи информации прикладной программой.
Ситуация 9 не связана с прямым негативным воздействием, поскольку прикладная программа не активна, а закладка производит только НСЧ (процесс «настройки»).
Ситуация 10 может быть связана с сохранением выводимой информации в оперативную память.
Ситуация 11 может быть связана с сохранением вводимой информации в оперативную память либо с изменением параметров процесса санкционированного чтения закладкой.
Ситуация 12 может быть связана с сохранением как вводимой, так и выводимой прикладной программой информации в оперативную память.
Ситуация 13 может быть связана с размножением закладки, сохранением накопленной в буферах ОП информации или с разрушением кода и данных в файлах, поскольку прикладная программа не активна.
Номер ситуации
Действия РПС
Источник: studfile.net