В последнее время появляются новые
модели управления доступом, например,
модель "песочницы" в Java-технологии.
К сожалению, и она не учитывает
семантику программ, что, на наш взгляд,
является основной причиной выявляемых
слабостей в системе безопасности.
Активно развиваемое ролевое управление
доступом решает не столько проблемы
безопасности, сколько улучшает управляемость
систем (что, конечно, очень важно). Суть
его в том, что между пользователями
и их привилегиями помещаются промежуточные
сущности — роли. Для каждого
пользователя одновременно могут быть
активными несколько ролей, каждая
из которых дает ему определенные
права.
Мы уже отмечали, что сложность
информационной системы характеризуется,
прежде всего, числом имеющихся в
ней связей. Поскольку ролей много
меньше, чем пользователей и привилегий,
их (ролей) использование способствует
понижению сложности и, следовательно,
улучшению управляемости. Кроме
того, на основании ролевой модели
можно реализовать такие важные
принципы, как разделение обязанностей
(невозможность в одиночку скомпрометировать
критически важный процесс). Между ролями
могут быть определены статические
или динамические отношения несовместимости
(невозможности одному субъекту по
очереди или одновременно активизировать
обе роли), что и обеспечивает
требуемую защиту.
Для некоторых употребительных
сервисов, таких как Web, ролевое управление
доступом может быть реализовано
относительно просто (в Web-случае —
на основе cgi-процедур). Правда, следует
позаботиться о средствах администрирования,
но, разумеется, существуют и они. Так
что в данном случае слово за системными
администраторами.
Протоколирование/аудит
Протоколирование/аудит традиционно
являлись последним рубежом обороны,
обеспечивающим анализ последствий
нарушения информационной безопасности
и выявление злоумышленников. Такой
аудит можно назвать пассивным.
Довольно очевидным обобщением
пассивного аудита для сетевой среды
является совместный анализ регистрационных
журналов отдельных компонентов
на предмет выявления противоречий,
что важно в случаях, когда
злоумышленнику удалось отключить
протоколирование или модифицировать
журналы.
В современный арсенал защитных
средств несколько лет назад
вошел активный аудит, направленный
на выявление подозрительных действий
в реальном масштабе времени. Активный
аудит включает два вида действий:
- выявление нетипичного поведения (пользователей, программ или аппаратуры);
- выявление начала злоумышленной активности.
Нетипичное поведение выявляется
статистическими методами, путем
сопоставления с предварительно
полученными образцами. Начало злоумышленной
активности обнаруживается по совпадению
с сигнатурами известных атак.
За обнаружением следует заранее
запрограммированная реакция (как
минимум — информирование системного
администратора, как максимум —
контратака на систему предполагаемого
злоумышленника).
Важным элементом современной
трактовки протоколирования/аудита
является протокол автоматизированного
обмена информацией о нарушениях
безопасности между корпоративными
системами, подключенными к одной
внешней сети. Работа над этим протоколом
ведется под эгидой IETF. В наше время системы
не могут считаться изолированными, они
не должны жить по закону "каждый за
себя"; угрозам следует противостоять
сообща.
Экранирование
Экранирование как сервис безопасности
выполняет следующие функции:
- разграничение межсетевого доступа путем фильтрации передаваемых данных;
- преобразование передаваемых данных.
Современные межсетевые экраны фильтруют
данные на основе заранее заданной
базы правил, что позволяет, по сравнению
с традиционными операционными
системами, реализовывать гораздо
более гибкую политику безопасности.
При комплексной фильтрации, охватывающей
сетевой, транспортный и прикладной
уровни, в правилах могут фигурировать
сетевые адреса, количество переданных
данных, операции прикладного уровня,
параметры окружения (например, время)
и т.п.
Преобразование передаваемых данных
может затрагивать как служебные
поля пакетов, так и прикладные данные.
В первом случае обычно имеется в
виду трансляция адресов, помогающая скрыть
топологию защищаемой системы. Это
— уникальное свойство сервиса экранирования,
позволяющее скрывать существование
некоторых объектов доступа. Преобразование
данных может состоять, например, в
их шифровании.
В процессе фильтрации (точнее, параллельно
с ней) может выполняться дополнительный
контроль (например, антивирусный). Возможны
и дополнительные преобразования, наиболее
актуальным из которых является исправление
заголовков или иной служебной информации,
ставшей некорректной после наступления
2000 года. Отметим, впрочем, что протоколы
TCP/IP практически свободны от Проблемы
2000.
Применение межсетевого экранирования
поставщиками Интернет-услуг в соответствии
с рекомендациями позволило бы существенно снизить шансы
злоумышленников и облегчить их прослеживание.
Данная мера еще раз показывает, как важно
рассматривать каждую информационную
систему как часть глобальной инфраструктуры
и принимать на себя долю ответственности
за общую информационную безопасность.
Туннелирование
На наш взгляд, туннелирование,
как и экранирование, следует
рассматривать как самостоятельный
сервис безопасности. Его суть состоит
в том, чтобы "упаковать" передаваемую
порцию данных, вместе со служебными полями,
в новый "конверт". Данный сервис
может применяться для нескольких
целей:
- осуществление перехода между сетями с разными протоколами (например, IPv4 и IPv6);
- обеспечение конфиденциальности и целостности всей передаваемой порции, включая служебные поля.
Туннелирование может применяться
как на сетевом, так и прикладном
уровнях. Например, стандартизовано
туннелирование для IP и двойное конвертование
для почты X.400.
Комбинация туннелирования и шифрования
(с необходимой криптографической
инфраструктурой) на выделенных шлюзах
позволяет реализовать такое
важное в современных условиях защитное
средство, как виртуальные частные
сети. Такие сети, наложенные обычно поверх
Интернет, существенно дешевле и гораздо
безопаснее, чем действительно собственные
сети организации, построенные на выделенных
каналах. Коммуникации на всем их протяжении
физически защитить невозможно, поэтому
лучше изначально исходить из предположения
об уязвимости и соответственно обеспечивать
защиту. Современные протоколы, направленные
на поддержку классов обслуживания, помогут
гарантировать для виртуальных частных
сетей заданную пропускную способность,
величину задержек и т.п., ликвидируя тем
самым единственное на сегодняшний день
реальное преимущество сетей собственных.
Шифрование
Шифрование — важнейшее средство
обеспечения конфиденциальности и,
одновременно, самое конфликтное
место информационной безопасности
(практически во всех странах, не только
в России).
Мы, разумеется, не будем вдаваться
в тонкости криптографии. Нам хотелось
бы обратить внимание на то, что у
компьютерной криптографии две стороны
— собственно криптографическая
и интерфейсная, позволяющая сопрягаться
с другими частями информационной
системы. Важно, чтобы были обеспечены
достаточное функциональное богатство
интерфейсов и их стандартизация.
Криптографией, в особенности шифрованием,
должны, разумеется, заниматься профессионалы.
От них требуется разработка защищенных
инвариантных компонентов, которые
можно было бы свободно (по крайней
мере, с технической точки зрения)
встраивать в существующие и перспективные
конфигурации.
Отметим, что у современного шифрования
есть и внутренние проблемы, как
технические, так и нормативные.
Из технических наиболее острой является
проблема производительности. Программная
реализация на универсальных процессорах
не является адекватным средством (здесь
можно провести аналогию с компрессией
видеоизображений). Еще одна техническая
задача — разработка широкого спектра
продуктов, предназначенных для использования
во всех видах компьютерного и сетевого
оборудования — от персональных коммуникаторов
до мощных шлюзов.