Важным моментом при работе прикладных программ, и в особенности средств защиты информации, является необходимость обеспечения потенциального невмешательства иных, присутствующих в компьютерной системе прикладных или системных программ, в процесс обработки информации.
Если под НСД понимают действия по использованию, изменению и уничтожению информации защищенной компьютерной системы, производимые субъектом, не имеющим права на такие действия, то под опосредованным НСД понимают несанкционированный доступ злоумышленника к информации, произведенный посредством предварительно внедренной в систему программы (или нескольких программ).
Например, предварительно внедренная злоумышленником в компьютерную систему программа, может перехватывать пароли, вводимые с клавиатуры легальным пользователем, и сохранять их в заранее известном и доступном злоумышленнику месте. Затем злоумышленник использует эти пароли для несанкционированного входа в систему.
Опосредованный НСД, как правило, реализуется с использованием особого класса программ – программ с потенциально опасными последствиями. В общем случае, программой с потенциально опасными последствиями называют программу, которая способна выполнять любое непустое подмножество перечисленных ниже функций:
Обзор технологий кибербезопасности для защиты организации
1. скрывать признаки своего присутствия в программной среде компьютерной системы;
2. реализовывать самодублирование или ассоциирование себя с другими программами и/или перенос своих фрагментов в иные (не занимаемые изначально указанной программой) области оперативной или внешней памяти. При этом под самодублированием понимается процесс воспроизведения программой своего собственного кода в оперативной или внешней памяти компьютерной системы. Под ассоциированием с другой программой понимается интеграция своего кода, либо его части, в код другой программы таким образом, чтобы при определенных условиях управление передавалось на код программы с потенциально опасными последствиями;
3. разрушать (исказить произвольным образом) код иных программ в оперативной памяти компьютерной системы;
4. переносить (сохранять) фрагменты информации из оперативной памяти в некоторые области оперативной или внешней памяти прямого доступа;
5. имеет потенциальную возможность исказить произвольным образом, заблокировать и/или подменить выводимый во внешнюю память или в канал связи массив информации, образовавшийся в результате работы прикладных программ, или уже находящийся во внешней памяти, либо изменить его параметры.
Условно программы с потенциально опасными последствиями можно разделить на три класса.
1.Вирусы. Особенностью данного класса программ с потенциально опасными последствиями является его ненаправленность на конкретные программы и также то, что во главу угла здесь ставится самодублирование вируса.
2. Программные черви, троянские кони и фрагменты программ типа логический люк. Для данного типа программ имеет место обратная ситуация — самодублирование не присуще данным программам, но они обладают возможностями перехвата конфиденциальной информации или извлечения информации из сегментов систем безопасности, или ограничения доступа.
Защита программ и данных: лекция 2 «Классификация автоматизированных систем»
3. Программные закладки или разрушающие программные воздействия (РПВ) – обобщенный класс программ с потенциально опасными последствиями, обязательно реализующие хотя бы один пп. 3-5 определения программы с потенциально опасными последствиями. Программы данного класса, как правило, скрывают себя, и самоликвидируются после совершения целевых действий.
Далее, вместо термина «программа с потенциально опасными последствиями» будем использовать термин «программная закладка», «разрушающее программное воздействие» или РПВ.
Для того чтобы РПВ смогло выполнить какие-либо действия по отношению к прикладной программе или данным, оно должно получить управление. Это возможно только при одновременном выполнении двух условий:
1. РПВ должно находиться в оперативной памяти до начала работы программы, которая является целью его воздействия, следовательно, оно должно быть загружено раньше или одновременно с этой программой;
2. РПВ должно активизироваться по некоторому общему, как для него, так и для программы событию, т.е. при выполнении ряда условий в программно-аппаратной среде, управление должно быть передано РПВ. Данное событие называют активизирующим.
Наиболее распространенными видами активизирующих событий являются:
1. Общие системные прерывания, связанные с выполнением некоторого действия (обращение к внешнему устройству, запись в файл и т.д.).
2. Ввод с клавиатуры (свойственно для клавиатурных шпионов).
3. Вывод информации на экран.
4. Операции с файлами (чтение, запись, открытие и т.п.).
5. Прерывание по таймеру.
Выделяют резидентные и нерезидентные РПВ
РПВ резидентного типа находятся в памяти постоянно с некоторого момента времени до окончания сеанса работы компьютерной системы (например, клавиатурный шпион). РПВ нерезидентного типа заканчивает свою работу самостоятельно через некоторый промежуток времени или по некоторому событию, при этом выгружая себя из памяти целиком для затруднения своего обнаружения.
Источник: studfile.net
Защита от разрушающих программных воздействий путём создания изолированной программной среды
Методы борьбы с воздействием разрушающих программных воздействий можно разделить не следующие классы.
1. Общие методы защиты программного обеспечения от РПВ
1.1. контроль целостности системных областей, запускаемых прикладных программ и используемых данных;
1.2. контроль цепочек прерываний и фильтрация вызовов критических для безопасности системы прерываний.
Данные методы действенны лишь тогда, когда контрольные элементы не подвержены воздействию закладок и разрушающее воздействие входит в контролируемый класс. Так, например, система контроля над вызовом прерываний не будет отслеживать обращение на уровне портов. С другой стороны контроль целостности информации может быть обойден злоумышленником путём:
· навязывания конечного результата проверок;
· влияния на процесс считывания информации;
· изменения хеш-значений, хранящихся в общедоступных файлах.
1.3. создание безопасной и изолированной операционной среды;
1.4. предотвращение результирующего воздействия вируса или закладки (например, запись на диск только в зашифрованном виде на уровне контроллера, либо запрет записи на диск на аппаратном уровне).
2. Специализированные методы борьбы с РПВ
2.1. поиск фрагментов кода по характерным последовательностям (сигнатурам), свойственным РПВ, либо наоборот, разрешение на выполнение или внедрение в цепочку прерываний только программ с известными сигнатурами;
2.2. поиск критических участков кода методом семантического анализа (анализ фрагментов кода на выполняемые ими функции, часто сопряженный с дисассемблированием или эмуляцией выполнения).
Заметим, что при пустом множестве активизирующих событий для закладки потенциальные деструктивные действия с ее стороны невозможны.
Предположим, что в ПЗУ и ОС отсутствуют закладки – проверка этого проведена по некоторой методике. Пусть также пользователь работает только с программами, процесс написания и отладки которых полностью контролируется, т.е. в них также исключено наличие закладок. Такие программы называются проверенными. Потенциально злоумышленными действиями в этом случае могут быть следующие:
· проверенные программы будут использованы на другой ПЭВМ с другим BIOS и в этих условиях могут использоваться некорректно;
· проверенные программы будут использованы в аналогичной, но не проверенной операционной среде, в которой они также могут использоваться некорректно;
· проверенные программы используются на проверенной ПЭВМ и в проверенной операционной среде, но запускаются еще и непроверенные программы, потенциально несущие в себе возможности НСД.
Следовательно, в этих условиях деструктивные действия закладок гарантированно невозможны, если выполняются следующие условия:
1) На ПЭВМ c проверенным BIOS установлена проверенная операционная среда.
2) Достоверно установлена неизменность ОС и BIOS для данного сеанса работы.
3) Кроме проверенных программ в данной программно-аппаратной среде не запускалось и не запускается никаких иных программ, проверенные программы перед запуском контролируются на целостность.
4) Исключен запуск проверенных программ в какой-либо иной ситуации, т.е. вне проверенной среды.
5) Условия 1-4 выполняются в любой момент времени для всех пользователей, аутентифицированных защитным механизмом.
При выполнении перечисленных выше условий программная среда называется изолированной (ИПС – изолированная программная среда).
Основными элементами поддержания ИПС являются контроль целостности и активности процессов.
Функционирование программ в рамках ИПС существенно ослабляет требования к базовому ПО операционной среды. ИПС контролирует активизацию процессов через операционную среду, контролирует целостность исполняемых модулей перед их запуском и разрешает инициирование процесса только при одновременном выполнении двух условий — принадлежности к разрешенным программам и неизменности программ. В таком случае, для предотвращения угроз, связанных с внедрением в операционную среду скрытых недекларированных возможностей, от базового ПО требуется только:
1. невозможность запуска программ помимо контролируемых изолированной программной средой событий;
2. отсутствие в базовом программном обеспечении возможностей влиять на среду функционирования уже запущенных программ (фактически это требование невозможности редактирования и использования оперативной памяти другого процесса).
Создание и поддержка изолированной программной среды возможны только с помощью специализированных аппаратных средств, целостность которых обеспечивается технологией производства и периодическими проверками.
Источник: studopedia.su
Защита от РПВ. Изолированная программная среда
Методы борьбы с разрушающим программным воздействием (РПВ) можно разделить не следующие классы.
Общие методы защиты программного обеспечения от РПВ:
1. Контроль целостности системных областей, запускаемых прикладных
программ и используемых данных. Следует помнить, что контроль
целостности информации может быть обойден злоумышленником
· навязывания конечного результата проверок;
· влияния на процесс считывания информации;
· изменения хеш-значений, хранящихся в общедоступных файлах.
2. Контроль цепочек прерываний и фильтрация вызовов критических
для безопасности системы прерываний. Данные методы действенны
лишь тогда, когда контрольные элементы не подвержены воздействию
закладок и разрушающее воздействие входит в контролируемый класс.
3. Создание безопасной и изолированной операционной среды.
4. Предотвращение результирующего воздействия вируса или закладки.
Например, запись на диск должна вестись только в зашифрованном
виде на уровне контроллера, либо должен быть реализован запрет
записи на диск на аппаратном уровне.
Специализированные методы борьбы с РПВ
К ним можно отнести:
· Поиск фрагментов кода по характерным последовательностям (сигнатурам), свойственным РПВ, либо наоборот, разрешение на выполнение или внедрение в цепочку прерываний только программ с известными сигнатурами.
· Поиск критических участков кода методом семантического анализа фрагментов кода на выполняемые ими функции, часто сопряженный с дизассемблированием или эмуляцией выполнения [22].
В качестве одной из возможных эвристических методик выявления РПВ в BIOS, ассоциированных с существенно важными прерываниями, следует рассмотреть эвристическую методику выявления РПВ в BIOS[23].
Эвристическая методика выявления РПВ в BIOS
1. Выделяется группа прерываний, существенных с точки зрения обработки информации программой, относительно которой проводится защита. Обычно это прерывания int 13h (запись информации на внешние магнитные накопители прямого доступа), int 14h (обмен с RS232 портом), int 10h (обслуживание видеотерминала), а также в обязательном порядке прерывания таймера int 8h, int 1Ch и прерывания клавиатуры int 9h и int 16h.
2. Для выделенной группы прерываний определяются точки входа в ПЗУ, используя справочную информацию, либо выполняя прерывание в режиме трассировки.
3. Для выделенных адресов создаются цепочки исполняемых команд от точки входа до команды IRET — возврату управления из BIOS.
В цепочках исполняемых команд выделяются:
— команды работы с портами;
— команды передачи управления;
— команды пересылки данных.
4. В цепочках исполняемых команд анализируются команды выделенных
групп. Определяется присутствие в прерываниях команд:
· работы с недокументированными портами. Наличие таких
команд, как правило, указывает на передачу информации некоторому
устройству, подключенному к параллельному интерфейсу (общей
шине), например, встроенной радиопередающей закладке.
· работы с портами, участвующими в работе другого класса
· перемещения данных из BIOS в оперативную память;
· передачи управления в оперативную память или в сегменты
В случае, если опасных действий, относящихся к выше представленным четырем группам, не обнаружено, аппаратно-программная среда ПЭВМ считается чистой (безопасной).
Защита от РПВ путем создания изолированной программной среды
Предположим, что в ПЗУ и ОС отсутствуют закладки (проверка этого была проведена по некоторой методике). Пусть также пользователь работает только с программами, процесс написания и отладки которых полностью контролируется, т.е. в них также исключено наличие закладок. Такие программы называются проверенными.
Потенциально злоумышленными действиями в этом случае могут быть следующие:
· проверенные программы будут использованы на другой ПЭВМ с другим BIOS и в этих условиях могут использоваться некорректно;
· проверенные программы будут использованы в аналогичной, но не проверенной операционной среде, в которой они также могут использоваться некорректно;
· проверенные программы используются на проверенной ПЭВМ и в проверенной операционной среде, но запускаются еще и непроверенные программы, потенциально несущие в себе возможности НСД.
Деструктивные действия закладок гарантированно невозможны, если выполняются следующие условия:
· На ПЭВМ c проверенным BIOS установлена проверенная ОС.
· Достоверно установлена неизменность ОС и BIOS для данного сеанса
· Кроме проверенных программ в данной программно-аппаратной среде не запускалось и не запускается никаких иных программ, проверенные программы перед запуском контролируются на целостность.
· Исключен запуск проверенных программ в какой-либо иной ситуации, т.е. вне проверенной среды.
· Выше перечисленные условия выполняются в любой момент времени для всех пользователей, аутентифицированных защитным механизмом.
При выполнении перечисленных выше условий программная среда называется изолированной (ИПС – изолированная программная среда).
Основными элементами поддержания ИПС являются контроль целостности и активности процессов.
ИПС контролирует активизацию процессов через операционную среду, контролирует целостность исполняемых модулей перед их запуском и разрешает инициирование процесса только при одновременном выполнении двух условий — принадлежности к разрешенным программам и неизменности программ. В таком случае, для предотвращения угроз, связанных с внедрением в операционную среду скрытых не декларированных возможностей, от базового ПО требуется только:
· невозможность запуска программ помимо контролируемых ИПС событий;
· отсутствие в базовом ПО возможностей влиять на среду функционирования уже запущенных программ (фактически это требование невозможности редактирования и использования оперативной памяти другого процесса).
Создание и поддержка ИПС возможна только с помощью специализированных аппаратных средств, целостность которых обеспечивается технологией производства и периодическими проверками. Одним из программно-аппаратных устройств поддержки изолированной программной среды является программно-аппаратный комплекс «АККОРД» производства ОКБ «САПР».
Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:
Источник: studopedia.ru