Ограничивающий интерфейс также можно рассматривать как разновидность
экранирования. На невидимый объект трудно нападать, особенно спомощью
фиксированного набора средств. В этом смысле Web-интерфейс обладает естественной
защитой, особенно в том случае, когда гипертекстовые документыформируются
динамически. Каждый видит лишь то, что ему положено.
Экранирующая роль Web-сервиса наглядно проявляется и тогда, когда этот сервис
осуществляет посреднические (точнее, интегрирующие)функции при доступе к другим
ресурсам, в частности таблицам базы данных. Здесь не только контролируются
потоки запросов, но и скрывается реальная организациябаз данных.
БЕЗОПАСНОСТЬ ПРОГРАММНОЙ СРЕДЫ
Идея сетей с так называемыми активными агентами, когда между компьютерами
передаются нетолько пассивные, но и активные исполняемые данные (то есть
программы), разумеется, не нова. Первоначально цель состояла в том, чтобы
уменьшить сетевойтрафик, выполняя основную часть обработки там, где
располагаются данные (приближение программ к данным). На практике это означало
перемещение программна серверы. Классический пример реализации подобного подхода
- это хранимые процедуры в реляционных СУБД.
Для Web-серверов аналогом хранимых процедур являются программы, обслуживающие
общий шлюзовый интерфейс (Common Gateway Interface -CGI).
CGI-процедуры располагаются на серверах и обычно используются для
динамического порожденияHTML-документов. Политика безопасности организации и
процедурные меры должны определять, кто имеет право помещать на сервер
CGI-процедуры. Жесткий контрольздесь необходим, поскольку выполнение сервером
некорректной программы может привести к сколь угодно тяжелым последствиям.
Разумная мера техническогохарактера состоит в минимизации привилегий
пользователя, от имени которого выполняется Web-сервер.
В технологии Intranet, если заботиться о качестве и выразительной силе
пользовательскогоинтерфейса, возникает нужда в перемещении программ с
Web-серверов на клиентские компьютеры - для создания анимации, выполнения
семантического контроля привводе данных и т.д. Вообще, активные агенты -
неотъемлемая часть технологии Intranet.
В каком бы направлении ни перемещались программы по сети, эти действия
представляютповышенную опасность, т.к. программа, полученная из ненадежного
источника, может содержать непреднамеренно внесенные ошибки или целенаправленно
созданныйзловредный код. Такая программа потенциально угрожает всем основным
аспектам информационной безопасности:
• доступности (программа может поглотить все наличные ресурсы);
• целостности (программа может удалить или повредить данные);
• конфиденциальности (программа может прочитать данные и передать их по сети).
Проблему ненадежных программ осознавали давно, но, пожалуй, только в рамках
системыпрограммирования Java впервые предложена целостная концепция ее решения.
Java предлагает три оборонительных рубежа:
• надежность языка;
• контроль при получении программ;
• контроль при выполнении программ.
Впрочем, существует еще одно, очень важное средство обеспечения
информационнойбезопасности - беспрецедентная открытость Java-системы. Исходные
тексты Java-компилятора иинтерпретатора доступны для проверки, поэтому велика
вероятность, что ошибки и недочеты первыми будут обнаруживать честные
специалисты, а не злоумышленники.
В концептуальном плане наибольшие трудности представляет контролируемое
выполнение программ, загруженных по сети. Преждевсего, необходимо определить,
какие действия считаются для таких программ допустимыми. Если исходить из того,
что Java - это язык для написанияклиентских частей приложений, одним из основных
требований к которым является мобильность, загруженная программа может
обслуживать только пользовательскийинтерфейс и осуществлять сетевое
взаимодействие с сервером. Программа не может работать с файлами хотя бы потому,
что на Java-терминале их, возможно, не будет. Более содержательные действия
должныпроизводиться на серверной стороне или осуществляться программами,
локальными для клиентской системы.
Интересный подход предлагают специалисты компании Sun Microsystems для
обеспечениябезопасного выполнения командных файлов. Речь идет о среде Safe-Tcl
(Tool Comman Language, инструментальный командный язык). Sun предложила
такназываемую ячеечную модель интерпретации командных файлов. Существует
главный интерпретатор, которомудоступны все возможности языка.
Если в процессе работы приложения необходимо выполнить сомнительный командный
файл, порождается подчиненный командный интерпретатор,обладающий ограниченной
функциональностью (например, из него могут быть удалены средства работы с
файлами и сетевые возможности). В результате потенциальноопасные программы
оказываются заключенными в ячейки, защищающие пользовательские системы от
враждебных действий. Для выполнения действий,которые считаются
привилегированными, подчиненный интерпретатор может обращаться с запросами к
главному. Здесь, очевидно, просматривается аналогия сразделением адресных
пространств операционной системы и пользовательских процессов и использованием
последними системных вызовов. Подобная модель уже около 30 лет
являетсястандартной для многопользовательских ОС.
ЗАЩИТА WEB-СЕРВЕРОВ
Наряду с обеспечением безопасности программной среды (см. предыдущий раздел),
важнейшимбудет вопрос о разграничении доступа к объектам Web-сервиса. Для
решения этого вопроса необходимо уяснить, что является объектом, как
идентифицируютсясубъекты и какая модель управления доступом - принудительная или
произвольная - применяется.
В Web-серверах объектами доступа выступают универсальные локаторы ресурсов
(URL - Uniform(Universal) Resource Locator). За этими локаторами могут стоять
различные сущности - HTML-файлы, CGI-процедуры и т.п.
Как правило, субъекты доступа идентифицируются по IP-адресам и/или именам
компьютеров и областей управления. Кроме того, можетиспользоваться парольная
аутентификация пользователей или более сложные схемы, основанные на
криптографических технологиях.
В большинстве Web-серверов права разграничиваются с точностью до каталогов
(директорий) сприменением произвольного управления доступом. Могут
предоставляться права на чтение HTML-файлов, выполнение CGI-процедур и т.д.
Для раннего выявления попыток нелегального проникновения в Web-сервер важен
регулярныйанализ регистрационной информации.
Разумеется, защита системы, на которой функционирует Web-сервер, должна
следоватьуниверсальным рекомендациям, главной из которых является максимальное
упрощение. Все ненужные сервисы, файлы, устройства должны быть удалены.
Числопользователей, имеющих прямой доступ к серверу, должно быть сведено к
минимуму, а их привилегии - упорядочены в соответствии со служебными
обязанностями.
Еще один общий принцип состоит в том, чтобы минимизировать объем информации о
сервере, которуюмогут получить пользователи. Многие серверы в случае обращения
по имени каталога и отсутствия файла index.HTML в нем, выдают HTML-вариант
оглавлениякаталога. В этом оглавлении могут встретиться имена файлов с исходными
текстами CGI-процедур или с иной конфиденциальной информацией. Такого
рода“дополнительные возможности” целесообразно отключать, поскольку лишнее
знание (злоумышленника) умножает печали (владельца сервера).
АУТЕНТИФИКАЦИЯ В ОТКРЫТЫХ СЕТЯХ
Методы, применяемые в открытых сетях для подтверждения и проверки
подлинностисубъектов, должны быть устойчивы к пассивному и активному
прослушиванию сети. Суть их сводится к следующему.
• Субъект демонстрирует знание секретного ключа, при этом ключ либо вообще не
передаетсяпо сети, либо передается в зашифрованном виде.
• Субъект демонстрирует обладание программным или аппаратным средством генерации
одноразовых паролей или средством, работающим врежиме “запрос-ответ”. Нетрудно
заметить, что перехват и последующее воспроизведение одноразового пароля или
ответа на запрос ничего не даетзлоумышленнику.
• Субъект демонстрирует подлинность своего местоположения, при этом используется
система навигационных спутников.
ВИРТУАЛЬНЫЕ ЧАСТНЫЕ СЕТИ
Одной из важнейших задач является защита потоков корпоративных
данных,передаваемых пооткрытым сетям. Открытые каналы могут быть надежно
защищенылишь одним методом - криптографическим.
Отметим, что так называемые выделенные линии не обладают особыми
преимуществами передлиниями общего пользования в плане информационной
безопасности. Выделенные линии хотя бы частично будут располагаться в
неконтролируемой зоне, где ихмогут повредить или осуществить к ним
несанкционированное подключение. Единственное реальное достоинство - это
гарантированная пропускная способностьвыделенных линий, а вовсе не какая-то
повышенная защищенность. Впрочем, современные оптоволоконные каналы способны
удовлетворить потребности многихабонентов, поэтому и указанное достоинство не
всегда облечено в реальную форму.
Любопытно упомянуть, что в мирное время 95% трафика Министерства обороны США
передаетсячерез сети общего пользования (в частности через Internet). В военное
время эта доля должна составлять“лишь” 70%. Можно предположить, что Пентагон -
не самая бедная организация. Американские военные полагаются на сети общего
пользования потому, чторазвивать собственную инфраструктуру в условиях быстрых
технологических изменений - занятие очень дорогое и бесперспективное,
оправданное даже длякритически важных национальных организаций только в