7.2 Модели взаимодействия прикладной программы и рпв
Выделяют следующие основные модели работы программных закладок.
1. Модель «перехват». Программная закладка внедряется в ПЗУ, ОС или прикладное ПО и сохраняет все или избранные фрагменты вводимой или выводимой информации в скрытой области внешней памяти прямого доступа. Для данной модели существенно наличие во внешней памяти места хранения информации, которое должно быть организовано таким образом, чтобы обеспечить ее сохранность на протяжении заданного промежутка времени и возможность последующего съема. Как правило, сохраняемая информация маскируется от просмотра легальными пользователями.
2. Модель «троянский конь». Программная закладка встраивается в постоянно используемое ПО и по некоторому активизирующему событию моделирует сбойную ситуацию, парализуя нормальную работу компьютерной системы, или предоставляя злоумышленнику возможность под видом ремонта получить доступ к компьютерной системе.
3. Модель «наблюдатель». Программная закладка встраивается в постоянно активное ПО и осуществляет контроль за процессами обработки информации в компьютерной системе (реализует установку и удаление РПВ, съем накопленной информации и т.п.).
4. Модель «компрометация». Программная закладка либо передает заданную злоумышленником информацию в канал связи, либо сохраняет ее, не полагаясь на гарантированную возможность последующего приема или снятия.
5. Модель «искажение или инициатор ошибок». Программная закладка искажает потоки выходных данных, возникающие при работе прикладных программ (например, записывает ключевую информацию в конец зашифрованного файла), либо искажает входные потоки информации (например, устраняет фальсификацию ЭЦП), либо инициирует или подавляет возникающие при работе прикладных программ ошибки.
6. Модель «уборка мусора». Программная закладка «изучает остатки информации», оставшиеся после удаления файлов. Может максимизировать количество оставшихся нетронутыми фрагментов ценной информации.
Условимся, что исполнение кода программной закладки может быть сопровождено операциями несанкционированной записи (НСЗ) и несанкционированного считывания (НСЧ). Возможные комбинации несанкционированных действий – НСЧ и НСЗ, а также санкционированных действий прикладной программы или операционной среды по записи (СЗ) или считыванию (СЧ) представлены в таблице 9.1.
Табл. 9.1. Возможные комбинации несанкционированных действий – НСЧ и НСЗ, а также санкционированных действий прикладной программы или операционной среды
№ | НСЧ | НСЗ | Действия программной закладки | СЧ | СЗ |
1 | 0 | 0 | Нет | 0 | 0 |
2 | 0 | 0 | Нет | 0 | 1 |
3 | 0 | 0 | Нет | 1 | 0 |
4 | 0 | 0 | Нет | 1 | 1 |
5 | 0 | 1 | Изменение (разрушение) кода прикладной программы в оперативной памяти | 0 | 0 |
6 | 0 | 1 | Разрушение или сохранение выводимой прикладной программой данных | 0 | 1 |
7 | 0 | 1 | Разрушение или сохранение вводимой прикладной программой данных | 1 | 0 |
8 | 0 | 1 | Разрушение или сохранение вводимой и выводимой прикладной программой данных | 1 | 1 |
9 | 1 | 0 | Нет | 0 | 0 |
10 | 1 | 0 | Перенос выводимых прикладной программой данных в оперативную память | 0 | 1 |
11 | 1 | 0 | Перенос вводимых в прикладную программу данных в оперативную память | 1 | 0 |
12 | 1 | 0 | Перенос вводимых и выводимых прикладной программной данных в оперативную память | 1 | 1 |
13 | 1 | 1 | Размножение (самодублирование) | 0 | 0 |
14 | 1 | 1 | Разрушение или сохранение выводимой прикладной программой данных | 0 | 1 |
15 | 1 | 1 | Разрушение или сохранение вводимой прикладной программой данных | 1 | 0 |
16 | 1 | 1 | Разрушение или сохранение вводимой и выводимой прикладной программой данных | 1 | 1 |
Исходя из данного перечня комбинаций санкционированных и несанкционированных действий, можно выделить 3 основные группы деструктивных функций, которые могут выполняться закладками:
сохранение фрагментов информации, возникающих при работе пользователя, прикладных программ, вводе-выводе данных, во внешней памяти (локальной или удаленной) сети или выделенной ПЭВМ, в том числе различных паролей, ключей и кодов доступа, конфиденциальных документов и т.п.;
разрушение функций самоконтроля или изменение алгоритмов функционирования прикладных программ, например, программа разграничения доступа станет пропускать пользователей по любому паролю;
навязывание некоторого режима работы (например, при уничтожении информации - блокирование записи на диск), либо замена записываемой информации навязанной закладкой.
- Модульная архитектура технических средств защиты по от несанкционированного использования
- Функционирование подсистем и модулей системы защиты по от несанкционированного использования
- Электронные ключи hasp
- Глава 1. Методы и средства обратного проектирования.
- 1.1. Понятие обратного проектирования
- 1.2. Основные приемы, используемые злоумышленником при отладке и дизассемблировании программного обеспечения
- 1.2.1. Специфика атак на модули проверки корректности ключевой информации
- 1.2.2. Специфика атак на модули проверки истечения временного срока работы программы или ограничения по количеству ее запусков
- 1.2.3. Отлов злоумышленником вызова WinApi функций при взломе по
- 1.3. Мониторинг событий
- Глава 2. Методы противодействия обратному проектированию
- 2.1. Методы противодействия отладчикам
- 2.1.1. Защита от отладчиков реального режима
- 2.1.2. Защита от отладчиков защищенного режима
- 2.1.3. Методы, основанные на невозможности полного эмулирования отладчиком среды загрузки программы
- 2.2. Методы противодействия дизассемблированию программного обеспечения
- 2.3. Защита, основанная на человеческом факторе злоумышленника
- Глава 3. Общие методы защиты программ от отладки и дизассемблирования
- 3.1. Использование недокументированных команд и недокументированных возможностей процессора
- 3.2. Шифрование кода программы
- Глава 4. Эмуляторы процессоров. Использование эмуляторов для взлома и защиты программного обеспечения.
- Глава 5. Защита исходных текстов программного обеспечения
- Глава 6. Идентификация и аутентификация субъектов
- 6.1. Идентификация и аутентификация пользователей с использованием технических устройств
- 6.2. Идентификация и аутентификация с использованием индивидуальных биометрических характеристик пользователя
- 7. Защита от разрушающих программных воздействий
- 7.1. Понятие разрушающего программного воздействия
- 7.2 Модели взаимодействия прикладной программы и рпв
- 7.3 Компьютерные вирусы как класс рпв
- 7.4. Защита от рпв. Изолированная программная среда
- Глава 8. Руководящие документы России
- Приложение
- 6.1. Отладка программ в отладчике SoftIce
- 6.2. Дизассемблирование программ с помощью интерактивного дизассемблера Ida Pro
- 6.3. Редактор кода hiew
- Лабораторные работы