Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
У. Столлингс ГЛАВА 15 Безопасность.doc
Скачиваний:
66
Добавлен:
11.05.2015
Размер:
795.14 Кб
Скачать

Логические бомбы

Логические бомбы — один из самых ранних видов программ, представляю­щих угрозу. Они являются предшественниками вирусов и червей. Логическая бомба — это код, помещенный в какую-то легальную программу и устроенный так, что при определенных условиях он "взрывается". Условием, использую­щимся для включения логической бомбы, может быть наличие или отсутствие определенных файлов, определенный день недели или дата, а также запуск при­ложения определенным пользователем. В одном известном случае [SPAF89] ло­гическая бомба проверяла идентификационный номер сотрудника компании, ко­торый был автором этой бомбы, а затем включалась, если этот идентификатор не фигурировал в двух последовательных начислениях заработной платы. Вклю­чившись, бомба могла изменить или удалить данные или целые файлы, стать причиной остановки машины или причинить какой-нибудь другой вред. Порази­тельным примером применения логической бомбы стал случай, произошедший в библиотечной системе графства Монтгомери, в Мэриленде [TIME90]. Подрядчик, которому поручили разработку компьютеризованной абонементной системы, поместил в нее логическую бомбу. При наступлении определенной даты эта бомба могла вывести систему из строя, если заказчик отказывался платить. Когда биб­лиотека задержала выплату денег из-за того что абонентская система имела пло­хое время отклика, подрядчик признался в существовании бомбы и пригрозил, что если деньги не будут перечислены, то он даст бомбе сработать.

Троянские кони

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

Троянские кони могут использоваться для выполнения тех функций, кото­рые несанкционированный пользователь не мог бы выполнить непосредственно. Например, некий пользователь-злоумышленник хочет получить доступ к файлам другого пользователя. Для этого он может написать программу, которая при за­пуске изменяла бы права доступа к файлам вызвавшего ее пользователя так, чтобы эти файлы могли прочитать все другие пользователи. Затем, поместив эту программу в общий каталог и присвоив ей имя, похожее на имя какой-нибудь полезной утилиты, автор программы мог бы добиться того, чтобы интересующий его пользователь запустил ее. Примером маскирующей программы может быть программа, которая якобы выводит листинг файлов пользователя в нужном формате. После того как ничего не подозревающий пользователь запустит про­грамму, ее автор сможет получить доступ к информации, которая находится в файлах этого пользователя. Примером трудно обнаруживаемого троянского коня является компилятор, измененный таким образом, чтобы при компиляции он вставлял в определенные программы (например, программы регистрации в сис­теме) дополнительный код [ТНОМ84]. С помощью такого кода в программе реги­страции можно создать люк, позволяющий автору входить в систему с помощью специального пароля. Такого троянского коня нельзя обнаружить в исходном коде программы регистрации.

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

Вирусы

Вирус — это программа, которая может "заражать" другие программы, из­меняя их; к числу изменений относится копирование программы-вируса в про­грамму, которая затем может заразить другие программы.

Биологические вирусы представляют собой крошечные обломки генетиче­ского кода (ДНК или РНК), которые могут перенимать структуру живых клеток и хитростью вовлечь их в производство тысяч точных копий первоначального вируса. Подобно своему биологическому прототипу компьютерный вирус содер­жит в своем коде рецепт того, как точно копировать самого себя. Попав в ком­пьютер, типичный вирус временно берет на себя управление операционной сис­темой компьютера. Затем при любом контакте зараженного компьютера с неза­раженным фрагментом программного обеспечения в новую программу внедряется новоиспеченная копия вируса. Таким образом, ничего не подозре­вающие пользователи могут передавать заражение от одного компьютера друго­му в процессе переписывания программ с одного диска на другой или их пересылки по сети. Сетевая среда, предоставляющая возможность получать доступ к приложениям и системным сервисам, которые находятся на других компьюте­рах, создает идеальные условия для распространения вирусов. Далее в этом разделе вирусы изучаются подробнее.

Черви

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

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

  • Электронная почта. Червь рассылает свою копию другим системам по элек­ тронной почте,

  • Возможности удаленного запуска программ. Червь запускает свою копию на другой системе.

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

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

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

  1. Поиск других систем для заражения путем проверки списков узлов или других хранилищ адресов удаленных систем.

  2. Установление связи с удаленной системой.

  3. Копирование самого себя в удаленную систему и запуск новой копии.

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

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

Зомби

Зомби — это программа, которая скрытно соединяется с другим подклю­ченным в Internet компьютером, а затем использует этот компьютер для запуска атак, что усложняет отслеживание пути к создателю программы-зомби. Зомби используются при атаках с отказом в обслуживании, которые обычно направле­ны против выбранных в качестве мишени Web-узлов. Зомби распространяются на сотни компьютеров, принадлежащих ничего не подозревающим третьим лицам, а затем используются для поражения выбранного в качестве мишени Web-узла при помощи огромного увеличения сетевого трафика.