Защита от программных закладок 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Защита от программных закладок



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

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

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

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

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

  • в нем установлена система BIOS, не содержащая программных закладок;
  • операционная система проверена на наличие в ней закладок;
  • достоверно установлена неизменность BIOS и операционной системы для данного сеанса;
  • на компьютере не запускалось и не запускается никаких иных программ, кроме уже прошедших проверку на присутствие в них закладок;
  • исключен запуск проверенных программ в каких-либо иных условиях, кроме перечисленных выше, т. е. вне изолированного компьютера.

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

Выявление внедренного кода программной закладки заключается в обнаружении признаков его присутствия в компьютерной системе. Эти признаки можно разделить на следующие два класса:

  • качественные и визуальные;
  • обнаруживаемые средствами тестирования и диагностики.

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

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

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

Одним из атрибутов любого файла является отметка о времени его последней модификации. Однако отметка времени не может служить надежным индикатором наличия в системе троянского программного обеспечения.

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

Злоумышленник, решивший запустить в компьютер троянскую программу, обычно пытается сделать его частью системного файла. Такие файлы входят в дистрибутив операционной системы и их присутствие не вызывает подозрений. Однако любой системный файл имеет вполне определенную длину. Если данный атрибут будет каким-либо образом изменен, это будет сигналом.

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

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

Исторически сложилось так, что большинство утилит, позволяющих бороться с проникновением в компьютерную систему троянских программ путем однонаправленного хэширования файлов, было создано для операционных систем семейства UNIX. Например, утилита Trip Wire, которая позволяет производить однонаправленное хэширование файлов. Вычисленные хэш-значения файлов хранятся в специальной базе данных, которая, в принципе, является самым уязвимым звеном утилиты, поэтому пользователям предлагается в обязательном порядке принимать дополнительные меры защиты для исключения доступа к этой базе данных со стороны злоумышленника (например, помещать ее на съемном носителе, предназначенном только для чтения).



Поделиться:


Последнее изменение этой страницы: 2017-02-21; просмотров: 594; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.234.165.107 (0.003 с.)