Защита от РПВ. Изолированная программная среда

 

Методы борьбы с разрушающим программным воздействием ( РПВ) можно разделить не следующие классы.

 

Общие методы защиты программного обеспечения от РПВ:

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.

 

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

Защита от РПВ путем создания изолированной программной среды

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

Потенциально злоумышленными действиями в этом случае могут быть следующие:

· проверенные программы будут использованы на другой ПЭВМ с другим BIOS и в этих условиях могут использоваться некорректно;

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

· проверенные программы используются на проверенной ПЭВМ и в проверенной операционной среде, но запускаются еще и непроверенные программы, потенциально несущие в себе возможности НСД.

 

Деструктивные действия закладок гарантированно невозможны, если выполняются следующие условия:

· На ПЭВМ c проверенным BIOS установлена проверенная ОС.

· Достоверно установлена неизменность ОС и BIOS для данного сеанса

работы.

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

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

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

 

При выполнении перечисленных выше условий программная среда называется изолированной (ИПС – изолированная программная среда).

Основными элементами поддержания ИПС являются контроль целостности и активности процессов.

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

· невозможность запуска программ помимо контролируемых ИПС событий;

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

 

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