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