Информационная безопасность 

Ст. Кузьмич В.Ю.

Национальный горный универсисет, Украина

 

Основные методы защиты ПО от закладок

 

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

Программные закладки можно классифицировать по методу их внедрения в компьютерную систему:

·        программно-аппаратные закладки, ассоциированные с аппаратными средствами компьютера (их средой обитания, как правило, является BIOS — набор программ, записанных в виде машинного кода в постоянном запоминающем устройстве — ПЗУ);

·        загрузочные закладки, ассоциированные с программами начальной загрузки, которые располагаются в загрузочных секторах (из этих секторов в процессе выполнения начальной загрузки компьютер считывает программу, берущую на себя управление для последующей загрузки самой операционной системы);

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

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

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

·        закладки-имитаторы, интерфейс которых совпадает с интерфейсом некоторых служебных программ, требующих ввод конфиденциальной информации (паролей, криптографических ключей, номеров кредитных карточек);

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

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

Программные закладки можно разделить также и по типу их воздействия на систему:

·        Закладки, вносящие произвольные искажения в коды программ, которые находятся в оперативной памяти компьютера (программная закладка первого типа);

·        Закладки, переносящие фрагменты информации из одних областей оперативной или внешней памяти компьютера в другие (программная закладка второго типа);

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

         Задача защиты от программных закладок может рассматриваться в трех принципиально различных вариантах:

·        не допустить внедрения программной закладки в компьютерную систему;

·        выявить внедренную программную закладку;

·        удалить внедренную программную закладку.

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

·        навязывать конечные результаты контрольных проверок;

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

·        изменять алгоритмы функционирования средств контроля.

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

Универсальным средством защиты от внедрения программных закладок является создание изолированного компьютера. Компьютер называется изолированным, если выполнены следующие условия:

·        в нем установлена система BIOS, не содержащая программных закладок;

·        операционная система проверена на наличие в ней закладок;

·        достоверно установлена неизменность BIOS и операционной системы для данного сеанса;

·        на компьютере не запускалось и не запускается никаких иных программ, кроме уже прошедших проверку на присутствие в них закладок;

·        исключен запуск проверенных программ в каких-либо иных условиях, кроме перечисленных выше, т. е. вне изолированного компьютера.

Для определения степени изолированности компьютера может использоваться модель ступенчатого контроля. Сначала проверяется, нет ли изменений в BIOS. Затем, если все в порядке, считывается загрузочный сектор диска и драйверы операционной системы, которые, в свою очередь, также анализируются на предмет внесения в них несанкционированных изменений. И наконец, с помощью операционной системы запускается драйвер контроля вызовов программ, который следит за тем, чтобы в компьютере запускались только проверенные программы.

Литература:

1.     В. Проскурин «Программные закладки в защищенных системах»

http://www.crime-research.ru/library/progwir98.htm

2.     Анин Б. Ю. «Защита компьютерной информации». - СПб.: БХВ-Петербург, 2000. - 384 с.