Привилегированные утилиты, как правило, являются сложными программами и часто обеспечивают выполнение функций, не предусмотренных операционной системой. Они разрабатываются отдельно от операционной системы и могут не поддерживать принятые в ней требования и ограничения безопасности, даже при наличии собственной системы защиты. Это означает, что привилегированные утилиты являются потенциально опасными для защиты вычислительных систем.
Наличие ошибок в реализации систем защиты привилегированных утилит или каналов утечки информации в них может быть использовано злоумышленником.
Прикладное программное обеспечение
Нарушения в функционировании вычислительной систем вызванные неумышленными ошибками в прикладном программном обеспечении, обычно ограничиваются только содержащим эту ошибку процессом, который некорректно функционирует либо саморазрушается. Преднамеренно внесенные программные закладки, вирусы, «троянские кони» и «логические бомбы» находятся именно на уровне прикладного программного обеспечения. Объектами их атак могут стать любые компоненты ИС, вплоть до выведения операционной системы из строя. В этом случае успех атаки зависит от того, насколько защищена конкретная операционная система от разрушительных действий прикладных программ. Многопользовательские многозадачные операционные системы (такие как Unix) сравнительно легко справляются с подобной проблемой, а широко распространенные DOS и Windows в этой ситуации оказываются бессильными.
Таксономия причин возникновения нарушений информационной безопасности представлена на Рис. 3.
Рис. 3.
Причины нарушения безопасности ИС.Все случаи нарушений информационной безопасности происходят по одной из следующих причин:
1. Выбор модели безопасности, несоответствующей назначению или архитектуре вычислительной сети. Модель безопасности должна соответствовать как требованиям, предъявляемым к безопасности вычислительной сети, так и принятой в ней парадигме обработке информации. При выборе модели безопасности необходимо учитывать архитектуру и специфику вычислительной сети, в противном случае, несмотря на все достоинства модели, гарантированного ею уровня безопасности достичь не удастся.
2. Неправильное внедрение модели безопасности. В этом случае модель безопасности выбрана правильно, но ее применение к конкретной реализации операционной системы в силу свойств модели или самой операционной системы было проведено неудачно. Это означает, что при реализации были потеряны все теоретические достижения, полученные при формальном доказательстве безопасности модели. Неправильное внедрение модели безопасности в систему выражается в недостаточном ограничении доступа к наиболее важным для безопасности операционной системы и системным службам и объектам, а также введении различных исключений из предусмотренных моделью правил разграничения доступа типа привилегированных процессов, утилит и т. д.
3. Отсутствие идентификации и/или аутентификации субъектов и объектов. Во многих современных операционных системах (Unix, Novell Netware, Windows) идентификация и аутентификация субъектов и объектов взаимодействия находятся на весьма примитивном уровне – субъект взаимодействия может сравнительно легко выдать себя за другого субъекта и воспользоваться его полномочиями доступа к информации. Кроме того, можно внедрить в систему «ложный» объект, который будет при взаимодействии выдавать себя за другой объект. Часто идентификация и аутентификация носят непоследовательный характер и не распространяются на все уровни взаимодействия – в операционной системе Novell Netware предусмотрена аутентификация пользователя, но отсутствует аутентификация рабочей станции и сервера. В стандартной версии операционной системе Unix аутентификация пользователей находится на примитивном уровне – программы подбора пароля легко справляются со своей задачей при наличии у злоумышленника идентификатора пользователя и зашифрованного пароля. Ряд служб операционной системы Unix вообще не предусматривает аутентификации.