В. Столлингс - Операционные системы (1114679), страница 150
Текст из файла (страница 150)
Тем не менее поведение правонарушителя подлежит обнаружению " помощью разумного определения класса условий, предполагающих несанкцио нпрованное поведение. Наконец, оказалось, что невозможно выявить тайногс пользователя с помощью одних лишь автоматических методов. Результаты эти~ наблюдений, сделанных в 1980 году, остаются актуальными и сейчас. Часть 7:. Безопасиость Глац 15.
Безогжсноеть р р д Среднее Среднее поведение поведение авторизованного езлои$цнне полиоеетепя Рис. 1Б,6. Профили поведения взломщиков и санкционированных пользователей В ~РОВВ92) перечислены такие подходы к выявлению вторжений. Х. Выявление статистических отклонений. Зтат подход включает в себя сбор в течение некоторого периода времени данных, связанных с поведением законных пользователей.
Затем наблюдаемое поведение проходит обработку статистическими методами, в результате чего с высокой степенью достоверности удается выявить, является ли данный пользователь законным, исходя нз его поведения. е Пороговое обнаружение При этом подходе необходимо задать не зависящие от пользователя пороги частот различных событий. е Профильное обнаружение. Создается профиль поведения каждого пользователя, который служит для выявления изменений в поведении пользователей отдельных учетных записей.
2. Выявление на основе правил. Делается попытка установить набор правил, на основе которых можно было бы принимать решение, является ли данное поведение поведением взломщика, Выявление отклонений. Правила составляются для того, чтобы выявить отклонения от предыдущих характеристик использования системы. Идентификация проникновения. Подход, лежащий в основе экспертных систем, при котором осуществляется поиск подозрительнага поведения Стержнем статистических подходов является попытка определить нормальное, или ожидаемое, поведение, в то время как подходы, основанные на правилах, пытаются задать надлежащее поведение.
Если говорить о перечисленных выше видах взломщиков, го выявление на основе статистических отклонений эффективно в отношении притворщиков, которые, скорее всего, не станут подражать стилю наведения пользователей тех учетных записей, которыми они завладели. С другой стороны, эти методы мог оказаться бессильными против правонарушителей. Для выявления атак тако рода могут быть полезными подходы, основанные на правилах, позволяющих распознавать события н их последовательности, которые при определенных об стаятельствах свидетельствуют о проникновении чужака. На практике может понадобиться использование в системе обоих подходов для эФФективной борьбы против широкого спектра атак Основным инструментом выявления вторжений является запись данных ау лита.
Должна вестись некоторое протоколирование деятельности пользователей которое используется системой для выявления вторжения. Оно выглядит следующим образом, е Записи аудита пользователей системы. Почти все многопользовательские операционные системы содержат в себе программные средства учета вычислительных ресурсов, собирающие инФормацию о деятельности пользавате лей.
Преимущество использования этой информации заключается в отсутст. вии необходимости в наличии дополнительного набора программ. Недаста так же состоит в том, что в записях обычных пользователей может ие содержаться нужная информация или ана может иметь неудобный вид. е Записи аудита, предназначенные для выявления. Можно реализовать набор средств, которые будут генерировать записи аудита, содержащие только ту информацию, которая нужна системе выявления вторжений.
Одним из преимуществ такого подхода является то, что его можно сделать независимым ат производителя и переносимым на самые разные системы. Недостаток состоит в там, что этот подход предполагает дополнительные накладные расходы, связанные с добавлением пакетов учета использования ресурсов. Хорошей демонстрацией предназначенных для выявления записей аудита является разработанный Дороти Деннинг (Юога$ЬУ Юепшпй) ~ВЕИМ871 пример. Каждая запись содержит такие поля. е Субъект.
Инициаторы действий. Субъектом обычно является пользователь терминала, на может быть и процесс„работающий от имени пользователей или групп пользователей. Вся активность возникает как результат выпал. кения команд субъекта. Субъекты могут быть сгруппированы в различные классы доступа, для которых допустимо перекрытие. ° Действие. Операция, которую субъект выполняет с объектом, например ре гистрация, чтение, операции ввода-вывода, запуск программ.
Объект. То, над чем выполняются действия. В качестве примеров можне привести Файлы, программы, сообщения, записи, терминалы, принтеры и структуры, созданные пользователями или программами. В том случае, ко гда действие выполняется над субъектом, таким, как электронная почта, аь рассматривается как объект. Объекты могут быть сгруппированы по типам Степень детализации объектов может зависеть ат их типа и ат окружения Например, аУдит действий, выполняемых в базе данных, может выполнять ся на уровне базы данных как целого или на уровне отдельных записейе Исключительная ситуация. Если в ответ на действие возникла исключи тельная ситуация, то она указывается в этом поле. ЧМавь 7. Бвзопаеаобть Глаза ХЬ.
Безопажасгь Люк — это скрытая точка входа в программу, которая позволяет каждому, о о ней знает, получать доступ к программе в обход обычных процедур, предзначенных для обеспечения безопасности. Многие годы люки использовались ,ограммистами для отладки и тестирования программ. Обычно это происходит где, когда программист разрабатывает приложение, в которое входит процедурегистрации, или которое нужно долго настраивать, вводя при запуске много зличных значений. Разработчик может захотеть предоставить программе, юдназначенной для отладки, особые привилегии или иметь возможность избеть процесса настройки и аутентификации.
Программисту также может понадо~ться иметь в своем распоряжении надежный метод, позволяющий активизироть программу в случае возможных сбоев в работе встроенной в приложение юцедуры регистрации. Люк — это код, распознающий некую особую последо~тельность входных данных или включающийся при запуске с определенным ~ентификатором пользователя, либо в результате маловероятной последова.льности событий. Если люки используются недобросовестными программистами для получеая несанкционированного доступа, они становятся угрозой. Именно ловушка услужила основной идеей уязвимости, изображенной в фильме "Военные игры" Чаг Оатев) (СООР891.
В качестве другого примера можно привести случай, роизошдший при разработке системы Ми1Исв, испытание на проникновение в вторую проводилось группой "1шег беат" (команда тигров) военно-воздушных юл США, изображавшей противника. Один из тактических ходов заключался в >м, чтобы отправить на узел, работающий под управлением МиЫсз, подложную жовленную версию операционной системы. Версия содержала в себе троянского оня (эти программы описаны далее), которого можно было активизировать с омощью люка, и который позволил команде получить доступ к системе. Угроза ыла реализована так хорошо, что разработчики системы Мпй1св не смогли найз ее даже тогда, когда их проинформировали о ее наличии (ЕМЙЕ803.
Очень трудно выявлять люки в операционной системе. Меры безопасности злжны предприниматься в основном на этапах разработки и обновления программ. Логические бомбы Логические бомбы — один из самых ранних видов программ, представляю~их угрозу. Они являются предшественниками вирусов и червей. Логическая эмба — это код, помещенный в какую-то легальную программу и устроенный ак, что при определенных условиях он "взрывается'*.
Условием, использующимся для включения логической бомбы, может быть наличие или отсутствие пределенных Файлов, определенный день недели или дата, а также запуск приожения определенным пользователем. В одном известном случае (ЗРАУ89) лонческая бомба проверяла идентификационный номер сотрудника компании, коорый был автором этой бомбы, а затем включалась, если этот идентификатор не фигурировал в двух последовательных начислениях заработной платы. Вклюившись, бомба могла изменить или удалить данные или целые файлы, стать ричиной остановки машины или причинить какой-нибудь другой вред.
Поразиельным примером применения логической бомбы стал случай, произошедший в иблиотечной системе графства Монтгомери, в Мэриленде (Т1МЕ903. Подрядчик, оторому поручили разработку компьютеризованной абонементной системы, по- местил в нее логическую бомбу. При наступлении определенной даты эта бомба могла вывести систему из строя, если заказчик отказывался платить. К огда библиотека задержала выплату денег из-за того что абонентская система им ела плохое время отклика, подрядчик признался в существовании бомбы и при грозил, что если деньги не будут перечислены, то он даст бомбе сработать. Троянские кони Троянскии конь — это полезная или кажущаяся таковой программ ма или процедура, в которой спрятан код, способный в случае срабатывания выполнить некоторую нежелательную или вредную функцию.
Троянские кони могут использоваться для выполнения тех Функций, кото рые несанкционированный пользователь не мог бы выполнить непосредственно. Например, некий пользователь-злоумышленник хочет получить доступ к файлам другого пользователя. Для этого он может написать программу, которая при запуске изменяла бы права доступа к файлам вызвавшего ее пользователя так, чтобы эти Файлы могли прочитать все другие пользователи. Затем, поместив эту программу в общий каталог и присвоив ей имя, похожее на имя какой-нибудь полезной утилиты, автор программы мог бы добиться того, чтобы интересующий его пользователь запустил ее.
Примером маскирующей программы может быть программа, которая якобы выводит листинг Файлов пользователя в нужном Формате. После того как ничего не подозревающий пользователь запустит программу, ее автор сможет получить доступ к информации, которая находится в фа лах этого пользователя. Примером трудно обнаруживаемого троянского коня ай является компилятор, измененный таким образом, чтобы при компиляции он вставлял в определенные программы (например, программы регистрации в системе) дополнительный код (ТНОМ84).
С помощью такого кода в программе регистрации можно создать люк, позволяющий автору входить в систему с помощью специального пароля. Такого троянского коня нельзя обнаружить в исходном коде программы регистрации. Троянские кони также широко используются для уничтожения данных. Все выглядит так, будто программа выполняет полезную функцию (например, программа-калькулятор), но при этом она может незаметно удалять файлы пользователя. Вирусы Вирус — это программа, которая может "заражать" другие программы, изменяя их; к числу изменений относится копирование программы-вируса в программу, которая затем может заразить другие программы. Биологические вирусы представляют собой крошечные обломки генетического кода (ДНК или РНК), которые могут перенимать структуру живых клеток и хитростью вовлечь их в производство тысяч точных копий первоначального вируса.