Text
                    УЧЕБНИК
ДЛЯ ВЫСШИХ УЧЕБНЫХ ЗАВЕДЕНИЙ
Информационная безопасность открытых систем Том 1 Угрозы, уязвимости, атаки и подходы к защите
|||гаипи1шш
С. В. Запечников, П.Т.№всш
X. И. Толстой, 10. Yuan
C. I. Заюншни, fl. f. Ммлкяавиав
I И. Tirana, ||. I. №ш
Информационная безопасность открытых систем
Том1
Угрозы, уязвимости, атаки и подходы к защите
Допущено Министерством образования и науки РФ в качестве учебника для студентов высших учебных заведений, обучающихся по специальности 075500 (090105) -«Комплексное обеспечение информационной безопасности автоматизированных систем»
Инга 1ЦНМШ1-1ШШ аи
УДК 004.732.056(075.8)
ББК 32.973.2-018.2я73
И74
Рецензенты: кафедра «Защита информации» Московского инженерно-физического института, зав. кафедрой канд. техн, наук, профессор А. А. Мтюк', доктор техн, наук, доцент С. Н. Смирнов, доктор военных наук, профессор В. П. Лось, доктор техн, наук, профессор А. Д. Иванников', доктор техн, наук, профессор П. Д. Зегжда, канд. техн. наук, доцент В. Г. Проскурин, канд. физ.-мат. наук, доцент А. В. Черемушкин. канд. техн, наук А. Б. Лось
И74 Информационная безопасность открытых систем: Учебник для вузов. В 2-х томах. Том 1 - Угрозы, уязвимости, атаки и подходы к защите / С. В. Запечников, Н. Г. Милославская, А. И. Толстой, Д. В. Ушаков. - М.: Горячая линия-Телеком, 2006. - 536 с.: ил.
ISBN 5-93517-291-1.
В учебнике рассматриваются основы информационной безопасности открытых систем на примере интранет. Вводятся основные определения и понятия. Описываются современные угрозы, уязвимости базовых составляющих интранет и удаленные сетевые атаки на них. Подробно рассматриваются концептуальные подходы к обеспечению информационной безопасности в открытых системах и вопросы разработки политики безопасности. Анализируются этапы создания комплексной системы обеспечения информационной безопасности для интранет и сервисы безопасности.
Для студентов высших учебных заведений и слушателей курсов повышения квалификации, обучающихся по специальности «Комплексное обеспечение информационной безопасности автоматизированных систем».
ББК 32.973.2-018.2я73
лр»с жздательства в Интернет www.techbook.ru
Учебное издание
Запечников Сергей Владимирович, Милославская Наталья Георгиевна, Толстой Александр Иванович, Ушаков Дмитрий Вячеславович
ИНФОРМАЦИОННАЯ БЕЗОПАСНОСТЬ ОТКРЫТЫХ СИСТЕМ
Учебник
Редактор И. В. Петров
Компьютерная верстка Н. В. Дмитриева
Корректор В. С. Кустов
Обложка художника В. Г. Ситникова
ДР № 071825 от 16 марта 1999 г.
Подписано в печать 25.12.05. Формат 70*100/16.
Усл. печ. л. 44,75. Тираж 2000 экз. Изд. № 6291
Отпечатано с готовых диапозитивов в ООО ПФ «Полиграфист».
160001, г. Вологда, ул. Челюскинцев, 3.	Заказ 2368.
ISBN 5-93517-291-1 (Т.1)	© С. В. Запечников, Н. Г. Милославская,
ISBN 5-93517-319-0	А. И. Толстой, Д. В.Ушаков, 2006
© Оформление издательства «Горячая линия-Телеком», 2006
ПРЕДИСЛОВИЕ
Основой для написания учебника послужили многолетний опыт преподавания технологий защиты в открытых сетях и ранее изданные учебные пособия лично авторов и их коллег, подробные описания, сделанные разработчиками данных технологий и средств защиты, а также многочисленные отечественные и зарубежные публикации по рассматриваемой тематике.
В настоящее время специалистов-профессионалов по различным аспектам защиты информации готовит ряд вузов России. Обучение происходит на специализированных факультетах, ознакомительных курсах или на курсах повышения квалификации. Но все эти учебные заведения испытывают острую нехватку узкопрофильной учебно-методической литературы, что в первую очередь сказывается на качестве обучения. Данный учебник предлагается в качестве базового для обучающихся (студентов, аспирантов и повышающих квалификацию специалистов) по группе специальностей "Информационная безопасность" (ИБ). Объектом профессиональной деятельности таких обучающихся являются открытые информационные системы (ИС) и методы и средства обеспечения их ИБ.
Основная задача, которую призван решить данный учебник, - это представить обучающимся систематизированный подход к проблеме обеспечения ИБ в открытых ИС на примере интранета, ознакомить их с характерными признаками сетевых атак и развитием сценариев нападений, показать главные причины и угрозы ИБ базовых составляющих интранета, изложить основные концептуальные подходы к правильной организации их защиты, а также научить квалифицированно выбирать, применять и самостоятельно разрабатывать реализующие эти подходы средства защиты. Поскольку число атак на интранет неуклонно растет, а создать полностью защищенную информационную среду очень сложно, нужны специализированные средства, предназначенные для осуществления постоянного предотвращения любых несанкционированных действий из внешнего и внутреннего мира, контроля за использованием этой среды и воплощения в жизнь принятой организацией политики защиты ее информационных и сетевых ресурсов. Специалист в области ИБ должен владеть глубокими теоретическими знаниями и практическими навыками во всех этих перечисленных и других не менее важных областях. На сегодняшний день учебной литературы по данным вопросам, к сожалению, пока крайне мало. Также не известны авторам и работы, дающие рекомендации по созданию учебно-лабораторной базы для широкого изучения проблем обеспечения ИБ в сетях.
Важно подчеркнуть, что для приступающих к ознакомлению с учебником есть определенные требования по предварительной подготовке. Например, следует знать протоколы Интернета; сервисы Интернета; основные принципы ИБ; технологии и средства их реализации; сетевые операционные системы; базы данных; компьютерные вирусы; языки программирования.
Учебник состоит из двух частей. В первой части представлено введение, пять глав и пять приложений к ним, а также список литературы.
Во введении обоснована актуальность темы учебника.
В гл. 1 рассматриваются основные элементы технологии открытых ИС, для чего вводятся основные понятия и определения, описывается концепция открытых систем н определяется роль стандартов в технологии открытых систем, а также приводятся основные группы стандартов и организации по стандартизации. Далее обсуждается совместимость открытых систем, которая проявляется в свойствах переносимости и способности к взаимодействию. Представляются базовая модель ИС и ее расширение
4
Информационная безопасность открытых систем
для взаимодействующих систем. Описывается системный подход к описанию функциональности на базе модельного представления ИС. Для свойств переносимости и способности к взаимодействию отдельно рассматриваются способы ее реализации и классификация сервисов платформы приложений по критериям переносимости. Также приводятся основные модели открытых систем: модель OSI и модель POSIX.
В гл. 2 интранет характеризуется как открытая система. Вводится понятие интранета, кратко указываются технологии создания интранета, рассматривается ее архитектура и описываются этапы создания. Более детально анализируются сетевая инфраструктура, информационное наполнение, приложения, система публикации, управление, функционирование, безопасность и персонал, сопровождающий работу интранета. После этого приводится эталонная модель интранета, состоящая из базовых механизмов и сервисов, системы управления и информационного наполнения. Обсуждаются вопросы стандартизации для интранета. Выделяются четыре вида интранета, дается определение экстранета и отдельно более детально рассматривается такой вид интранета, как порталы: приводится их классификация, логическая структура, компоненты, схема и сервисы. В конце главы особо отмечается специфика защиты ресурсов интранета.
Гл. 3 вводит понятийный аппарат, используемый при дальнейшем изложении, а именно определяются понятия угроз, уязвимостей, риска и атаки. Рассматриваются виды вторжений в открытые системы и типы нарушителей, совершающих их. Определяются виды организаций, сети которых наиболее уязвимы для атак злоумышленников. Подробно анализируются способствующие атакам причины, которые можно разделить на пять классов: уязвимость архитектуры клиент-сервер, слабости в системных утилитах, командах и сетевых сервисах, слабости в современных технологиях программирования; ошибки программного обеспечения (ПО) и распространяющиеся по открытым сетям сетевые вирусы. Отдельно описываются уязвимости рабочих станций и различных серверов (веб- и почтовых серверов, серверов систем управления базами данных, серверов систем электронного документооборота и т. п.), а также каналообразующего оборудования.
В гл. 4 подробно изучаются удаленные атаки на интранет, для чего определяются типовые атаки, такие, как анализ сетевого трафика, подмена доверенного объекта или субъекта, создание ложного объекта, атаки типа "отказ в обслуживании" и получение удаленного контроля над станцией в сети. Описываются некоторые типичные сценарии и этапы реализации атак и их уровни. После этого рассматриваются классические и современные методы взлома, используемые нападающими для проникновения в открытые системы. В качестве основных иллюстраций современных методов приведены перехват данных, мониторинг в графических интерфейсах, подмена системных утилит. Особое место занимают атаки с использованием сетевых протоколов -атаки на основе протокола 1СМР, SYN-бомбардировка, спуффинг, ложный ARP-сервер и перехват сеансов (hijacking).
Четырехуровневая модель ИС, на примере которой показывается, какие вопросы обеспечения ИБ решаются и на каком уровне, приводится в гл. 5. Показывается специфика защиты ресурсов открытых систем на примере интранета. Большое внимание уделено политике информационной безопасности для интранета - вводится определение, обосновывается необходимость ее выработки, приводятся основные требования к ней, кратко описывается ее жизненный цикл п содержание. Рассматриваются этапы создания и управления интегрированной системой обеспечения ИБ открытых систем. Приводятся принципы создания защищенных средств связи объектов в открытых системах и виды их сетевых топологий. Анализируются архитектуры1 безо
Предисловие
5
пасности открытых систем и предоставляемые в них сервисы безопасности. Кратко освещаются организационно-правовые методы защиты открытых систем и даются некоторые рекомендации по обеспечению ИБ в интранете.
В приложениях приводится информация справочного характера: средства построения интранета и порталов, перечень стандартов по защите информации в открытых системах, примеры типовых политик безопасности для интранета, современные зарубежные средства обеспечения ИБ в сетях.
После изучения данного учебника обучающиеся будут владеть основами проектирования, администрирования и обеспечения ИБ в открытых системах на примере интранета, а именно:
	знать основы организации и функционирования открытых систем, их стандарты, протоколы и предоставляемые сервисы;
	иметь представление об основных тенденциях и закономерностях развития открытых систем и средств их реализации;
	уметь определять и устранять основные угрозы ИБ для открытых систем;
	уметь строить модель нарушителя ИБ для открытых систем;
	уметь выявлять и устранять уязвимости в основных компонентах открытых систем;
	знать об основных методах и средствах реализации удаленных сетевых атак на открытые системы;
	уметь обнаруживать, прерывать и предотвращать удаленные сетевые атаки по их характерным признакам;
	знать организационно-правовые и нормативные основы защиты информации в открытых системах;
	уметь разрабатывать политику ИБ для открытых систем;
	знать основы построения комплексной системы защиты для ресурсов открытых систем;
	уметь проектировать и реализовывать комплексную систему обеспечения ИБ открытых систем;
	иметь представление об основных тенденциях и закономерностях развития средств и методов защиты информации в открытых системах;
	уметь тестировать и на основе результатов тестирования делать обоснованный выбор средств защиты для открытых систем;
	уметь осуществлять мониторинг сетевой безопасности, администрировать открытые системы.
Последующие главы, публикуемые во второй части учебника, посвящены подробному рассмотрению таких конкретных средств обеспечения ИБ в открытых системах, как системы аутентификации, межсетевые экраны, криптографические средства защиты, виртуальные частные и локальные сети, средства анализа защищенности, системы обнаружения вторжений и т. п.
Авторы признательны коллегам по факультету информационной безопасности МИФИ, а также всем рецензентам.
Авторы, естественно, не претендуют на исчерпывающее изложение всех названных в работе аспектов проблемы обеспечения ИБ в открытых системах, поэтому с благодарностью внимательно изучат и учтут критические замечания и предложения читателей при дальнейшей работе над учебником.
ВВЕДЕНИЕ
В различных сферах человеческой деятельности сегодня не обойтись без использования вычислительных сетей, представленных самыми различными видами и создающих глобальное информационное пространство, не имеющее границ. В первую очередь это корпоративная сеть организации, где сотрудник работает на постоянной или временной основе, например обрабатывая свою информацию или участвуя в видеоконференции. Нельзя не упомянуть и глобальную сеть Интернет, используемую им как в целях выполнения своих рабочих обязанностей, так и в свободное от работы время - узнать прогнозы погоды или подобрать удобный авиаперелет, купить книгу в магазине, не выходя из дома, посмотреть кино или послушать любимую музыку. Здесь же нужно обозначить и развитие систем, предоставляющих удаленный доступ к разнообразным информационным и сетевым ресурсам или удобные в использовании и недорогие средства связи.
Изначально порядок в таких системах гарантировался профессиональной этикой участников (как это было в Интернете). По мере их распространения не только в среде единомышленников, но и на международных просторах безответственного хулиганства становится все больше. Вместе с возможностями и удобствами сетей обнаружились серьезные проблемы и изъяны, связанные с их функционированием. Если взять Интернет, то эта сеть неизбежно движется в направлении возрастания хаоса: тысячи содержащих спэм-сообщений, миллионы вирусов, "червей" и "троянцев", ежесекундные атаки нарушителей "сетевого спокойствия". Средства массовой информации продолжают драматизировать и без того сложную обстановку, не переставая сообщать об устойчивом росте их числа. И во всем этом хаосе затеряны крупицы полезной, действительно нужной нам информации, для которой, собственно, эта глобальная сеть и создавалась. А найти такую информацию все труднее и труднее. Мало кто мог изначально предположить, что через Интернет любого из нас могут атаковать, похитить конфиденциальные данные или обокрасть. По словам специалистов Anti-Phishing Working Group (APWG), каждый день в среднем фиксируется пять-шесть кибератак, направленных на получение информации. И теперь мы отдаем себе отчет в том, что компьютерные преступления могут приобрести еще более изощренные формы. Если не предпринимать необходимых действий, то связанные различными технологиями сети умрут сами собой или опять превратятся в отдельные структуры - от них откажутся как бизнес, так и домашние пользователи.
Международная аналитическая компания Gartner Group (мировой лидер в области аналитики информационных технологий (ИТ) и телекоммуникаций) с вероятностью в 60 % прогнозировала, что вследствие неадекватности законов о киберпреступлениях и больших возможностей их совершения в период с 2002-го по 2004 г. рост киберпреступлений составит от 1 000 до 10 000 %.
В 2002 г. в мире было зафиксировано более 80 000 случаев нарушений систем защиты компьютерных сетей (атаки хакеров, попытки краж информации и т. д.) [http://www.washprofile.org]. Их число резко увеличилось по сравнению с 2001 г., когда было зафиксировано примерно 58 000 таких нарушений (в то время как в 2000 г. их было чуть более 20 000). Во второй половине 2002 г. число хакерских атак увеличилось на 32 % по сравнению с аналогичным периодом 2001 г. Однако информация о многих атаках не попадает в статистику. По другим данным (компании Symantec),
Введение
7
во второй половине 2002 г. впервые за историю Интернета общее число компьютерных атак несколько уменьшилось. Их зафиксировано на 6 % меньше, чем в первые шесть месяцев 2002 г.
В то же время финансовые компании столкнулись не только с ростом числа атак, но и с увеличением их опасности. Чаще всего мишенями злоумышленников становятся компьютерные сети на территории США - в 2002 г. было зафиксировано почти 27 000 компьютерных атак. Британские компьютерные сети подвергались атакам менее 5 000 раз, германские - около 4 600 раз.
По статистике американского Института компьютерной безопасности (Computer Security Institute), в 2002 г. около 90 % компаний США подверглись компьютерным атакам и примерно 80 % из них понесли ущерб в результате этих действий. Злоумышленники имели различные цели - от безобидных до крайне опасных, с большим материальным ущербом.
Проведенный в ходе совместного исследования Института компьютерной безопасности и ФБР (США) опрос небольшой выборки респондентов показал, что атака изнутри крупной компании приносит убытки в среднем на сумму 2,7 млн. долл., а средняя атака извне обходится в 57 тыс. долл. Это служит еще одним подтверждением того, что обеспечение безопасности в большой степени связано с человеческим фактором. Огромную важность имеют добросовестная кадровая политика и правильное распределение обязанностей во избежание ситуаций, когда все зависит от одного человека.
В то же время не следует забывать и о внешних угрозах, которые могут оказаться весьма существенными. По оценкам исследовательской фирмы Computer Economics Inc., хакерские атаки, компьютерные вирусы и прочие технические вмешательства привели в 2003 г. к убыткам в сумме 11,1 млрд, долл., что по сравнению с 1995 г. в 20 раз больше.
По заявлениям западных экспертов количество хакерских атак против России значительно выросло в 2002 г., что поставило нашу страну на десятую строчку наиболее атакуемых стран в одном из месяцев этого года, хотя до этого наша страна ни разу не появлялась даже в двадцатках наиболее атакуемых стран. Например, в ноябре 2002 г. количество зарегистрированных атак составило около 90 случаев. (Для сравнения характерное количество ежемесячных компьютерных атак для России редко превышает 30 случаев - так, в марте 2003 г. было 28 атак. Согласно статистическим данным в начале лета всегда происходит небольшой рост количества нарушений безопасности, который, вероятно, связан с сезоном отпусков и, как следствие, снижением внимания, уделяемого ИБ предприятия.) Западные эксперты объясняют это тем, что традиционно Россия является одной из наиболее защищенных в компьютерном плане стран и располагает огромным потенциалом для осуществления контратак вследствие существования в стране специалистов по обеспечению безопасности, с одной стороны, а также сильных хакерских группировок, с другой стороны. Наряду с этим огромное влияние в компьютерном мире нашей страны имеют различные государственные и военные организации, что также способствует усилению мер по обеспечению ИБ.
Эксперты считают, что многие проблемы возникают из-за пренебрежения элементарными мерами компьютерной безопасности. По подсчетам Symantec, новые программные продукты часто недостаточно защищены от возможных хакерских атак.
8
Информационная безопасность открытых систем
В 2002 г. в новом ПО было обнаружено на 81 % больше "дыр", чем в ПО, выпущенном в 2001 г.
Новые технологии также предоставляют хакерам возможности для атак. К примеру, компания Orthus, предоставляющая услуги компьютерной безопасности, обнаружила серьезные уязвимости в системах беспроводного доступа в Интернете (Wi-Fi). Почти 6 из каждых 10 компаний, использующих эту технологию, абсолютно беззащитны перед хакерами.
Ведущая компания по оказанию профессиональных услуг Ernst & Young в 2003 г. шестой раз подряд проводила исследование [http://www.ey.com/ru/ InfoSecurity Survey], цель которого заключалась в получении общей картины в области ИБ и изучении влияния ИБ на самые различные компании и отрасли экономики. Восемьдесят восемь процентов опрошенных представляли коммерческие организации, остальные - некоммерческие. Были опрошены 1 400 организаций - представителей 26 отраслей. В число респондентов из 66 стран входили руководящие сотрудники разных направлений, однако большинство из них (60 %) занимают должности директоров по ИС, директоров по ИБ и прочих руководителей служб ИТ. Можно отметить большое сходство полученных ответов в различных странах.
Исследование включало в себя 40 вопросов по всем аспектам ИБ. Вопросы были подобраны по темам: каково место службы ИБ в организационной структуре компании, каков порядок управления ею; каков ожидаемый уровень инвестиций в безопасность; насколько затраты в области ИБ соответствуют задачам бизнеса; на что расходуется основное количество средств; каким образом сведения об обязанностях в области безопасности доводятся до сотрудников; насколько респонденты уверены в службах ИБ третьих лиц и партнеров по бизнесу, а также насколько часто совет директоров или другой высший руководящий орган получает сведения или консультации по вопросам или происшествиям, связанным с ИБ.
Девяносто процентов организаций заявили, что вопросы ИБ имеют важное значение для достижения общих целей бизнеса.
Семьдесят восемь процентов организаций назвали минимизацию рисков в качестве ключевого фактора, влияющего на инвестиции в область ИБ.
Свыше 34 % организаций считают, что у них не все обстоит благополучно в плане способности определить, подвергаются ли их системы атаке в данный момент времени.
Свыше 33 % организаций заявили о своей неспособности реагировать на происшествия.
Лишь 34 % организаций отметили полное соблюдение действующих правил обеспечения безопасности.
Пятьдесят шесть процентов организаций указывали недостаток средств в качестве основного препятствия для эффективного обеспечения ИБ. На втором месте - низкая приоритетность вопросов ИБ при распределении ресурсов, что неудивительно, учитывая тяжелую экономическую ситуацию в большинстве стран в период проведения опроса.
Почти 60 % организаций заявили, что они практически никогда не рассчитывают на экономическую эффективность капиталовложений в сферу ИБ.
Двадцать семь процентов опрошенных указали "обработку результатов оценки систем ИБ" в первой тройке наиболее значимых факторов, рассматриваемых в их
Введение
9
компании при принятии решений по внедрению новых систем/программ в области ИБ.
Руководители отделов ИБ испытывают большие сложности при формулировании и обосновании своих запросов совету директоров. Это происходит из-за неспособности представить экономические выкладки или неумения четко разъяснять важность ИБ для бизнеса компании.
Очень немногие организации принимают во внимание широкий спектр факторов (возможности, угрозы и преимущества) при рассмотрении вопросов ИБ. В основном компании практикуют однобокие меры реагирования на уже случившиеся события вместо инициативного и комплексного подхода с учетом возможных рисков.
Компании не требуют от деловых партнеров внедрения достаточных стандартов безопасности, отсутствие которых может подвергнуть риску их собственную безопасность.
Главным фактором, вызывающим обеспокоенность в области ИБ, остается распространение компьютерных вирусов и червей, которое по-прежнему привлекает основное внимание СМИ и общественности. Однако директора по ИС и другие руководители служб ИТ начинают осознавать значение внутренних угроз, например нарушений со стороны штатных сотрудников, работающих с ИС.
Что же необходимо сделать организациям, чтобы исправить сложившуюся ситуацию реального мира, построенную из плохо сконфигурированных систем, дефектов в ПО, недовольных сотрудников и отягощенных заботами системных администраторов?
Во-первых, руководители отделов ИС и ИБ должны научиться четче разъяснять, насколько важна ИБ для бизнеса компании. Вопросы ИБ более не являются областью компетенции лишь компьютерных экспертов, к их решению необходимо привлекать высшее руководство компаний. Для эффективного обеспечения ИБ организациям необходимо увязать свои потребности в этой области с задачами бизнеса, проводить оценку экономической эффективности вложений в ИБ и стремиться внедрять комплексные решения в этой области.
Во-вторых, организациям необходимо подкрепить свои высказывания о важности защиты информационных активов путем инвестиций в область ИБ. Нередко такие действия проводятся по факту нарушения безопасности, либо в результате наблюдения за атакой на конкурента, либо в связи с предписаниями регулирующих органов. В долгосрочной перспективе точно и заранее спланированные инвестиции оказываются более экономичными, чем капиталовложения постфактум, которые нередко связаны с избыточными затратами при реагировании на происшествие.
В-третьих, многие руководящие сотрудники до сих пор беспокоятся не о тех вопросах - вроде вирусных атак и хакеров. Им стоит уделять больше внимания менее очевидным и не столь широко освещаемым угрозам, исходящим, например, со стороны недовольных сотрудников или бывших работников, сетевых подключений к деловым партнерам, надежность систем которых не подтверждена, хищений портативных и карманных компьютеров, а также незащищенных точек удаленного беспроводного доступа, создаваемых сотрудниками. Именно эти моменты могут не только привести к серьезным убыткам, но и нанести ущерб имени и репутации компании.
И наконец, Ernst & Young указывает и на недостаток внимания, уделяемого обучению специалистов по ИБ. Лишь 29 % организаций указали повышение информи
10	Информационная безопасность открытых систем
рованности и обучение сотрудников в качестве приоритетного направления инвестиций в сферу ИБ, по сравнению с 83 %, которые ставят на первое место в этой категории затраты на технологии. Тридцать пять процентов организаций заявили о существовании программ непрерывного обучения и повышения информированности сотрудников.
Подобную статистику подтверждают и аналитические исследования Gartner Group, с 80 %-ной вероятностью предсказавшей, что вплоть до 2003 г. будет существовать по крайней мере 20 %-ный разрыв в мировом масштабе между потребностью в опытных специалистах по защите информации и их наличием на рынке занятости.
Все это доказывает необходимость внимательного изучения всех вопросов, связанных с обеспечением ИБ. Руководство организаций, администраторы ИБ и пользователи должны знать об угрозах для их бизнеса, возможной уязвимости ресурсов, на которых он основывается, а также о технологиях и подходах к обеспечению его ИБ и, конечно же, системах и средствах, реализующих защиту. Все эти вопросы подробно рассматриваются в учебнике.
1. СТАНДАРТИЗАЦИЯ И МОДЕЛЬНОЕ ПРЕДСТАВЛЕНИЕ ОТКРЫТЫХ ИНФОРМАЦИОННЫХ СИСТЕМ
В главе рассматриваются основные элементы технологии открытых информационных систем, для чего вводятся основные понятия и определения, описывается концепция открытых систем и определяется роль стандартов в технологии открытых систем, а также приводятся основные группы стандартов и организации по стандартизации. Далее обсуждается совместимость открытых систем, которая проявляется в свойствах переносимости и способности к взаимодействию. Представляются базовая модель информационной системы и ее расширение для взаимодействующих систем.
Описывается системный подход к описанию функциональности на базе модельного представления информационных систем. Для свойств переносимости и способности к взаимодействию отдельно рассматриваются способы ее реализации и классификация сервисов платформы приложений по критериям переносимости. В заключение приводятся основные модели открытых систем: модель OSI и модель POSIX
Интенсивное развитие современных технологий обработки данных привело к появлению и развитию сложного комплекса научно-технических дисциплин, получившего название "информационные технологии" (ИТ). Создание и функционирование любой технологии компьютерной обработки данных подчиняется совокупности требований потребителя информации, а также техническим требованиям и возможностям. К первой группе относятся требования той предметной области, для которой предназначена технология, требования бизнеса, экономические условия и т. п. Среди технических условий особое значение имеют быстро расширяющиеся возможности компьютерного хранения и обработки информации, коммуникационные возможности, требования различных сфер деловой деятельности, условия разработки и эксплуатации ПО и пр., а также обеспечение совместной обработки данных различными компьютерными системами.
В течение нескольких десятилетий ИТ прошли ряд этапов, характеризующихся сменой концепций, принципов и взглядов на их назначение, функции, методы построения. Современный этап развития ИТ отмечен следующими важными обстоятельствами:
	переходом от централизованной к полностью распределенной модели обработки данных;
	значительным расширением сфер применения ИТ при одновременной универсализации функций, выполняемых вычислительными системами;
	потребностью сохранения существующих технологических решений при развертывании новых систем обработки данных (СОД) и обеспечения совместимости между ними в различных аспектах;
	высокой сложностью не только электронной техники и системного ПО, но и самой логической организации (структуры, отдельных компонентов и взаимосвязей между ними) систем обработки данных и приложений.
Создание и эксплуатация сложных СОД требует определенной научно-методической основы. В качестве такой основы на сегодняшний день выступает система международных стандартов и других координирующих документов, созданных специализированными международными организациями.
12
Информационная безопасность открытых систем
1.1. Основные элементы технологии открытых информационных систем
Методы и модели организации сложных компьютерных систем исторически развивались в русле двух основных течений. Во-первых, ведущие фирмы-производители оборудования, ПО и поставщики решений для систем обработки данных, ощущая неуклонное усложнение компьютерных систем, сами стремились сформулировать стратегические направления развития ИТ и следовать им в своей деятельности. Во-вторых, эта работа осуществлялась в рамках международных органов стандартизации, промышленных групп и консорциумов, различных международных объединений и союзов. Как правило, деятельность международных организаций строилась с учетом и на основании уже накопленного фирмами научного потенциала и созданных ими технологических решений. Документы международных организаций оформляли, обобщали и приводили к общему знаменателю мнения большей части заинтересованных фирм и промышленных групп.
На сегодняшний день основным законодательством в сфере ИТ является именно совокупность документов и стандартов международных организаций. В силу высокой сложности современных ИТ общепринятой мировой практикой является обращение к этим документам и использование их в качестве базы для развития и совершенствования любых новых технологий. Более того, в настоящее время стандарты играют роль не только нормативных или рекомендательных документов, но и в совокупности задают своеобразную философию современных ИТ. Стандарты, являясь результатом коллективной работы большого числа участников процесса стандартизации, предоставляют четкую научно-методическую основу для рассмотрения различных аспектов ИТ.
I.1.1. Основные понятия и определения
Практически любая крупная современная организация (предприятие, учреждение) независимо от профиля своей деятельности в той или иной мере осуществляет обработку информации, необходимой для функционирования этой организации, т. е. нуждается в информационном обеспечении своей деятельности. Под информационным обеспечением (ИО) деятельности предприятия, учреждения или другой организации понимается создание, организация и обеспечение функционирования такой системы сбора, хранения, обработки и выдачи информации, которая предоставляла бы всем подразделениям и должностным лицам организации всю необходимую им информацию в требуемое время, требуемого качества и при соблюдении всех устанавливаемых правил обращения с информацией [1].
В связи со все возрастающим объемом информации, подлежащей обработке, в большинстве случаев ИО деятельности предприятия осуществляется при помощи компьютерной ИС. Под (компьютерной) информационной системой понимается сложная система, включающая всю совокупность аппаратного, системного и прикладного ПО и методов их организации, которая обеспечивает информационную деятельность предприятия. Этот термин используется, когда компьютерная система рассматривается с точки зрения пользователя, потребителя предоставляемых ею услуг и возможностей [2-6].
1. Стандартизация и модельное представление открытых информационных систем
13
Термином система обработки данных (информации) (СОД) чаще всего обозначается сложная система, включающая технические средства преобразования, хранения и передачи информации (аппаратное и системное ПО) и методы их организации, которая обеспечивает поддержку прикладных программ (приложений) пользователей. Под прикладными программами (ПП) понимаются компьютерные программы, предназначенные для выполнения специфических задач пользователей. Термин "СОД", как правило, используется, когда компьютерная система рассматривается изнутри, с точки зрения конструктора, проектировщика, программиста [2-6]. Иными словами, под СОД понимается та техническая основа, на которой строится ИС. Чтобы различать отдельные средства вычислительной техники, входящие в сложную СОД, будем называть их вычислительными системами.
Таким образом, ИС предназначена для решения каких-либо конкретных прикладных задач предприятия или организации, т. е. обеспечивает поддержку информационной деятельности пользователей, а СОД предоставляет ей средства для решения этих задач, т. е. поддерживает приложения.
Часто используется также термин среда (среда ИТ, распределенная вычислительная среда, среда приложения, телекоммуникационная среда и т. п.) - это конкретное воплощение ИС или ее части, например прикладных программ, коммуникационной сети, в отдельно взятой вычислительной системе, на данном конкретном предприятии, в регионе и т. д. со всей совокупностью присущих ей качеств, особенностей, образуемых всеми используемыми методами и средствами обработки данных, и условий, в которых протекает процесс обработки информации [2, 4].
Рассмотрим характеристики типичной ИС достаточно крупной организации. Важнейшими из них являются следующие [5, 7].
Разнородность (гетерогенность). Сложность и специфичность задач, решаемых ИС организации, обширность и сложность структуры системы приводят к наличию в ней большого количества аппаратных и программных средств от различных производителей и поставщиков. Они, вероятно, не предназначены изначально к совместной работе друг с другом. Несовместимость аппаратного и программного обеспечения обусловлена в основном причинами исторического характера. Так, известно, что развитие СОД происходило несколькими самостоятельными путями [5]:
	суперкомпьютеры - многопроцессорные вычислительные комплексы очень высокой производительности, обладающие параллелизмом аппаратной архитектуры и требующие специального ПО, предназначенные, как правило, для решения специальных классов задач с очень интенсивными вычислениями (IBM SP1 и SP2, CRAY, NEC, Fujitsu, Hitachi, "Эльбрус" и др.);
	централизованные технологии (mainframe - мейнфрейм) - многопользовательские многозадачные вычислительные системы высокой производительности с очень развитым набором возможностей по обработке информации (например, системы IBM System 360, 370, S/390);
	Unix-системы - попытка достижения независимости ПП от аппаратного обеспечения (АО) вычислительной платформы;
	RISC-технологии (reduced instructions set computer) - попытка улучшить производительность, достижимую мейнфреймами, на системах более низкого уровня (например, архитектура POWER и основанные на ней системы RS/6000 фирмы IBM, архитектура SPARC фирмы Sun);
14
Информационная безопасность открытых систем
	системы среднего уровня (midrange systems) - попытка оптимизировать структуру системы к требованиям сред приложений среднего уровня, например для бизнеса, промышленных предприятий (архитектура VAX фирмы DEC, архитектура AS/400 фирмы IBM);
	персональные системы - попытка перенести традиционные технологии обработки данных, ориентированные на деловую деятельность, в повседневную практику индивидуальных пользователей (например, архитектуры 80x86, IA-64 фирмы Intel, серии процессоров Motorola 600x0, Compaq Alpha);
	карманные компьютеры и мобильное оборудование - расширение традиционных технологий обработки данных при помощи микропроцессорной техники на класс портативных вычислительных устройств и устройств связи, обладающих сравнительно малой вычислительной мощностью (карманные компьютеры, мобильные телефоны, интеллектуальные карты и др.).
Каждый из этих путей связан в историческом аспекте с теми или иными классами системного ПО. Для каждой из систем создан большой набор ПП. Эволюция систем обработки данных привела к тому, что потребитель может выбирать изделия из большого числа типов процессоров, архитектур, системного ПО.
СОД имеют тенденцию ассоциироваться с определенными конфигурационными решениями, т. е. способами, которыми ПП строят свое взаимодействие с терминалами, рабочими станциями и системными сервисами. Среди таких способов можно выделить, например, непрограммируемые терминалы, среды локальных сетей (Local Area Network, LAN), среды глобальных сетей (Wide Area Network, WAN), одно- или многоуровневые серверные среды, другие взаимосвязанные системы, в том числе среды со связью "точка-точка" [5].
Следует обратить внимание, что эти категории скорее представляют режимы работы ПП, чем определенные физические конфигурации оборудования. Одна и та же аппаратура может, например, функционировать как непрограммируемый терминал для одной ПП и предоставлять среду локальной сети для другой ПП.
Даже если организация обладает однородной средой, она вполне может столкнуться с гетерогенностью при объединении своей ИС с другими организациями при выходе во внешний мир.
Гетерогенность может принимать различные, формы:
	большое разнообразие техники, используемой на рабочих местах пользователей: рабочие станции, терминалы, персональные системы, мобильные пользователи и т. п.;
	различные аппаратные архитектуры и платформы;
	множество операционных систем (ОС);
	множество коммуникационных сетей и протоколов;
	многочисленные версии одного и того же аппаратного и программного обеспечения;
	множество поколений одних и тех же ПП.
Причины гетерогенности в среде ИТ также многообразны. Среди них можно выделить следующие.
	Экономические, финансовые или иные условия деятельности организации диктуют необходимость сохранения инвестиций, уже вложенных в свою ИС.
1. Стандартизация и модельное представление открытых информационных систем
15
	Со снижением стоимости вычислительных систем появилась возможность приобретать новые элементы СОД без учета существующих решений.
	Слияние организаций или поглощение одной организацией другой может привести к появлению в одной организации разнородной среды.
	С изменением нужд организации и развитием новых технологий оказывается, что ни одна фирма-производитель не может удовлетворить всех потребностей организации при сохранении приемлемой стоимости системы.
	В ряде случаев фирмы-производители патентуют, намеренно не разглашают или сильно ограничивают информацию о деталях устройства своего программного и аппаратного обеспечения. Это делает практически однозначным выбор той или иной вычислительной платформы.
	Не существует стандартов, препятствующих объединению разнородных сред в одно целое или делающих невозможным адаптацию систем различных фирм-производителей для совместной работы друг с другом.
Несовместимость. Внутри каждой из разнородных сред технологические решения создавались, основываясь только на архитектуре, структуре и функциональных возможностях этих сред. Перемещение ПП между различными системами и адаптация пользователей к работе на различных системах могут быть затруднены, так как при объединении разнородных сред в создающейся сложной среде модули будут использовать различные аппаратные, программные и коммуникационные компоненты.
Большое количество систем. При общей тенденции непрерывного снижения стоимости, улучшения функциональности и упрощения использования АО количество применяемых вычислительных систем постоянно растет. Иногда это вызывает многократное увеличение количества вычислительных систем в организации. Более того, количество вычислительных систем, участвующих в обработке данных при решении той или иной задачи, может быть вообще не определено или заранее неизвестно, например если ИС построена на основе глобальной сети.
Недостаток глобальной инфраструктуры. Превращение совокупности разнородных сред во взаимосвязанную систему требует создания согласованной, управляемой инфраструктуры для обеспечения эффективной работы всей сложной среды в целом.
Перечисленные качества сложных сред ослабляют полезность, эффективность и работоспособность СОД. Это может выразиться в следующих проблемах:
	в трудности разделения информации между различными системами вследствие различных форматов представления и методов организации данных, различных ОС и ПП, различных протоколов, не позволяющих осуществить соединение между системами;
	трудности разделения ресурсов между различными системами вследствие несовместимости методов подключения устройств, коммуникационных интерфейсов и т. п.;
	неспособности перенести с системы на систему ПП, созданные пользователем, и адаптироваться самому пользователю к работе в различных средах;
	неспособности управлять системой из одной точки, расширять (масштабировать) систему, обнаруживать источники сбоев и неполадок и устранять их;
	высокой стоимости обучения персонала вследствие использования в различных системах разных методов управления системой, пользовательских интерфейсов, процедур инсталляции ПО и других функций;
16
Информационная безопасность открытых систем
	трудности обеспечения общего комплекса мер по защите информации, так как системы обеспечивают различные уровни защищенности и непохожие механизмы для отслеживания целостности системы.
Решение практически всех перечисленных проблем может быть сведено к выполнению следующих двух требований [7]:
1) переносимости (portability) приложений, данных и пользователей между системами;
2) способности к взаимодействию (interoperability) между системами, включая управление системами и использование ресурсов множества систем.
Переносимость позволила бы перемещать прикладные решения, информационные ресурсы, пользователей и персонал на новые системные платформы или между платформами в соответствии с потребностями функционирования ИС. Способность к взаимодействию - безболезненно объединять существующие и новые системы в единую инфраструктуру управления и разделения ресурсов. Выполнение двух обозначенных требований в совокупности обеспечивает совместимость ИС. Такие требования привели к появлению научно-технического направления, получившего название технологии открытых систем.
1.1.2. Концепция открытых систем
Термин "открытые системы" подразумевает сложный, постоянно растущий набор требований к ИС. Эти требования тесно связаны с тенденциями построения распределенных вычислительных сред на гетерогенной основе, что будет подробно рассмотрено далее. Две основные группы требований к открытым системам состоят в следующем:
1) идеальное решение для пользователей открытой системы - технология, которая позволяет любой ПП осуществлять доступ и разделять свои собственные локальные данные и любой тип данных, размещенных на удаленной гетерогенной системе, поддерживая одинаковый уровень производительности;
2) пользователи должны иметь возможность осуществлять свободный выбор наилучших для них решений для всех компонентов открытой системы, которые наиболее полно отвечают их требованиям, без ограничения в существующих аппаратном и программном обеспечении и архитектурах систем.
В идеале открытые системы должны предоставлять открытые решения задач в любой области обработки данных, т. е. обеспечивать возможность потребителю выбирать из множества источников любые доступные средства, наиболее полно удовлетворяющие его запросы и позволяющие ему максимально эффективно решать стоящие перед ним задачи. Так, ОС должны обеспечивать одни и те же интерфейсы к системным сервисам независимо от класса систем (от мейнфреймов до персональных компьютеров) и независимо от архитектуры системы (от единичного процессора CISC-архитектуры до многопроцессорных систем из RISC-процессоров). ПП должны быть способны прозрачно осуществлять доступ к данным, вычислительным мощностям, программам пользователя и другим ресурсам, например принтерам, дисковым массивам и т. п. Обслуживающий персонал и пользователи не должны замечать отличий в интерфейсах, наборе сервисов и инструментах на платформах различных фирм-производителей или эти отличия должны быть минимальными.
1. Стандартизация и модельное представление открытых информационных систем
17
Таким образом, при выполнении перечисленных идеальных условий организации смогут легко конструировать свою СОД (и на основе ее - свою ИС) из стандартных компонентов.
Однако такая задача трудно реализуема на практике. Технологии и стандарты могут перекрывать друг друга по выполняемым функциям. Некоторые стандарты и рекомендации могут быть очень сложными для их полной практической реализации. Новые технологии постоянно совершенствуются, и трудно предсказать, какая из них окажется удачной. Наконец, существующие системы также должны быть приспособлены к архитектуре открытых систем.
Хотя открытые системы не являются решением всех проблем, эта идея хорошо разработана во многих областях, например в телекоммуникации. Она может предоставить основу для использования гетерогенности и других специфических особенностей вычислительных систем для получения максимального эффекта от построенной на их основе ИС. На сегодняшний день открытые системы являются единственным общепризнанным способом решения обозначенных проблем. Вместе с тем концепция открытых систем является динамичной, пока еще не вполне законченной, быстро развивающейся и доступной для всех заинтересованных областью ИТ сторон.
Существует несколько определений понятия открытая система (или среда открытых систем). Наиболее известными и широко принятыми являются следующие четыре определения, данные Международным институтом инженеров по электронике и электротехнике (IEEE), Всемирной независимой организацией по открытым системам Х/Open, Международным консорциумом OSF и Международным телекоммуникационным союзом (ITU).
По определению IEEE [7, 8] средой открытых систем называется "исчерпывающий и консистентный (т. е. последовательный, внутренне согласованный и взаимосвязанный) набор международных стандартов по ИТ и функциональных профилей стандартов, который специфицирует интерфейсы, сервисы и поддерживаемые форматы для достижения способности к взаимодействию и переносимости приложений, данных и пользователей".
По определению Х/Ореп [7] открытые системы - это "среда ПО, сконструированная и реализованная в соответствии со стандартами, которые являются независимыми от поставщиков и общедоступными".
По определению OSF [7] открытой системой называется "среда, имеющая стандартный набор интерфейсов для программирования, коммуникаций, управления системой и пользовательских интерфейсов, использующих способность к взаимодействию, переносимость и сохранение инвестиций".
В определении ITU и Международной организации по стандартизации (ISO) [9] среда взаимодействия открытых систем - это "абстрактное представление набора концепций, элементов, функций, сервисов, протоколов и т. д., определенных в эталонной модели OSI, и производных от них специфических стандартов, которые, будучи применены, позволяют осуществлять связь между открытыми системами".
Несмотря на отсутствие единства в определениях среди различных организаций, можно выделить те свойства открытых систем, которые отражены во всех определениях и, следовательно, являются бесспорными [5, 7]:
	понятие "открытая система" относится преимущественно к ПО;
	основная цель открытых систем состоит в обеспечении:
18
Информационная безопасность открытых систем
•	способности к взаимодействию между гетерогенными системами;
•	переносимости ПП, пользователей и данных между гетерогенными системами;
	понятие "открытая система" может применяться и по отношению к отдельно взятой вычислительной системе, и к СОД в целом, и к построенной на ее основе ИС, если они согласуются с концепцией открытости;
	стандарты играют ключевую роль в открытых системах.
Последнее свойство является особенно важным, так как на него прямо указывают все определения. ИС не может рассматриваться как открытая до тех пор, пока она не реализует функции, которые согласуются со стандартами, имеющими отношение к соответствующей области. Учитывая центральное место стандартов в концепции открытых систем, важно рассмотреть более подробно, что представляют собой стандарты, как и кем они создаются.
1.1.3. РОЛЬ СТАНДАРТОВ В ТЕХНОЛОГИИ ОТКРЫТЫХ СИСТЕМ.
Основные группы стандартов и организации
ПО СТАНДАРТИЗАЦИИ
Согласно определению Международной организации по стандартизации (ISO) стандарты - это документированные соглашения, содержащие технические условия или другие точные критерии, которые обычно используются как правила, принципы или определения характеристик для гарантии того, что материалы, продукты, процессы и услуги соответствуют своему назначению.
Стандарты в области ИТ являются соглашениями о функциональности и интерфейсах, которые поддерживаются продуктом или группой продуктов информационных технологий, обеспечивая таким образом совместимость между системами. Стандарты в широком смысле слова могут сильно различаться по своему статусу, по степени влияния на производителей и поставщиков продуктов и решений: от простого взаимного соглашения между несколькими совместно работающими людьми или организациями до формальных, утвержденных организациями по стандартизации документов с признанным международным статусом.
Рассмотрим основные аспекты и значение стандартизации для ИТ, и в особенности для открытых систем.
Во-первых, стандарты вырабатывают единый, нормированный, согласованный порядок рассмотрения объекта стандартизации: терминологию, нормативные модели, формальное описание процедур обращения с объектом, спецификации, структуру объекта и т. п. Стандартизация позволяет избежать несогласованного, субъективного, неполного или одностороннего взгляда на объект стандартизации.
Стандарты позволяют замаскировать неоднородность объектов стандартизации, предоставляя такую модель, которая помогает избежать различий в представлении, описании и реализации этого объекта. В отсутствие такой модели каждый разработчик был бы вынужден создавать свою собственную модель. Таким образом, стандарт уменьшает потенциальную разнородность объекта стандартизации. Как будет видно далее, многие стандарты являются именно абстрактными моделями различных аспектов обработки данных, например общеизвестная модель ISO OS1.
Стандарты специфицируют общую форму, к которой должны "сходиться" разнородные системы для того, чтобы выполнять совместную работу или обеспечивать основу для переносимости между ними. Если две системы поддерживают стандарт
1. Стандартизация и модельное представление открытых информационных систем
19
в дополнение к их собственным формам, тогда любая пара систем сможет быть совместимой друг с другом. Таким образом, стандарт облегчает управление гетерогенностью. Разработчик ИТ заинтересован в том, чтобы его продукты и системы соответствовали стандартам. Это путь к широкому признанию его продукции и росту числа потребителей. Соответствия стандартам можно достичь двумя способами: либо добиваться принятия своей технологии в качестве стандарта, либо как можно быстрее интегрировать в свои продукты технологию, претендующую быть стандартом. Вследствие того что любая организация по стандартизации проводит широкое и всестороннее обсуждение документов, прежде чем они становятся стандартами, как правило, стандартом становится объективно наилучшее по большинству критериев решение (спецификация, модель и т. д.).
Другой важный аспект стандартизации в том, что любые изменения в стандартах или новые стандарты почти всегда (но не всегда) принимают во внимание созданную ранее базу стандартов в этой области. Организации по стандартизации не заинтересованы в отчуждении уже существующего сообщества пользователей стандартизованной технологии, а в ряде случаев они прямо участвуют в выработке стандартов.
Наконец, важно провести различие между стандартами и реализующими их технологиями. Стандарт описывает абстрактные сущности, определенные только на бумаге: модели, спецификации, описания интерфейсов и протоколов, схемы, форматы данных и т. п. Описанные в нем объекты с определенной функциональностью должны быть затем реализованы с использованием определенной технологии: программно или аппаратно. Разрабатываемые и выпускаемые тем или иным производителем в соответствии со стандартами продукт или система, как правило, имеют значительно больше функций, чем те, которые описаны в стандарте. Стандарт обеспечивает лишь наименьший "общий знаменатель" для продуктов определенного типа.
Различают два типа стандартов: стандарты де-юре и стандарты де-факто. Стандарты де-юре утверждены организациями по стандартизации и имеют юридически оформленный статус официальных документов. Стандарты де-факто могут являться результатом признания большим количеством производителей и потребителей удачного научного или технологического решения или быстро набирающей силу, обладающей большими потенциальными возможностями в будущем технологией. Они не имеют никакого официального статуса и могут быть описаны в произвольной форме. Станет или нет какая-либо технология стандартом де-факто - определяет только рынок.
Стандарты де-факто могут быть в конце концов приняты как стандарты де-юре, и наоборот (по крайней мере теоретически), стандарты де-юре должны в итоге становиться стандартами де-факто, будучи принятыми рынком. Рассмотрим более подробно эти две категории стандартов.
Стандарты де-юре характеризуются следующими особенностями.
	Формальные процедуры тщательного согласования и утверждения этих стандартов приводят к тому, что их разработка занимает весьма длительное время, как правило много лет. Стандарты не успевают за быстрым развитием ИТ и нередко принимаются уже по факту их широкого распространения.
	Стандарты, как правило, являются сложными и могут включать несколько различных подходов к решению одной задачи, поэтому они предоставляют произво
20
Информационная безопасность открытых систем
дителям и потребителям широкий спектр возможностей реализации (в том числе необязательных).
	Продукты появляются позже стандартов (за исключением случаев, когда утвержден стандарт де-факто).
	Стандарты открыты для всех разработчиков и производителей на равных условиях.
	Организации по стандартизации обеспечивают процесс совершенствования стандартов, который позволяет всем заинтересованным сторонам подавать свои предложения для рассмотрения.
	Эти стандарты определяют долговременные направления развития, независимые от конкретных продуктов и решений.
Стандарты де-факто отмечены следующими особенностями:
	реализации этих стандартов доступны уже сейчас, возможно даже ото многих поставщиков: нет необходимости ждать их окончательного согласования и утверждения;
	существует опыт применения этих стандартов, хорошо известны их сильные и слабые стороны;
	стандарты де-факто могут использовать произвольный, удобный для этих стандартов набор существующих технологических решений, не обязательно состоящий из стандартов де-юре;
	истинная "открытость" этих стандартов всегда может быть подвергнута сомнению.
Для многих стандартов де-факто технология, реализующая стандарт, либо предшествует, либо становится доступной одновременно со спецификациями. Станет ли спецификация общепризнанной, зависит либо от успеха исходной технологии, либо от степени согласия других производителей со спецификацией. Часто можно видеть несколько конкурирующих технологий и/или спецификаций одновременно. В этом случае бывает трудно предсказать, какая из них завоюет успех на рынке. Тогда, чтобы добиваться стандартизации своих продуктов, производители могут объединяться в различные организации: консорциумы, альянсы, фонды и т. п.
Из-за множества стандартов и большого количества необязательных или альтернативных возможностей реализации, предусмотренных во многих стандартах де-юре, некоторые заинтересованные организации разрабатывают так называемые профили стандартов. В профилях точно отмечается, какие стандарты и какой выбор возможностей из этих стандартов они желают реализовать в ИС. Профили обычно специфицируют, где это возможно, подмножества стандартов де-юре, а оставшиеся "свободные места", для которых не существует стандартов де-юре, заполняют стандартами де-факто.
Профили, как и стандарты, играют важную роль в открытых системах. Число стандартов и областей, которые они покрывают, очень велико и продолжает расти. Все труднее становится конструировать открытые решения, которые могут свободно взаимодействовать друг с другом или могут быть получены из других открытых решений. Это входит в противоречие с самой концепцией открытых систем. Профили предназначены для снижения потенциальной возможности несовместимого использования продуктов, соответствующих стандартам. Кроме того, они помогают идентифицировать пробелы, которые существуют в стандартизации ИТ. Профили могут
1. Стандартизация и модельное представление открытых информационных систем
21
создаваться самими организациями по стандартизации, организациями пользователей, правительственными органами.
Так, правительственные профили возникли в результате возрастания потребностей упростить и облегчить процесс применения ИТ в правительственных структурах путем определения общего набора требований и исключения независимого изучения пользователями огромного множества сложных, объемных стандартов. Правительственные профили могут комбинировать международные и национальные стандарты той страны, для которой они создаются. Тем самым обеспечивается стабильность деятельности правительственных учреждений. Цель этих профилей - добиться взаимодействия средств различных поставщиков на рабочих местах правительства. Профили, в свою очередь, явились началом развития более сложных форм структурной логической организации стандартов: архитектур, нормативных моделей и т. п.
Различается три типа организаций, разрабатывающих стандарты.
1.	Национальные и международные организации по стандартизации. К этой категории относятся, например, ISO, IEC, ITU, IEEE (международные), Госстандарт РФ, ANSI, NIST (США) и др. Эти организации являются единственным источником стандартов де-юре, тогда как остальные два типа организаций производят только стандарты де-факто.
2.	Консорциумы и альянсы фирм-производителей. К этой категории относятся OSF, Unix International, Power-Open и др. Они способствуют созданию стандартов де-факто, распространяя спецификации и технологии на множество производителей. Однако поддержка технологий таким образом может быть недостаточной, если она не соответствует требованиям организаций пользователей.
3.	Организации пользователей. Они определяют стандарты де-факто либо посредством спецификации профилей, либо выявляя их на рынке ИТ. Первый способ применяют крупные пользователи, такие, как правительственные организации или ассоциации пользователей. Второй способ предполагает исследование преимуществ и недостатков каждого продукта, его распространенности у пользователей. Принятие или непринятие рынком той или иной технологии (продукта, решения) есть окончательный показатель стандарта де-факто. Если они не соответствуют тому, что требует пользователь, он не будет покупать их.
Охарактеризуем некоторые из наиболее важных и влиятельных организаций, вовлеченных в процесс разработки стандартов по ИТ.
1.	Международная организация по стандартизации (International Organization for Standardization, ISO). ISO - международная неправительственная организация. Как записано в ее уставе, она "осуществляет разработку международных стандартов и координирует деятельность в области стандартизации с целью содействия взаимному сотрудничеству в важных областях человеческой деятельности: интеллектуальной, научной, технологической и экономической". Сейчас в состав ISO входят около 130 государств. Каждое государство участвует в работе ISO через свой национальный орган стандартизации. Государства могут быть членами, членами-корреспондентами или членами-подписчиками ISO. Каждое государство-член ISO возглавляет один или несколько технических комитетов или подкомитетов. СССР был одним из учредителей ISO в 1946 г. Госстандарт РФ участвует в работе ISO в качестве национальной организации по стандартизации.
22
Информационная безопасность открытых систем
ISO пользуется консультативным статусом ООН. Первый стандарт был выпущен ISO в 1951 г. Сфера ответственности ISO за разработку стандартов охватывает все области техники, за исключением электроники и электротехники (это прерогатива IEC). Структурно ISO состоит из технических комитетов (ТС), которые делятся на подкомитеты (SC). Для обеспечения работы по подготовке стандартов внутри подкомитетов образуются рабочие группы (WG). Группы, работающие над решением конкретной задачи, называются TF (Task Force). Каждый разрабатываемый стандарт проходит последовательно несколько стадий:
NWI - New Work Item;
WD - Working Draft;
CD - Committee Draft;
DIS - Draft International Standard;
IS — International Standard.
Согласованный проект принимается в качестве стандарта, если за него проголосовало не менее 75 % государств-членов ISO. На сегодняшний день действует около 12 тыс. стандартов ISO.
2.	Международная электротехническая комиссия (International Electrotechnical Commission, IEC) — специализированная международная организация, которая разрабатывает стандарты, связанные с электроникой, электротехникой и ИТ. IEC -одна из первых международных организаций, начавших процесс разработки международных стандартов. Образована в 1906 г., с 1926-го по 1942 г. носила название International Federation of the National Standardizing Associations (ISA); сферой ее ответственности было в основном машиностроение. В настоящий момент она дополняет деятельность ISO в области информационных технологий. IEC совместно с ISO сформировала Объединенный технический комитет, JTC1 (Joint Technical Committee) для координации разработки стандартов по ИТ.
3.	Международный телекоммуникационный союз (International Telecommunications Union, ITU). ITU - одна из первых международных организаций. Союз был основан в 1865 г. и до 1947 г. носил название Телеграфного союза. Сейчас он входит в систему органов ООН и объединяет около 160 стран. В структуру ITU входят Международный консультативный комитет по радиосвязи (ITU-R, до 1993 г. - CCIR) и Международный консультативный комитет по телефонии и телеграфии (ITU-T, до 1993 г. - CCITT). Название последнего было заменено на ITU/TSS (Telecommunications Standard Sector), но более известным остается предыдущее. Стандарты ITU официально называются рекомендациями. Они принимаются на сессиях ITU, которые проходят один раз в четыре года. Разработка стандартов, таким образом, занимает весьма длительное время.
ITU занимается стандартизацией открытых телекоммуникационных сервисов. ITU-T выпускает 25 серий рекомендаций (обозначаемых буквами латинского алфавита от А до Z), каждая из которых насчитывает до нескольких десятков или сотен рекомендаций. Наиболее известны серии, посвященные стандартизации взаимодействия открытых систем и сетей ISDN. Многие рекомендации ITU были приняты в качестве стандартов ISO.
4.	Международный институт инженеров по электронике и электротехнике (The Institute of Electrical and Electronics Engineers, IEEE). IEEE был основан в 1884 г. В настоящее время активно участвует в разработке стандартов для компью
1. Стандартизация и модельное представление открытых информационных систем 23
терной промышленности. IEEE работает в тесном сотрудничестве с другими международными организациями, в частности с ISO, так что между стандартами IEEE и эквивалентными стандартами ISO практически нет никаких различий.
IEEE разрабатывает три типа спецификаций:
	стандарты - спецификации с предписательными требованиями;
	рекомендованные практики - спецификации действий, процедур и практик, рекомендуемые IEEE;
	руководства — описывают спектр альтернативных возможностей без рекомендации определенного подхода.
Два наиболее известных стандарта IEEE - стандарты серии 802 по локальным вычислительным сетям и стандарты POSIX.
5.	Internet Architecture Board (IAB) - неофициальная организация, создающая систему стандартов для среды Интернета. IAB основана в 1992 г. Состоит из двух подразделений: IETF (Internet Engineering Task Force), которая ответственна за разработку краткосрочных инженерных документов, и IRTF (Internet Research Task Force), которая занимается долгосрочными исследованиями. IAB ведет работу в девяти функциональных областях: приложения, сервисы Интернета, управление сетями, операционные требования, интеграция с OSI, маршрутизация, безопасность, транспортные сервисы, сервисы пользователя.
Наиболее известными документами этой организации является серия так называемых RFC (Request for Comments). Они различны по своему статусу: некоторые из них являются утвержденными стандартами для Интернета, другие рекомендованы к использованию, но не являются обязательными, третьи вообще служат справочными материалами. Значительная часть из них является стандартами де-факто. Документы RFC создавались с целью определения минимально необходимого набора спецификаций для обеспечения нормальной работы глобальной информационной среды. Сегодня этот минимум включает уже более 2,5 тыс. стандартов.
6.	The Open Group образована в 1993 г. в результате слияния консорциума OSF и организации Х/Open как международная некоммерческая организация с целью содействия развитию технологий открытых систем и открытых распределенных сред. The Open Group занимает особое положение: можно утверждать, что она находится между первой (официальные органы) и второй (неофициальные) категориями организаций. Она одобряет стандарты де-юре, согласует и разрабатывает стандарты де-факто, и ее документы имеют большое влияние на промышленность. Однако в отличие от промышленных групп и консорциумов она не внедряет отдельные продукты, технологии или решения фирм-производителей. Многие свои проекты The Open Group ведет совместно с официальными организациями по стандартизации, прежде всего с ISO.
7.	Open Software Foundation (OSF) - некоммерческий международный консорциум, в 1993 г. вошедший в состав The Open Group. Это научно-производственная организация, цель которой - создание спецификаций для ПО открытых систем с целью поддержки различных производителей. Широко известны разработки OSF, которые объединяют лучшие достижения промышленности: набор спецификаций и исходных кодов для Unix-подобных ОС OSF/1, графический интерфейс OSF/Motif, набор сервисов для поддержки распределенных приложений OSF/DCE, набор сервисов для
24
Информационная безопасность открытых систем
управления системами OSF/DME, модель и спецификация интерфейсов для разработки переносимых-приложений в среде открытых систем OSF AES.
8.	Х/Open — всемирная некоммерческая независимая организация по открытым системам, основанная в 1984 г. и вошедшая в состав The Open Group в 1993 г. Главными разработками этой организации являются спецификации САЕ (Common Application Environment) - модель и стандартный набор интерфейсов программирования, опубликованные в документах XPG. САЕ основана преимущественно на стандартах де-юре (в том числе POSIX) и включает стандарты де-факто и промышленные стандарты производителей.
9.	Unix International (UI). В настоящее время эта организация ликвидирована, но во многом благодаря ей понятие "открытые системы" ассоциируется с ОС Unix и стеком протоколов TCP/IP (Transmission Control Protocol/ Internet Protocol).
Кроме перечисленных, большое влияние на технологии открытых систем оказывают также следующие организации: OMG (Object Management Group), NMF (Network Management Forum), W3C (World Wide Web Consortium) и др.
Информация о международных и национальных органах стандартизации, порядке их работы и целях деятельности, разрабатываемых стандартах, как правило, может быть получена с соответствующих веб-страниц Интернета:
	ISO [http://www.iso.ch];
	The Open Group [http://www.opengroup.org];
	IEEE [http://www.ieee.org];
	ITU [http://www.itu.ch];
	IAB [http://www.ietf.org];
	OMG [http://www.omg.org];
	Госстандарт РФ (Государственный комитет Российской Федерации по стандартизации, метрологии и сертификации) [http://www.gost.ru, http://www.interstan-dard.gost.ru - каталог российских и международных стандартов],
	NIST (Национальный институт стандартов и технологий США) [http://www.nist.gov].
Перечни и краткие аннотации стандартов могут быть также получены по адресам: http://www.iso.ch/cate/cat.html (стандарты ISO и ISO/IEC); http://www.itu.int/publica-tions/index.html (рекомендации 1TU ).
1.2. Совместимость открытых систем
Как было отмечено в предыдущем параграфе, основными требованиями к совместимости систем в сложной среде является переносимость и способность к взаимодействию. Рассмотрим теперь подробнее смысл этих требований, различие между ними, способы их реализации в среде открытых систем. Для этой цели нам потребуется ввести функциональную модель ИС, которая в дальнейшем будет детализирована и использована для размещения в ней и более подробного рассмотрения стандартов и технологий открытых систем.
1.2.1. Переносимость и способность к взаимодействию
Переносимость означает возможность перемещать между вычислительными системами ПП, данные и пользователей [6]. Концепция переносимости применяется
1. Стандартизация и модельное представление открытых информационных систем
25
к разделенным, не связанным между собой системам, т. е., когда мы хотим взять один из этих объектов (ПП, данные, пользователя) из одной системы в другую, мы говорим о переносимости.
Переносимость имеет три составляющие.
Переносимость ПП означает возможность исполнения ПП пользователя на платформе, отличной от той, для которой она была создана изначально. Само понятие переносимости не подразумевает никакого конкретного способа достижения этого качества открытых систем, хотя, как будет видно далее, переносимость приложений, например, может быть достигнута либо на уровне исходных текстов приложений на языках программирования, либо на уровне исполняемых кодов. В первом случае исходный текст перекомпилируется на каждой новой платформе, во втором - программа компилируется один раз и может исполняться на любой платформе из обозначенного множества. Но ни в том, ни в другом случае это никак не влияет на пользователя, так как он всегда приобретает уже готовый объектный код.
Переносимость данных означает возможность доступа приложений к одним и тем же данным на различных платформах (считая их не связанными между собой!), т. е. приложения должны иметь единые механизмы манипулирования данными: создание, удаление, поиск, копирование и т. п.
Наконец, переносимость пользователей означает, что пользователям и обслуживающему персоналу не потребуются дополнительные затраты на обучение, привыкание и накопление опыта работы на различных вычислительных системах, входящих в открытую среду. Они всюду будут работать с системой через единый интерфейс, обладать одинаковым набором сервисов, иметь равные возможности управления системой, равные права доступа к ресурсам и т. д.
Способность к взаимодействию означает способность разнородных вычислительных систем выполнять некоторую работу вместе [6]. Очевидно, что необходимым условием совместной работы двух или более систем является их взаимосвязанность. Они должны иметь физическое соединение между собой, которое позволит обмениваться данными. Но простого соединения вычислительных систем в сеть недостаточно для обеспечения возможности обмена данными. Наличие различных типов сетей: множества технологий передачи данных, множества производителей, множества коммуникационных протоколов - делает необходимым решение следующей задачи. Любая вычислительная система должна быть доступна из любой точки в пределах всей сложной сети. Когда мы хотим иметь возможность использовать ресурсы другой системы с имеющейся у нас системы, мы говорим о способности к взаимодействию.
Однако сама по себе возможность обмена данными через вычислительную сеть еще не обеспечивает способности систем к взаимодействию. Им необходимо достичь общего понимания работы, которую они выполняют, а именно все системы должны единообразно воспринимать порядок и значение сообщений, которыми они обмениваются, а также ту работу, которую каждая из систем должна выполнять индивидуально в ответ на получаемые сообщения. В общем случае эта задача решается при помощи коммуникационного интерфейса.
Итак, способность к взаимодействию позволяет вычислительным системам совместно выполнять некоторую работу. В зависимости от характера работы это качество может быть представлено в системах в различной степени: от способности про
26
Информационная безопасность открытых систем
стой передачи файлов до способности работать как полностью распределенная система с прозрачным хранением и обработкой данных.
Переносимость и способность к взаимодействию не являются взаимно исключающими понятиями. Открытые системы предоставляют пользователям обе эти возможности, хотя не все пользователи и не всегда могут ощущать их одновременно.
Заметим, что, например, определение IEEE среды открытых систем можно расчленить на две составляющие в соответствии с понятиями совместимости и способности к взаимодействию. С одной стороны, открытая система подразумевает ПО "исчерпывающий и консистентный набор международных стандартов по ИТ... который специфицирует интерфейсы, сервисы и поддерживаемые форматы для достижения... переносимости приложений, данных и пользователей", а с другой стороны, "исчерпывающий и консистентный набор международных стандартов... который специфицирует интерфейсы, сервисы и поддерживаемые форматы для достижения способности к взаимодействию...".
Таким образом, можно сделать вывод, что переносимость и способность к взаимодействию - различные, но взаимодополняющие качества открытых систем. Переносимость может рассматриваться как временной аспект совместимости: она позволяет перемещать ресурсы из одной системы в другую во времени. Способность к взаимодействию может рассматриваться как пространственный аспект совместимости открытых систем: она позволяет множеству систем, разделенных в пространстве, сообща использовать ресурсы.
1.2.2. Базовая модель информационной системы
Как уже отмечалось, в настоящее время существует очень большое количество стандартов в области открытых систем. Они определяют основные элементы технологии открытых систем: эталонные модели, сервисы, интерфейсы, форматы, протоколы, руководства и рекомендованные методики. Эти стандарты могут различаться по сложности, по широте охватываемых проблем и относиться к любому аспекту ИТ. Чтобы распознать и позиционировать различные стандарты, связанные с переносимостью и способностью к взаимодействию, будем использовать простую модель ИС, показанную на рис. 1. За основу в ней берется модель POSIX OSE/RM, описанная в документе IEEE Pl003.0 "Guide to the POSIX Open Systems Environment", которая подвергается дальнейшей декомпозиции по методике, используемой в документах фирмы IBM [5, 7]. Выбор модели OSE/RM объясняется тем, что она является наиболее простой и наиболее общей. Она взята за основу в большинстве других, более сложных моделей. Эта модель не является определяющей по отношению к рассматриваемым далее стандартам, она лишь средство классификации стандартов. Методика фирмы IBM была выбрана вследствие того, что она представляется наиболее удобным, объективным и независимым от продуктов конкретных фирм методом описания ИС, не нуждающимся в то же время в привлечении сложных структур и понятий. Главное ее преимущество заключается в том, что она позволяет легко классифицировать стандарты двумя способами:
	как интерфейсы программирования (форматы) или протоколы;
	как относящиеся либо к переносимости, либо к способности к взаимодействию.
1. Стандартизация и модельное представление открытых информационных систем
27
Рис. 1. Базовая модель ИС
Основными элементами модели являются следующие блоки и интерфейсы между ними:
1.	Прикладное ПО (Application Software, AS) представляет собой ПО, специфичное для конкретных задач конечных пользователей и потребителей услуг ИС.
2.	Платформа приложений (Application Platform, АР) представляет все остальные элементы СОД, за исключением ПП: все АО с размещенными на нем ОС и другими компонентами и подсистемами системного ПО.
ПП запрашивают ресурсы от платформы посредством вызова сервисов через интерфейс — интерфейс прикладного программирования (Application Programming Interface, API). Ресурсы, находящиеся вне платформы, запрашивают сервисы через другой интерфейс — интерфейс внешней среды (External Environment Interface, EEI).
Внутренняя структура АР в модели OSE/RM намеренно не рассматривается вследствие того, что разные разработчики и производители могут иметь различный взгляд на наполнение платформы, а модель должна обеспечить единый, предельно общий взгляд.
3.	Внешняя среда (External Environment, ЕЕ) представляет все объекты вне системы, с которыми она взаимодействует каким-либо образом: людей, коммуникационные средства, сменные носители данных и средства ввода-вывода.
Интерфейс между АР и ЕЕ включает в себя форматы данных, коммуникационные протоколы, человекомашинный интерфейс и т. п.
Заметим, что фактически эта модель является обобщенной моделью технологической машины по обработке информации. В ней можно увидеть модель вообще любой технологической машины: для этого достаточно только соответствующим образом переименовать компоненты модели.
Для удобства дальнейшего рассмотрения необходимо более подробно охарактеризовать все три основные составляющие модели.
Прикладное ПО. В общем случае на платформе может исполняться одновременно множество ПП, и каждая ПП может пользоваться при своем исполнении множеством API для доступа к различным сервисам платформы. Способы взаимодействия ПП с платформой мы рассмотрим ниже.
Внешняя среда. Внешняя среда состоит из трех типов объектов: пользователей, внешних объектов данных, коммуникационных средств (хотя разбиение внешней среды именно таким образом в некотором роде произвольно). Внешние объекты данных включают все устройства ввода-вывода (принтеры, плоттеры, сканеры, мониторы, клавиатуры, устройства чтения пластиковых карт и т. п.) и сменные носители данных (гибкие диски, дисковые массивы, оптические диски, в том числе CD, CD-RW, DVD и т. п.). Коммуникационные средства включают каналы связи, локальные и глобальные сети и все составляющее их коммуникационное оборудование. АР осуществляет доступ к этим объектам через EEL Этот интерфейс принимает форму про
28
Информационная безопасность открытых систем
токолов, форматов и потоков данных и включает такие аспекты, как формат данных, формат экрана, поведение объектов на экране, протоколы обмена данными и т. д.
Платформа приложений. АР включает все аппаратное и размещенное на нем системное программное и микропрограммное обеспечение и различные программные подсистемы (кроме ПП), например такие, как системы управления базами данных (СУБД), менеджеры транзакций, средства автоматизированного проектирования, средства административного управления, средства защиты информации (СЗИ). Следовательно, структура типичной платформы обычно является весьма сложной. Многие модели рассматривают внутреннюю структуру платформы, но здесь не будем пользоваться фиксированной внутренней структурой, так как среди документов различных организаций и фирм не существует единого мнения по этому вопросу.
Отвлекаясь от конкретного состава аппаратно-программных средств, платформу приложений следует понимать прежде всего как самодостаточный (минимальный) набор функциональности, который представлен необходимо зависимыми между собой компонентами. Основная задача платформы — организованное исполнение кода ПП, предоставление ПП доступа к аппаратным и информационным ресурсам.
Смысл самого понятия "платформа" неоднократно изменялся в процессе эволюции вычислительной техники. Первоначально (50-60-е гг.) под ним понималась исключительно аппаратура, на которой запускались программы и в которую при помощи внешних носителей осуществлялся ввод данных. Впоследствии, с развитием и распространением ОС, под платформой стали понимать АО вычислительной техники с установленной на нем ОС. Такое понятие закрепилось в сфере ИТ надолго, в том числе и благодаря широчайшему распространению персональных компьютеров. В соответствии с современными представлениями под платформой, как правило, понимается готовый аппаратно-программный комплекс, предназначенный для использования конечным потребителем, вероятно после небольшой "подгонки" к его конкретным требованиям, нуждам и потребностям. В англоязычной литературе поставщик готовых аппаратно-программных платформ, как правило, обозначается термином "vendor", а процесс подготовки платформы к использованию потребителем - термином "customization". Примерами различных видов платформ в современном понимании этого слова могут служить электронный блокнот, мобильный телефон, графическая рабочая станция, банкомат, автоматизированный кассовый аппарат, файловый сервер, Интернет-сервер, сервер баз данных, мейнфрейм, роботизированная дисковая библиотека, ленточная библиотека и т. п.
1.2.3.	Системный подход к описанию функциональности
НА БАЗЕ МОДЕЛЬНОГО ПРЕДСТАВЛЕНИЯ ИНФОРМАЦИОННЫХ СИСТЕМ
Несмотря на различия в представлениях о составе платформы приложений (АР) на различных этапах эволюции этого понятия, под платформой всегда понималось некое неделимое образование, главное требование к которому заключается в том, чтобы снабжать ПП и объекты внешней среды своими услугами и ресурсами через интерфейсы. В этой связи вводится понятие сервиса.
Сервис - это группа компонентов (функциональных блоков, модулей) системы, которая предоставляет другим группам (другим блокам, модулям) некоторый законченный в функциональном отношении пакет услуг, доступных через специфицированные интерфейсы, и сам может пользоваться услугами других модулей через соот
1. Стандартизация и модельное представление открытых информационных систем
29
ветствующие интерфейсы. Компоненты могут взаимодействовать между собой сложным образом, чаще всего образуя иерархическую или уровневую структуру. При этом однотипные сервисы одного уровня взаимодействуют между собой по протоколам, а разнотипные и сервисы различных уровней — через интерфейсы. В моделях открытых систем компоненты обычно выделяются по функциональному признаку (т. е. отображают не требуемую структуру этого блока, а требуемые от него функции, которые он должен выполнять). Поэтому часто говорят о функциональных моделях (среды) открытых систем.
Следует заметить, что концепция сервисов является развитием принципа модульности построения ПО. Однако сервисы - это не физические, а логические модули системы. Один логический модуль может быть реализован множеством взаимосвязанных физических модулей, и наоборот, один физический модуль может реализовывать ряд функций, относящихся к различным логическим модулям.
С принципом выделения сервисов тесно связан принцип стандартизации сервисов. Стандартизации подвергаются не сами компоненты, предоставляющие сервисы, не их внутренняя структура, а интерфейсы и протоколы, посредством которых они взаимодействуют. Это позволяет достичь следующих преимуществ:
	компоненты становятся заменяемыми, многократно используемыми (reused);
	при построении структуры системы заданным оказывается только набор сервисов, а реализацию каждого сервиса можно свободно выбирать из доступного множества на конкурентной основе, например пользователь может выбирать ПО, исходя из своих потребностей, финансовых возможностей, требуемого аппаратного обеспечения, быстродействия и т. п.
Поскольку структура АР, как правило, является очень сложной, необходимо провести ее декомпозицию: выделить основные структурные компоненты платформы (по функциональному признаку) и определить средства взаимодействия между этими структурными компонентами.
Для рассмотрения структурных компонентов АР удобно выделить в ней четыре класса сервисов (рис. 2): сервисы человекомашинного взаимодействия, сервисы данных, сетевые сервисы и внутренние сервисы платформы.

Приложение
1

Приложение
2

Приложение
3

API
Сервисы человеко-машинного взаимодействия
Сервисы данных
Сетевые сервисы
Внутренние сервисы платформы
EEI
		
	Пользователи	
		
	Внешние объекты данных	
		
	Коммуникационные средства	
		
Рис. 2. Декомпозиция модели ИС
Три из них: сервисы человекомашинного взаимодействия, сервисы данных и сетевые сервисы - обеспечивают связь между функциями АР и внешней средой, с ко
30
Информационная безопасность открытых систем
торой она взаимодействует. Они связаны с соответствующими классами объектов внешней среды: соответственно с пользователями, внешними объектами данных и коммуникационными средствами. Четвертый набор сервисов - внутренние сервисы платформы - предоставляют ПП функции, которые полагаются только на ту АР, на которой ПП непосредственно исполняются. С внешней средой этот класс сервисов, в отличие от трех других, взаимодействовать не может.
Следует заметить, что взаимосвязь между классами сервисов АР и классами объектов ЕЕ не является однозначной, так как для выполнения своих функций эти сервисы могут обращаться к любым объектам внешней среды, поэтому на рис. 2 показана единая связь между АР и ЕЕ. Такое разбиение обеспечивает удобство классификации стандартов.
Теперь необходимо определить средства взаимодействия между структурными компонентами АР. Таких средств, как уже отмечалось выше, известно два вида: интерфейсы - набор правил взаимодействия между компонентами - и протоколы - последовательность действий компонентов с целью решения общей задачи.
Поскольку АР ответственна за целостность и консистентность сервисов, которые она обеспечивает, эти сервисы должны быть доступны и контролируемы через определенный интерфейс. Использование интерфейсов делает зависимые от реализации характеристики платформы прозрачными для прикладного ПО и внешних объектов. Каждый компонент платформы будет иметь свой собственный набор интерфейсов прикладного программирования (API), через которые ПП могут воспользоваться его сервисами, или не иметь их вообще - тогда доступ к нему возможен только через внутренние интерфейсы платформы. Существование API в форме стандартов, поддерживаемых многими платформами, сделает возможной переносимость ПП.
Концепция АР не означает никакой специфики реализации АР и принципиально никак ее не ограничивает, кроме единственного требования: снабжать ПП и внешнюю среду сервисами через интерфейсы. Платформа может иметь очень разную структуру: от однопроцессорной до большой распределенной системы, удовлетворять специфическим требованиям эксплуатации, например систем управления производственными процессами, бортовых вычислительных систем реального масштаба времени.
1.2.4.	Расширение базовой модели информационной системы ДЛЯ ВЗАИМОДЕЙСТВУЮЩИХ СИСТЕМ
Рассмотренные выше три элемента базовой модели достаточны для рассмотрения свойства переносимости. Для рассмотрения способности к взаимодействию и концепции распределенных вычислительных систем модель необходимо расширить.
Способность к взаимодействию подразумевает наличие двух или более вычислительных систем и коммуникационных средств между ними. Модель взаимодействующих систем показана на рис. 3.
ПП из одной системы могут запрашивать сервисы удаленной платформы, используя сетевые сервисы, доступные на своей собственной платформе. Например, они могут осуществлять доступ к внутренним или внешним ресурсам на удаленной платформе, взаимодействовать с удаленной ПП или общаться с пользователем удаленной системы. Необходимое условие для этого - на удаленной платформе должен поддер-
1. Стандартизация и модельное представление открытых информационных систем 31 живаться тот же самый интерфейс сетевого сервиса, т. е. сетевые протоколы и форматы сообщений.
AS АР
Рис. 3. Взаимодействующие системы
Как уже отмечалось выше, для взаимодействия открытые системы должны не только обмениваться данными, но и одинаково "понимать" выполняемую работу. Для этого необходимы дополнительные протоколы и форматы, зависящие от характера выполняемой работы. Заметим, что в данном случае ПП "осведомлена" о расположении партнера (сервиса или другой ПП), так как, если он находится на удаленной системе, ПП пользуется сетевым сервисом своей АР. Способность к взаимодействию между открытыми системами достигается через коммуникационные средства внешней среды.
Пусть теперь модули, которые реализуют определенный сервис внутри одной платформы, могут использовать сетевые сервисы для доступа к удаленной платформе, если это требуется для удовлетворения запроса сервиса от ПП.
Наглядным примером такой ситуации может быть доступ к файлам в локальной вычислительной сети (ЛВС). Если файла, запрашиваемого пользователем или ПП на рабочей станции ЛВС, не оказалось на локальном диске, запрос перенаправляется на файловый сервер. Если при взаимодействии применяется специальный протокол файлового сервиса, пользователь (ПП) осуществляет доступ к файлу через тот же самый интерфейс, который применяется для локально расположенных файлов. Так локальная платформа скрывает тот факт, что некоторые файлы расположены в удаленной вычислительной системе, и обеспечивает пользователю прозрачность файловой системы.
Расширение этого примера на все категории сервисов, предоставляемые платформой ПП, приводит к концепции распределенной вычислительной системы (РВС). Схематическая модель РВС показана на рис. 4. В ранее обсуждавшемся случае взаимодействующих систем две платформы рассматриваются как разделенные объекты, соединенные коммуникационными связями. В случае РВС они уже рассматриваются как единая, унифицированная платформа. Это различие имеет значение только с точки зрения ПП. Технически система в обоих случаях может быть одинакова, а формирование РВС обеспечивается только системным ПО.
РВС может существовать как в однородной, так и в разнородной (гетерогенной), сложной среде ИТ. Концепция открытых систем направлена прежде всего на обеспечение совместимости (переносимости и способности к взаимодействию) систем в гетерогенной среде. Расширение этой концепции, направленное на организацию РВС
32	Информационная безопасность открытых систем
в гетерогенной среде, приводит к понятию распределенных вычислительных сред (или распределенных сред, или сред распределенных систем).
Рис. 4. Распределенная система
Естественно потребовать, чтобы распределенная вычислительная среда обладала рядом дополнительных свойств помимо переносимости и способности к взаимодействию, которые обеспечивали бы формирование образа единой системы для любого пользователя и любой ПП (рис. 5). Среди таких свойств чаще всего отмечают:
	доступность, которая означает, что пользователи видят РВС как единое, связанное вычислительное средство с единой точкой входа, единственной процедурой входа в систему (logon), с ресурсами, доступными через согласованную и универсальную схему именования ресурсов, независимую от местоположения и метода доступа;
	прозрачность, которая означает, что сервисы системы предоставляют хорошо определенные, простые, функциональные интерфейсы, независимые от деталей реализации; пользователи и их приложения не видят общей сложности и неоднородности РВС; напротив, они видят ее как продолжение, расширение своей собственной системы;
	масштабируемость, которая подразумевает, что система может приспосабливаться к выбору различных конфигураций АО от сравнительно простого и дешевого до сложного, с развитыми возможностями, надежного и высокопроизводительного; система допускает развитие и расширение с ростом требований или расширением задач потребителя;
	управляемость, которая включает степень приспособленности системы для планирования, координации ее работы, оперативного управления, поддержки разнородного оборудования, конфигурирования, мониторинга системы, обработки ошибок и исключительных ситуаций и т. д.; в сложных системах включает также степень автоматизации управления, возможность самостоятельного выполнения системой некоторых функций управления, возможность управления системой из одной точки и пр.;
	безопасность, которая включает комплекс вопросов, связанных с обеспечением конфиденциальности, целостности данных, аутентичности пользователей и данных, контроля доступа к ресурсам, аудита, администрирования всех этих функций и пр.;
	надежность и готовность, которые означают, что система является постоянно и непрерывно доступной для пользователей и ПП и сконструирована таким образом, что не теряет функциональности в случае отказа некоторых компонентов системы;
1. Стандартизация и модельное представление открытых информационных систем 33
	сервисностъ, которая означает наличие в системе встроенных механизмов отслеживания, обнаружения, фиксации возникновения и течения нештатных ситуаций и восстановления после них (так как смоделировать нештатную ситуацию в случае ее возникновения в такой сложной системе крайне затруднительно);
	учетность, которая подразумевает наличие в системе механизмов, позволяющих вести учет и/или отслеживание интенсивности потребления пользователями ресурсов системы независимо от их местоположения в системе.
Рис. 5. Формирование образа единой РВС
Таким образом, основными характеристиками распределенной вычислительной среды являются:
	обеспечение образа единой системы для пользователей и ПП с консистентным наборов API и EEI для сервисов;
	всеобщая доступность сервисов распределенной вычислительной среды при наличии разнородного АО, ОС и вычислительных сетей;
	легкость распределения функций ПП в распределенной вычислительной среде.
Образ единой системы подразумевает, что за счет обеспечения переносимости и способности к взаимодействию достигаются следующие качества РВС:
1) от пользователя скрываются различия между отдельными системами;
2) стандартизируется способ их восприятия пользователями, ПП и другими системами.
Цель сокрытия различий состоит не в полной их ликвидации или выравнивании, а, наоборот, в использовании уникальных возможностей и характеристик каждой индивидуальной вычислительной системы. Пользователю только представляется образ единой системы.
1.3.	Переносимость
Как было показано ранее, понятие переносимости в концепции открытых систем обычно рассматривается в трех аспектах: переносимость ПП, данных и пользователей. Рассмотрим теперь способы реализации этого свойства, которые применяются в реальных открытых системах. Затем, основываясь на изложенной в п. 1.2 базовой модели открытой ИС, проведем ее функциональную декомпозицию и подробно рассмотрим номенклатуру сервисов платформы приложений, которые обеспечили бы максимально полную переносимость ПП, данных и пользователей между открытыми системами.
2—2368
34
Информационная безопасность открытых систем
1.3.1.	Способы реализации переносимости
Исходными предпосылками для анализа способов реализации переносимости являются следующие факты. ПП получают доступ к сервисам и ресурсам платформы приложений через API. Использование API гарантирует, что платформа может поддерживать единообразный и контролируемый доступ к сервисам для всех ПП, которые потребуют этого. АР также обеспечивает сервисы и для внешней среды (ЕЕ). И наоборот, если того требует запрос, платформа может осуществлять доступ к ресурсам ЕЕ через соответствующие интерфейсы. ЕЕ рассматривается как состоящая из трех типов объектов: пользователей, внешних объектов данных и коммуникационных средств.
Таким образом, логично предположить, что переносимость ПП могла бы быть реализована посредством обеспечения сервисов и/или их API на многих АР. Переносимость данных может достигаться путем поддержки платформой приложений форматов и протоколов обмена данными между системами. Наконец, переносимость пользователей обеспечивалась бы АР за счет сервисов, инструментов (например, средств администрирования, средств разработки ПП) и интерфейсов, общих на нескольких платформах. Рассмотрим теперь способы достижения всех трех аспектов переносимости более подробно.
Переносимость прикладных программ. Цель реализации этого свойства в среде открытых систем заключается в том, чтобы обеспечить одинаковый набор сервисов (функциональных модулей) на множестве разнородных АР.
Для детального рассмотрения стандартов и компонентов интерфейса между ПП и АР было бы естественным разбить API на фрагменты, соответствующие четырем основным классам сервисов, предоставляемых АР:
	API сервисов человекомашинного взаимодействия;
	API сервисов данных;
	API сетевых сервисов;
	API внутренних сервисов платформы.
Первые три из них естественным образом соответствуют трем классам объектов внешней среды. Последний - API внутренних сервисов платформы приложений - позволяет ПП осуществлять доступ к сервисам, которые АР поддерживает, используя только свои собственные внутренние ресурсы. Сразу оговоримся, что API сетевых сервисов не рассматриваются в данной главе, так как к свойству переносимости они непосредственного отношения не имеют: в контексте переносимости системы считаются не связанными между собой.
Заметим, что связь как между классами сервисов АР и классами объектов ЕЕ, так и между классами API и классами объектов ЕЕ не является однозначной. Например, если ПП запрашивает файл, который, как оказывается, хранится в удаленной системе, сервисы данных, доступные через API сервисов данных, будут обеспечивать доступ к этому файлу прозрачно для ПП. Но этот сервис, в свою очередь, воспользуется сетевым сервисом, доступным через API сетевого сервиса, для передачи данных через коммуникационные средства. Итак, API делают возможным переносимость ПП за счет стандартизации интерфейсов между AS и АР.
Каким образом можно обеспечить переносимость конкретных программных продуктов? Известны четыре подхода к решению этой проблемы:
1. Стандартизация и модельное представление открытых информационных систем
35
	спецификация открытых программных интерфейсов для неограниченного использования разработчиками ПО;
	создание программных продуктов, которые могут работать на нескольких программных и аппаратных платформах;
•	применение стандартных интерфейсов в программных продуктах (SQL, OSF/DCE, POSIX J 003 и т. п.) в дополнение к их собственным интерфейсам;
	совмещение двух последних подходов.
Забегая несколько вперед, отметим, что перечисленные методы в основном применимы и для обеспечения способности к взаимодействию между программными модулями. Кроме того, способность к взаимодействию чаще всего подразумевает уровневую структуру ПО - тогда, кроме того, появляется выбор возможностей реализации этого свойства. Например, если требуется взаимодействие удаленной ПП с СУБД, возможны следующие альтернативы: взаимодействие на коммуникационном уровне (непосредственная передача данных приложением через низкоуровневый коммуникационный интерфейс), взаимодействие на уровне менеджера транзакций (последовательное выполнение транзакций) или взаимодействие на уровне СУБД (отработка запроса, написанного на языке манипулирования данными, например SQL). Один из лучших известных подходов к многоуровневой организации ПО в открытых системах - стандартизованный набор интерфейсов для распределенных вычислений модели OSF DCE.
Часто по многим причинам невозможно составить исходный текст ПП на языке программирования так, чтобы она было полностью переносима в исходных кодах. Действительно, ПП будет исполняться быстрее (иногда значительно), если ее код оптимизирован для архитектуры конкретной платформы. Кроме того, нельзя исключить ситуации, что ПП потребуется некоторый специфический сервис, для которого не существует стандарта, но который предоставляется некоторой платформой. В этих условиях ПП необходимо конструировать так, чтобы максимально локализовать платформозависимые участки кода и структурировать всю ПП таким образом, чтобы эти участки встречались в минимальном количестве модулей. Это обязательно должно быть отражено в документации разработчика. Только такой подход обеспечивает обозримость ПП и сравнительную простоту ее адаптации к конкретной аппаратно-программной платформе.
Подведем итоги. API делают зависимые от реализации характеристики АР прозрачными для ПП и объектов внешней среды. Каждый компонент имеет свой собственный набор API, через который ПП может воспользоваться его сервисами. Существование API в форме стандартов, поддерживаемых многими АР, делает возможной переносимость ПП за счет единства интерфейсов между AS и АР.
Итак, основной способ реализации свойства переносимости ПП в среде открытых систем заключается в обеспечении единства API между AS и АР, что достигается за счет структуризации и стандартизации интерфейсов прикладного программирования (API).
Переносимость данных. О достижении этого свойства можно говорить при обеспечении поддержки платформой приложений множества форматов и протоколов обмена данными между открытыми системами.
Переносимость пользователей. Цель реализации этого аспекта переносимости состоит в том, чтобы достичь легкости адаптации конечных пользователей ИС,
36
Информационная безопасность открытых систем
ее технического и обслуживающего персонала к работе со множеством разнородных АР. Сервисы платформы приложений, инструменты обслуживания системы и интерфейсы с пользователем должны быть максимально похожими (в идеале - едиными) на нескольких АР.
Таким образом, переносимость пользователей и данных достигается за счет стандартизации форматов и протоколов, составляющих EEI между АР и ЕЕ (см. рис. 1 и 2). Для пользователей эти форматы и протоколы принимают вид, например, форматов экрана, поведения объектов на экране, стиля общения с пользователем и т. п. Для данных - это форматы и структуры данных, в которых они записываются на одной платформе, хранятся на носителе и считываются на другой платформе.
1.3.2.	Классификация сервисов платформы приложений
ПО КРИТЕРИЯМ ПЕРЕНОСИМОСТИ
Рассмотрим теперь подробнее с точки зрения переносимости ПП, пользователей и данных все классы сервисов АР и соответствующих им API (за исключением сетевого сервиса и API сетевого сервиса, который не имеет отношения к обеспечению переносимости и будет нами рассмотрен позднее). Все виды сервисов удобно рассматривать по единому плану: предоставляемые услуги и выполняемые функции; API сервиса; стандарты по данному виду сервиса.
1.	Внутренние сервисы платформы предоставляются ПП платформой на основе только своих собственных, внутренних ресурсов. Эти сервисы, в отличие от других классов сервисов, никогда не предоставляются внешней среде. В данную категорию входят следующие системные сервисы и сервисы языков программирования.
Системные сервисы - это те сервисы, которые обычно обеспечиваются ядром ОС и связанными с ней низкоуровневыми подсистемами, такими, как драйверы устройств. В эту группу входят сервисы управления процессами и ресурсами, обработки ошибок и исключительных ситуаций, межпроцессного взаимодействия и др. Для поддержки переносимости требуются стандарты на спецификации API тех сервисов, которые будет обеспечивать ОС для ПП. API системных сервисов - это механизм, через который ПП запрашивают ресурсы платформы: память, файловую систему, устройства ввода-вывода. Все эти сервисы обычно обеспечиваются ядром ОС и низкоуровневыми драйверами логических устройств. В РВС такие сервисы могут обеспечиваться для ПП как локальной, так и удаленной по отношению к ПП системой. Но ПП не должны знать расположение сервиса: является ли он локальным или удаленным. ПП воспринимают РВС как единую платформу.
В группе системных можно выделить следующие сервисы:
	управления процессами и нитями;
	управления памятью;
	межпроцессного взаимодействия (IPC, interprocess communications);
	управления событиями, ошибками и исключительными ситуациями;
	управления временем;
	логического именования ресурсов;
	управления устройствами;
	управления файловыми системами;
	конфигурирования системы.
1. Стандартизация и модельное представление открытых информационных систем	37
Часть сервисов обеспечивается ОС автоматически, независимо от воли разработчика ПП и независимо от самих ПП. Это сервисы, поддерживающие базовую функциональность, целостность и устойчивость работы системы, например предотвращение возможности перекрытия сегментов команд и данных разных ПП в оперативной памяти. Они в том числе обеспечивают многопользовательские и многозадачные возможности ОС. Другая часть сервисов выполняется по вызову от ПП через API, например открытие файла, чтение, запись данных в файл и т. п.
Наиболее важным стандартом по системным сервисам для открытых систем является документ IEEE POSIX (Portable Operating System Interface for Computer Environment). Системные сервисы описаны в части 1003.1-1990 этого стандарта (утверждена в качестве международного стандарта ISO/IEC 9945-1:1990). Эта часть специфицирует вызовы к ОС со стороны ПП и требуемую функциональность при выполнении этих вызовов, номера ошибок и исключительных ситуаций, типы данных и пр. Стандарт в значительной степени основывается на реализациях Unix System V и BSD ОС Unix. Однако это не означает, что другие, не Unix-подобные ОС не могут достичь совместимости с POSIX. Они могут обеспечивать POSIX-совместимые сервисы и API в дополнение к существующим в них собственным, как это сделано, например, в OS/400, OpenEdition/MVS, Open VMS.
Х/Open разработала спецификацию для API системных сервисов, основываясь на стандарте POSIX, которая получила название XSH и является частью стандарта XPG4.
Сервисы языков программирования. ПП должны быть составлены на одном или нескольких языках программирования. Кроме того, требуется некоторый механизм, с помощью которого язык программирования мог бы запрашивать системные сервисы. Для обеспечения этих сервисов требуется спецификация самого языка программирования, API языкового сервиса и механизма вызовов, которые запрашивают системные сервисы.
Языки программирования — это средства, с помощью которых разработчик описывает требуемую функциональность и логику работы ПП. Чтобы обеспечить переносимость ПП, языки программирования должны быть однородны во всех системах, т. е. должна существовать спецификация языка программирования. Спецификация может задаваться в различных формах: от описания компилятора до формальных методов. Поскольку на практике язык программирования всегда реализуется посредством трансляторов, задать API сервисов языков программирования можно путем создания стандартов на трансляторы.
Существует большое количество языков программирования. Выбор конкретных языков для разработки той или иной прикладной программы зависит от большого числа факторов. Однако для достижения переносимости желательно, независимо от языка, использовать всегда только стандартизованные подмножества языков и избегать таких функций языка, которые являются зависимыми от конкретной платформы.
Основной международной организацией, занимающейся стандартизацией языков программирования, является ISO. Сегодня существуют стандарты или проекты стандартов на следующие языки программирования: Ada, APL, Basic, С, C++, Cobol, Fortran, Modula-2, MUMPS, Pascal, PL/1.
38
Информационная безопасность открытых систем
2.	Сервисы данных - это сервисы, связанные преимущественно с доступом, манипуляцией и обменом данными. Для достижения переносимости данных ПП должны иметь:
	единообразный метод доступа к механизмам управления данными;
	способ управления отдельными транзакциями над этими данными.
Сервисы файловой системы обеспечивают базовые сервисы для хранения, доступа и манипулирования файлами, организованными в виде потока байтов или в виде записей. Стандарты на API файловых сервисов обычно являются составной частью стандартов на функциональность ОС (например, POSIX), поэтому рассматривать их отдельно мы не будем.
Сервисы баз данных. ПП могут управлять своими собственными данными. Но часто для упрощения разработки ПП, для улучшения возможности разделения данных между ними и для создания возможности поддержки множественных, сложных типов данных ПП могут использовать базы данных (БД). БД в подавляющем большинстве случаев обычно используются не сами по себе, а в совокупности с СУБД. СУБД характеризуются применяемой в них моделью структуризации данных. Наиболее важными из них являются реляционная, иерархическая, объектно-ориентированная, сетевая и семантическая. СУБД должны обеспечивать возможности для создания, удаления, доступа и манипулирования данными при условии обязательного сохранения их целостности и безопасности. Обычно выделяют следующие сервисы БД:  доступа к данным;  управления данными;
	обеспечения целостности данных;
	манипулирования данными;
	дополнительные (создания форм, отчетов, контроля доступа, словари и пр.).
API, реализующий эти функции, должен обеспечивать возможность доступа к сервисам как со стороны ПП, так и из внешней среды, включая возможность доступа и обмена данными с другими, удаленными СУБД.
Основными и доминирующими стандартами в отношении сервисов БД являются стандарты ISO 10032:1993 - Reference Model for Data Management (Нормативная модель управления данными) и ISO 9075, определяющий SQL (Structured Query Language) - непроцедурный язык манипулирования данными для реляционных СУБД. Расширенная версия SQL определена в спецификации X/Open XPG4. Существует много других версий языка SQL.
Среди интерфейсов, позволяющих обеспечить доступ к СУБД из внешней среды (в частности, из других СУБД), распространены четыре спецификации:
1)	Remote Database Access (RDA) - стандарт ISO/IEC 9579, поддерживаемый X/Open и определяющий доступ к удаленным БД;
2)	Distributed Relational Database Architecture (DRDA) - разработка фирмы IBM, описывающая распределенную архитектуру реляционных БД;
3)	Open Database Connectivity (ODBC) - разработка фирмы Microsoft, имеющая сильную поддержку в промышленности и рассматривающая отрытое взаимодействие БД;
1. Стандартизация и модельное представление открытых информационных систем
39
4)	Integrated Database API - совместная разработка фирм Borland, Novell, WordPerfect, регламентирующая интегрированный интерфейс прикладного программирования для БД.
Сервисы обработки транзакций позволяют вычислительным системам выполнять операции с данными, требующие высокой степени целостности. Транзакция -это логическая единица работы ПП, которая должна быть либо выполнена целиком, либо не выполнена вообще. Она может включать в себя несколько или множество действий, которые рассматриваются как выполнение одной логической задачи. Основными и наиболее полными стандартами по обработке транзакций являются:
ISO 10026 - OSI Distributed Transaction Processing (OSI-TP). Этот стандарт определяет модель, сервисы и коммуникационные протоколы для распределенной среды обработки транзакций. Основными элементами в модели обработки транзакций являются ПП, менеджеры ресурсов, к которым осуществляется доступ, и менеджер транзакций, обеспечивающий основные качества транзакций: неделимость, целостность, блокирование ресурсов, неизменяемость состояния ресурсов.
X/Open Transaction Processing Group (ХТР). В него входят: нормативная модель обработки транзакций (X/Open DTP), ТХ - спецификация API между ПП и менеджером транзакций, ХА - спецификация интерфейса между менеджером транзакций и менеджерами ресурсов, которая предоставляет менеджеру транзакций возможность структурировать работу менеджеров ресурсов внутри транзакции.
Сервисы печати предназначены для упрощения печати данных ПП на различных типах носителей и просмотра их пользователем перед печатью. Эта группа включает следующие сервисы:
	описания требуемых выходных данных и параметров печати;
	поддержки очередей и множества устройств печати;
	спецификации характеристик заданий на печать;
	управления заданиями на печать;
	управления очередями заданий;
	управления шрифтами;
	контроля доступа к устройствам печати;
	поддержки учетной информации и пр.
API для сервисов печати должен включать поддержку перечисленных сервисов для ПП и ряда специальных сервисов для администрирования подсистемы печати: конфигурирование подсистемы, управление доступом к учетной информации и пр.
Среди стандартов по сервисам печати следует выделить ISO 10175 — Document Printing Application (DPA) и ISO 10180 - Standard Page Description Language (SDPL), основанный на языке PostScript, а также IEEE Pl003.7 - администрирование печати.
Сервисы обмена данными поддерживают способность перемещать данные между системами через внешнюю среду путем записи их на распознаваемый обеими системами носитель в формате, дающем возможность обеим системам одинаково интерпретировать данные. Различают два аспекта рассматриваемой проблемы: преобразование кодировки символов из одного машинного представления в другое и распознавание полученной информации ПП. Наиболее значительными являются следующие стандарты по форматам обмена данными-.
40
Информационная безопасность открытых систем
ISO 9735 - EDIFACT (Electronic Data Interchange for Administration, Commerce and Transportation) - набор стандартов, определяющих формат и структуру документов, используемых в делопроизводстве и электронном документообороте;
ISO 8613 — ODA/ODIF (Open Document Architecture/Open Document Interchange Format) - набор стандартов по структуризации и прозрачному для пользователей обмену сложными составными документами, включающими несколько типов информации: текст, рисунки, геометрическую графику;
ISO 8879 - SGML (Standard Generalized Markup Language) - язык представления структуры, содержания и формата документа.
3.	Сервисы человекомашинного взаимодействия - это важная группа сервисов, обеспечивающих возможность общения человека с компьютерной ИС и форму организации работы пользователя.
Сервисы командного интерфейса могут принимать различные формы: от простой интерпретации введенных пользователем команд до развитого командного языка, который могут использовать ПП. Эти сервисы требуют обеспечить API для ПП и интерфейс для внешней среды. По этой причине открытый командный интерфейс должен предоставлять по крайней мере следующие возможности:
	команды для манипулирования файлами и их содержимым и доступа к ним;
	команды для манипулирования директориями и доступа к ним;
	диспетчеризация команд;
	пакетный режим обработки команд;
	доступ к информации о среде пользователя;
	примитивы языков программирования для написания простых программ на командном языке.
Основной стандарт в этой области - ISO/IEC 9945-2 (основан на IEEE Pl003.2).
Сервисы текстового пользовательского интерфейса предоставляют простые средства общения пользователя с вычислительной системой при помощи ввода и отображения текстовых данных. Исторически это первая форма организации пользовательского интерфейса. Сейчас она в значительной степени вытеснена графическими интерфейсами даже в самых простых вычислительных устройствах, поэтому здесь детально не рассматривается.
Сервисы графического пользовательского интерфейса (Graphical User Interface, GUI) обеспечивают для ПП возможность создавать визуальные объекты на экранах компьютеров и манипулировать этими объектами. Пользователи должны иметь единый, легко понятный им стиль общения с вычислительной системой через такой интерфейс. На сегодняшний день GUI является общепринятой формой организации пользовательского интерфейса практически во всех вычислительных системах: от мобильных телефонов до суперкомпьютеров. АР должна иметь два интерфейса с сервисами GUI:
	API сервиса визуальных объектов (часто также называется "оконный интерфейс") позволяет ПП использовать сервисы GUI;
	EEI обеспечивает форматы и протоколы обмена данными между сервисами GUI множества систем и формирование единообразной рабочей среды для пользователей различных систем.
1. Стандартизация и модельное представление открытых информационных систем
41
Среди стандартов на открытые сервисы GUI важное значение имеют протоколы X Window - это стандарты де-факто, специфицированные и реализованные консорциумом Х/Open. Интерфейсы, основанные на этом стандарте, преобладают среди Unix-подобных платформ. На персональных системах стандартами де-факто являются API ОС Microsoft Windows и MacOS. Для других классов систем, например для мобильных телефонов, никаких стандартов на графический интерфейс пока нет, и каждый производитель следует своим собственным представлениям о его организации.
Сервисы графики поддерживают работу ПП с графическими объектами: растровую и векторную графику. Они имеют большое значение для многих типов ПП и очень развитой набор функций. API сервисов графики должен обеспечивать интерфейс для доступа ПП к этим сервисам. EEI должен поддерживать форматы и протоколы, необходимые для управления устройствами, отображения графической информации на удаленных устройствах и обмена графическими данными между системами. Ситуация со стандартизацией сервисов графики характеризуется наличием очень большого количества стандартов, важное место среди которых занимают стандарты ISO.
Сервисы разработки прикладных программ - это сервисы, которые связаны с обеспечением жизненного цикла ПП, и в особенности этапа их разработки. Переносимость понимается здесь в двух аспектах. Первый - создание переносимого прикладного ПО. Второй - обеспечение переносимости в самом процессе создания ПО, когда, например, различные модули могут создаваться на разных платформах, а компиляция, отладка, тестирование, документирование - на других платформах. Весьма перспективным направлением развития сервисов разработки ПП является создание систем автоматизации проектирования ПО — CASE (Computer Aided Software Engineering). Соответствующие стандарты в основном находятся в стадии разработки; среди уже существующих можно отметить стандарты POSIX.
4.	Межкатегориальные сервисы. Рассмотренные сервисы АР допускают довольно четкую, хотя и не единственно возможную классификацию. Следующая группа сервисов - это так называемые межкатегориальные сервисы. Они принципиально отличаются от указанных выше.
Межкатегориальные сервисы имеют определенное влияние на все остальные сервисы, которые предоставляются платформой приложений. Каждый сервисный компонент должен быть сконструирован с учетом этих межкатегориальных сервисов.
Все остальные сервисы предоставляют свои компоненты для того, чтобы межкатегориальные сервисы могли эффективно выполнять свои функции.
Сервисы поддержки национальных особенностей подразумевают учет особенностей национальных языков, форматов представления числовых величин, дат, времени и прочего в различных странах. Часто можно слышать, например, о "русификации" того или иного программного продукта или изделия: речь идет как раз о разработке соответствующего сервиса поддержки национальных особенностей. Они не имеют значительного влияния на структурную организацию системы (при их отсутствии система все равно остается работоспособной), поэтому в некоторых моделях открытых ИС они вообще не рассматриваются.
Две другие категории сервисов, напротив, очень важны для функционирования системы; с ними связано большое число стандартов.
42
Информационная безопасность открытых систем
Сервисы защиты. Их целью является защита техническими средствами информации, обрабатываемой в РВС. Сервисы защиты должны быть предусмотрены с самого начала жизненного цикла системы. Они должны быть взаимоувязаны со всеми функциями и сервисами, которые предоставляет АР. В силу большого различия в целях, функциях, размере, сложности, а также разнородности программного и аппаратного обеспечения СОД, очевидно, невозможно выработать единого критерия, когда систему следует считать безопасной.
Каждая система требует формулировки политики безопасности (security policy) для того, чтобы определить, какой уровень защищенности и какие правила разграничения доступа требуются для информации, обрабатываемой в этой системе. Для осуществления на практике этой политики могут быть применены механизмы, которые гарантируют желаемый уровень безопасности. Совокупность всех аппаратных и программных компонентов, с помощью которых в системе проводится в жизнь установленная политика безопасности (ПБ), носит название комплекса средств защиты (согласно определению Гостехкомиссии РФ), в англоязычной литературе - ТС В (Trusted Computer Base). Кроме того, должны существовать некоторые способы оценки того, насколько хорошо эти механизмы реализуют заданную ПБ. Будем рассматривать только те механизмы, которые могут быть реализованы, измерены и оценены с точки зрения АР, исключая физические, организационные, юридические и прочие средства защиты.
Для обеспечения механизмов, реализующих ПБ и оценку их эффективности, в системе требуется наличие нескольких сервисов:
	сервисы аутентификации;
	механизмы контроля доступа;
	сервисы верификации (т. е. проверки целостности и полноты ресурсов системы);
	сервисы шифрования;
	сервисы аудита;
	средства установления доверия к каналам передачи и узлам обработки данных.
Наиболее важными стандартами, относящимися к сервису защиты в контексте проблемы обеспечения переносимости, т. е. без затрагивания взаимосвязи систем, являются:
	Стандарт IEEE Pl003.6, который специфицирует функциональные требования и стандарты интерфейса системы для механизмов защиты, аудита и контроля состояния системы. Он включает интерфейсы аудита, привилегий доступа к объектам, дискреционного и мандатного контроля доступа.
	ISO/IEC 15408 - Information technology - Security techniques - Evaluation criteria for IT security (Критерии оценки защищенности продуктов и систем ИТ). Стандарт описывает модель процесса проведения оценки защищенности продуктов и систем, дает классификацию функциональных требований к механизмам защиты, специфицирует критерии, по которым производится соотнесение функций защиты, реализованных в системе, тому или иному уровню гарантий защищенности. Стандарт состоит из трех частей: введения и общей модели, функциональных требований по защите и требований гарантий защищенности.
Сервисы административного управления системой. При стандартизации сервисов административного управления (management) открытыми системами в основном исходят из предположения о том, что управление осуществляется в распреде
1. Стандартизация и модельное представление открытых информационных систем	43
ленной среде. Поэтому, рассматривая свойство переносимости, можно только перечислить требования, которым должна удовлетворять одна, отдельно взятая вычислительная система:
	управляемость конфигурации процессоров;
	инсталляция и управление ПО;
	корректный запуск и останов системы;
	лицензирование ПО;
	управляемость и конфигурирование вычислительной сети;
	управление организацией хранения данных на дисках;
	диспетчеризация заданий;
	администрирование пользователей;
	учетность пользователей и ресурсов;
	управление защитой;
	управление производительностью системы;
	управление емкостью носителей данных;
	сервисы резервного копирования и восстановления информации;
	управление нештатными ситуациями;
	управление системой печати и пр.
Этот перечень показывает, что при создании сервисов управления системой требуется учитывать, что они должны взаимодействовать практически со всеми остальными сервисами, ресурсами и объектами АР.
1.4.	Способность к взаимодействию
Конечная цель взаимодействия систем - это обеспечение прозрачного доступа к любым ресурсам, несмотря на возможную неоднородность распределенной среды. Способность к взаимодействию необходима для поддержки широкого спектра функций систем и ПП: от сравнительно простых до полнофункциональных сред, объединяющих ИС крупных предприятий. Примерами могут служить следующие функции: электронная почта, передача файлов из одной открытой системы в другую, доступ к ПП на удаленной открытой системе, разделение файлов между несколькими системами, разделяемые базы данных, сложные ПП, использующие ресурсы на различных системах, целостность которых гарантируется системой управления распределенными транзакциями.
Какая бы из этих или иных функций ни применялась в системе, способность к взаимодействию обеспечивает более эффективное использование и уменьшает дублирование ресурсов, предоставляет новые пути разработки и распространения ПП в системе.
1.4.1.	Способы реализации способности к взаимодействию
Переносимость и способность к взаимодействию скрывают от пользователя различия между системами и стандартизируют способ их восприятия пользователями, ПП или другими системами. Важно отметить, однако, что, по существу, цель сокрытия различий состоит не в полной их ликвидации или в выравнивании, а, наоборот, в использовании уникальных возможностей и характеристик каждой индивидуальной системы. Пользователю только представляется образ единой системы.
44
Информационная безопасность открытых систем
Способность к взаимодействию обеспечивает несколько дополнительных преимуществ по сравнению с переносимостью.
	Она позволяет объединять существующие системы с новыми, сохраняя преемственность и инвестиции, уже вложенные в ИС.
	Она позволяет разрабатывать распределенные ПП. Это означает, что каждая из функций ПП может быть выполнена именно на той платформе, которая наилучшим образом подходит для этого.
	За счет прозрачного разделения ресурсов среды она создает такие условия для пользователя, что все ресурсы системы кажутся ему доступными локально.
Как уже отмечалось ранее, способность к взаимодействию достигается посредством:
•	соединения системы коммуникационными средствами, которые позволяют осуществлять передачу данных между системами;
	введения в систему набора дополнительных сервисов, которые используют коммуникационный сервис вычислительной сети.
Действительно, когда системы имеют средства связи между собой: коммуникационные средства внешней среды, сетевые сервисы платформы приложений, они таким образом обеспечены средствами обмена сообщениями. Сетевые сервисы не являются специфичными для какой-либо прикладной программы или типа ПП, работающих в системе. Это общецелевые сервисы, такие, как адресация, маршрутизация сообщений, обеспечение надежной их доставки и т. п.
Кроме того, для удовлетворения требований различных ПП необходим набор дополнительных сервисов. Но для того чтобы выполнять функции, которые ожидают от ПП конечные пользователи, прикладные программы должны "уметь" идентифицировать и распознавать среди всех передаваемых сообщений информацию, относящуюся к той или иной ПП. К примеру, при передаче файла сообщения должны содержать имя файла, его атрибуты и данные, содержащиеся в файле. При выполнении распределенной транзакции менеджеры транзакции будут обмениваться управляющей информацией о начале и конце транзакции, а также об операциях, проведенных над данными каждым из них. Очевидно, для того, чтобы системы могли взаимодействовать на уровне ПП, необходима стандартизация таких сообщений, т. е. описание форматов и протоколов, которые определяют синтаксис сообщений и правила осуществления обмена.
Таким образом, приходим к необходимости описания "комплекта", набора протоколов различных уровней (как видно из предыдущих рассуждений - по крайней мере двух).
Под протоколом принято понимать точно определенную последовательность действий, с помощью которой два или более логических объекта одного уровня совместно решают некоторую общую задачу. Иными словами, протоколы определяют логику взаимодействия удаленных логических объектов одного уровня.
Подобные многоуровневые наборы протоколов часто называют стеками протоколов. Основной принцип описания таких протоколов - информация, имеющая значение для протокола определенного уровня, переносится протоколом нижележащего уровня безотносительно к содержанию этой информации.
Вернемся к базовой модели ИС, введенной в п. 1.2.1. При рассмотрении переносимости обсуждались два типа интерфейсов АР: API и EEI с пользователями и внеш-
1. Стандартизация и модельное представление открытых информационных систем
45
ними объектами данных. С точки зрения способности систем к взаимодействию имеет значение другой компонент - EEI между АР и коммуникационными средствами внешней среды. Коммуникационные средства позволяют одной данной системе рассматривать все другие системы как часть внешней среды (рис. 6).
AS
АР
Сервисы человеко-машинного взаимодействия
Сервисы данных
Внутренние сервисы платформы
AS
Сетевые сервисы
Рис. 6. Базовая модель взаимодействующих систем (пунктиром обозначено взаимодействие распределенных сервисов)
Чтобы добиться способности к взаимодействию, необходимо стандартизировать форматы и протоколы обмена сообщениями через EEI, используя коммуникационные средства внешней среды. Часть EEI, которая управляет такими сообщениями, носит название коммуникационного интерфейса. Он включает в себя сетевые протоколы и высокоуровневые прикладные протоколы, необходимые для поддержки распределенных сервисов. Коммуникационный интерфейс - это единственный интерфейс, где две (вероятно, различные) системы непосредственно контактируют друг с другом. Он позволяет платформам приложений осуществлять взаимный доступ к ресурсам и предоставлять сервис друг другу, используя сетевые и соответствующие прикладные протоколы. Способность к взаимодействию обращается к таким функциональным возможностям, которые не затрагивает переносимость. Так, она организует доступ к тем сервисам АР, к которым пользователь или ПП не имеют прямого доступа через API. При этом не имеет значения, как именно реализуется внутри той или иной системы конкретный вид сервиса. Он вполне может использовать внутренние особенности и преимущества организации системы.
Заметим, что для достижения способности к взаимодействию нет необходимости стандартизировать API — только соответствующие форматы и протоколы. Также для этого не нужны стандарты на те сервисы, которые являются внутренними для АР, и те части EEI, которые взаимодействуют с внешними объектами данных и пользователями. Однако из этого правила есть исключение: стандартизация API сетевых сервисов способствует обеспечению взаимодействия на более высоком уровне. Тогда появляется возможность ввести в состав платформы прикладные программы, работающие с сетевыми сервисами, а их услугами уже могут пользоваться остальные ПП.
Установив необходимость многоуровневого взаимодействия открытых систем, рассмотрим более подробно основные преимущества такого подхода.
46
Информационная безопасность открытых систем
	Многоуровневая организация есть частный случай модульности - это позволяет легче понимать структуру системы.
	Протоколы различных уровней в стеке и виды передаваемой ими информации в основе своей независимы друг от друга. Несмотря на то что каждый уровень выполняет свою работу по указанию вышестоящего уровня, способ выполнения запроса не имеет значения для сделавшего запрос.
	Уровневые сервисы всегда включают некоторый сервис по транспортировке данных, который предоставляется верхним уровням. Это означает, что, хотя каждому объекту некоторого уровня кажется, что он взаимодействует с объектом того же уровня, на самом деле перемещение данных по всем уровням, кроме самого нижнего, происходит "вертикально". И только нижний уровень действительно перемещает данные "горизонтально".
Перечислим основные принципы многоуровневого взаимодействия.
Взаимодействие по принципу сервисов и протоколов. Каждый уровень взаимодействия предоставляет сервисы уровню, расположенному над ним, и сам, в свою очередь, пользуется сервисами уровня, расположенного под ним. Сервис определенного уровня доставляется посредством протокола этого уровня. Уровень, запросивший сервис, не видит протокола нижнего уровня. Таким образом, протоколы образуют каскад сервисов, предоставляемых с верхнего уровня до нижнего.
Мультиплексирование. Множество объектов верхнего уровня может параллельно использовать сервис нижнего уровня. Множество сервисов различного качества и различной функциональности может предоставляться на каждом уровне по соглашению между партнерами.
Свобода выбора протокола. Каждый уровень может выбирать свой собственный протокол независимо от других уровней. Кроме того, четкое разделение функций между уровнями допускает дальнейшую декомпозицию уровня на подуровни, вставку протоколов "поверх" и "внизу" уровня.
Качество сервиса. Каждый отдельный уровень может предлагать альтернативные возможности реализации сервиса, гарантированно определяющие некоторые его свойства или параметры, например скорость, надежность соединения.
Адресация. Любая форма коммуникации требует какой-либо подходящей формы адресации. На каждом уровне формат адресации является частью соответствующего протокола.
Виды соединений. Различают два вида организации взаимодействия в протоколах: с установлением соединения и без установления соединения. В первом случае для передачи серии сообщений устанавливается выделенное соединение, которое обеспечивает подтверждение доставки, обнаружение ошибок, повторную передачу и восстановление порядка следования сообщений. Примером связи с установлением соединения являются услуги телефонной сети. Во втором случае каждое сообщение передается независимо от остальных, содержит полную информацию об адресах отправителя и получателя и в принципе может передаваться по различным маршрутам. В общем случае такая форма передачи сообщений является ненадежной, но быстрой. Она может приводить к потере, возникновению ошибок в сообщениях, изменению порядка их следования или к повторным передачам. Это, однако, может быть выявлено и исправлено средствами верхних уровней. Пример такой связи — почтовая служба.
1. Стандартизация и модельное представление открытых информационных систем
47
Ограниченность связей. Объекты взаимодействуют между собой на одном уровне "горизонтально" по протоколам, потоки данных движутся "вертикально" (за исключением самого нижнего уровня). Каждый уровень добавляет управляющую информацию, специфичную для протокола этого уровня. На самом нижнем уровне, таким образом, передается сложный конгломерат данных. Каждый уровень при такой форме связи "видит" только смежные с ним уровни.
Классическим примером многоуровневой модели взаимодействия вычислительных систем является семиуровневая модель взаимосвязи открытых систем, описанная в стандарте ISO/IEC 7498 - Information technology - Open Systems Interconnection -Basic Reference Model, известная как модель OSI (п. 1.5.1).
Кроме OSI, существует еще большое количество многоуровневых моделей взаимодействия вычислительных систем и соответствующих им стеков протоколов: DNA (Digital Network Architecture), AppleTalk, SNA (System Network Architecture), TCP/IP [10] и др. Вследствие несовместимости между различными моделями добиться способности к взаимодействию на практике существенно более сложная задача, чем это может показаться теоретически. Для этого требуется организовать "мосты" между различными моделями (стеками протоколов) и сделать их существование прозрачным для пользователей и ПП. Более того, исторически не существовало единого и четкого разделения протоколов на указанные уровни. Поэтому различные стеки протоколов не обязательно согласуются между собой по разбиению на уровни, выполняемым на этих уровнях функциям и даже по числу уровней. Все это порождает определенную зависимость протоколов верхних уровней от нижних для каждого конкретного стека протоколов.
Вторым необходимым условием взаимодействия систем, как уже отмечалось, является введение в систему набора распределенных сервисов ПП, которые используют сетевые сервисы АР и расширяют таким образом свои собственные сервисы. Распределенные сервисы удобно рассматривать, придерживаясь той же классификации, которая применяется и для сервисов локальной платформы:
	распределенные сервисы платформы;
	распределенные сервисы данных;
	распределенные сервисы человекомашинного взаимодействия.
В качестве примеров сервисов из соответствующих групп можно привести вызов удаленных процедур, передачу файлов и удаленный вход в систему.
Дополнительно рассматриваются межкатегориальные сервисы. Такое представление согласуется с концепцией единой РВС, где все аспекты взаимодействия между отдельными системами регулируются внутри АР.
Часто протоколы, соответствующие в стеке коммуникационных протоколов сетевым сервисам и распределенным сервисам ПП, называют соответственно транспортными провайдерами (transport provider) и транспортными пользователями (transport user). Первые обеспечивают базовые, не зависящие от приложений функции по доставке сообщений через сеть. Вторые строятся на сетевых сервисах и расширяют сервисы АР в распределенных системах. В коммуникационных моделях они примерно соответствуют или отождествляются с самими ПП.
Еще одна существенная проблема, связанная с обеспечением способности открытых систем к взаимодействию, необходимость организации распределенных вычис
48
Информационная безопасность открытых систем
лений между компонентами, составляющими уровень транспортного пользователя. Известно несколько моделей организации распределенных вычислений (рис. 7):
	клиент-сервер;
	хостовая (host-based);
	ведущий-ведомый (master-slave);
	иерархическая;
	одноранговая (peer-to-peer);
	модель управления распределенными объектами (distributed object management model).
Модель клиент-сервер
Хостовая модель
Модель ведущий-ведомый
Рис. 7. Модели распределенных вычислений (начало)
1. Стандартизация и модельное представление открытых информационных систем
49
Одноранговая модель
Платформа 1	Платформа 2
Модель управления распределенными объектами Сервер
Функции управления данными
Логика ПП
Клиент
Функции представления данных
Клиент
Функции управления данными
Логика ПП
Рис. 7. Модели распределенных вычислений (окончание)
Цель введения этих моделей заключается в том, чтобы составить из программных и аппаратных компонентов РВС работоспособную конструкцию. Рассмотрим их подробнее.
Модель клиент-сервер означает обработку запросов, подаваемых компонентом открытой системы, называемым клиентом (т. е. просителем услуг), компонентом-сервером (т. е. поставщиком услуг), который возвращает результаты исполнения запроса клиенту. И клиент и сервер физически могут быть реализованы аппаратно, программно, микропрограммно.
Клиент-серверная модель организации вычислений получила очень широкое распространение: она является самой оптимальной в условиях неоднородной распределенной вычислительной среды с дисбалансом вычислительных мощностей. Однако клиент-серверная обработка предъявляет и определенные архитектурные требования:
50
Информационная безопасность открытых систем
наличие надежной связи между клиентами и серверами, разделение логики ПП между клиентом и сервером, координация взаимодействий между клиентом и сервером, инициируемых клиентом, контроль сервера над сервисами и данными, которые запрашиваются клиентами, разрешение сервером конфликтующих запросов клиентов.
Основные преимущества клиент-серверных вычислений заключаются в возможности широкого внедрения в РВС относительно маломощных вычислительных систем, снижения сетевого трафика (так как обработка данных приближается к источнику данных), использования графического пользовательского интерфейса, поддержки стандартов открытых систем.
Клиент-серверные вычисления в распределенной вычислительной среде прочно связаны с концепцией middleware. Этот термин является сокращением и может быть интерпретирован как ПО среднего слоя. Идея дополнения системного ПО этим компонентом возникла из естественного стремления сократить трудоемкость разработки прикладного ПО для работы в клиент-серверной модели. Middleware - это соединяющий уровень коммуникационного ПО между физической сетью передачи данных и приложениями пользователя, выполняющего функции транспортного пользователя, в общем случае эквивалентное уровням 5 и 6 модели OSI (п. 1.5.1). Со стороны ПП это ПО содержит упрощающие программирование высокоуровневые API, которые "экранируют" разработку прикладного ПО от сложных коммуникационных протоколов на нижних уровнях. Используя инструменты и продукты middleware, программисты могут сфокусироваться на создании собственно логики ПП, не разрабатывая при этом сложные коммуникационные протоколы и интерфейсы. С появлением более сложных моделей открытых распределенных вычислений и постоянным расширением состава ПО, который можно отнести к среднему уровню, концепция middleware стала "поглощаться” этими моделями.
Хостовая модель вычислений исторически связана с развитием систем централизованной обработки данных на базе мейнфреймов и суперкомпьютеров и потому сохраняет актуальность и сегодня, так как мейнфреймы получают новое развитие на базе современных технологических возможностей. В этой модели все функции как по управлению данными, исполнению логики ПП, так и по представлению данных для пользователя выполняются на платформе - хосте, а присоединенный к нему терминал является только техническим средством работы пользователя с хостом, не выполняя никаких функций по обработке данных. (Определение хоста вводится далее.)
Модель ведущий-ведомый занимает в некотором роде промежуточное положение между двумя названными выше: ведущая платформа (master) по команде передает часть своих функций для выполнения их ведомой платформой (slave).
Иерархическая модель является обобщением модели клиент-сервер на случай, когда один и тот же компонент открытой системы является клиентом для одних и сервером для других компонентов, образуя таким образом многоярусную, иерархически соподчиненную структуру взаимодействующих компонентов.
Одноранговая модель (peer-to-peer) предполагает полное равноправие взаимодействующих компонентов, когда каждый из них может быть и сервером и клиентом.
Модель управления распределенными объектами (distributed object management model) тесно связана с концепцией объектно-ориентированной обработки данных. И клиенты и серверы представляются в форме объектов, взаимодействующих между собой через стандартный интерфейс. Вызовы удаленных процедур заменяются сооб
1. Стандартизация и модельное представление открытых информационных систем
51
щениями, посылаемыми объектам. Сервисы, предоставляемые отдельными открытыми системами остальным системам, также трактуются как объекты. Запрашивающему нет необходимости знать детали того, как сконфигурированы объекты. Объектно-ориентированный подход требует введения в РВС следующих элементов:
	механизма диспетчеризации сообщений;
	механизма координации доставки сообщений;
	ПП и сервисов, которые поддерживают интерфейс пересылки сообщений (messaging interface).
1.4.2.	Классификация сервисов платформы приложений
ПО КРИТЕРИЯМ СПОСОБНОСТИ К ВЗАИМОДЕЙСТВИЮ
Проведем теперь функциональную декомпозицию модели ИС и подробно рассмотрим номенклатуру сервисов платформы приложений, которые обеспечили бы максимально полную способность к взаимодействию между' открытыми системами. При этом будем придерживаться плана рассмотрения сервисов платформы, аналогичного тому, что был использован ранее при классификации сервисов по критериям переносимости.
1	. Сетевые сервисы. Функция сетевых сервисов - предоставление общих услуг по транспортировке между открытыми системами сообщений, посылаемых ПП. Сетевые сервисы могут быть, в свою очередь, подразделены на две группы согласно тому, видимы или нет они для транспортных пользователей.
К сервисам, видимым ПП напрямую, относятся: установление и разрыв соединения с партнером, управление качеством сервиса для передачи данных, выбор функций сообщения о состоянии сети. Но даже эти сервисы могут быть скрыты от ПП в некоторых формах коммуникаций, например при удаленном вызове процедур - RPC (Remote Procedure Call). Другие сервисы, невидимые для ПП, относятся к нижним уровням стека протоколов. Они обычно связаны с физическими аспектами сети, включая следующие:
	сообщение об ошибках и восстановление после ошибок;
•	сегментация сообщений в пакеты установленного в сети размера и их повторная сборка;
	директориальные сервисы, которые обеспечивают преобразование символических имен сетевых ресурсов в адреса;
•	многопутевая маршрутизация, которая позволяет сообщениям передаваться различными маршрутами от точки отправления до точки получения;
	физический доступ к узлам сети;
	управление потоками, включая средства обнаружения состояний переполнения и регулирования интенсивности трафика.
Нижний уровень модели (транспортный провайдер) часто рассматривают как состоящий из двух подуровней [11].
Первый — уровень сети передачи данных — это нижний уровень, ответственный за управление трафиком, передающимся от узла к узлу внутри единичной физической сети передачи данных (subnetwork). Примерами сетей передачи данных являются сети Х.25, локальные сети стандартов IEEE 802.x, Frame Relay, ATM, двухточечные линии связи. Сети передачи данных можно классифицировать по следующим признакам:
52
Информационная безопасность открытых систем
	по используемой технологии передачи данных: с образованием соединений, с разделением канала;
	по территориальной распределенности и связанным с этим особенностям организации: локальные (LAN), глобальные (WAN), городские и сети среднего уровня (Metropolitan Area Network, MAN).
Существует большое количество стандартов по технологиям, связанным с организацией сетей передачи данных. Однако они не имеют прямого отношения к достижению -основных качеств открытой среды: переносимости и способности к взаимодействию. Скорее они служат отправной точкой для разработки таких стандартов.
Второй - межсетевой уровень — это верхний (из двух) уровень транспортного провайдера, ответственный за формирование единой логической сети (internetwork) из совокупности физических сетей передачи данных (subnetworks). Этот уровень обеспечивает формирование единого адресного и маршрутного пространства, которое накладывается на все нижележащие сети передачи данных, но в то же время не зависимо ни от одной определенной сети передачи данных. Межсетевой уровень позволяет строить единую, прозрачную для пользователя логическую сеть из множества взаимно соединенных локальных и глобальных сетей.
Конечной целью объединения сетей является обеспечение надежной и прозрачной доставки сообщений между любыми открытыми системами через множество промежуточных систем, независимо от объединяемых сетей. Другими словами, формируется транспортная система, которая компенсирует любые различия во входящих в нее сетях, чтобы обеспечить необходимый уровень сервиса для ПП. Иногда такой компенсации не требуется, но транспортная система всегда обеспечивает не зависящий от сети передачи данных коммуникационный механизм между двумя оконечными взаимодействующими системами. С точки зрения ПП она гарантирует, что сообщения успешно достигнут другой системы.
Модели взаимодействия открытых систем и соответствующие им стеки протоколов, такие, как OSI, SNA, DNA, не специфицируют API к своим сетевым сервисам. Это и не требуется: способность к взаимодействию уже может быть обеспечена за счет единства протоколов и форматов данных. Однако определение и использование стандартных API для сетевых сервисов содействует упрощению разработки и развертывания в системе распределенных ПП, так как обеспечивает более высокоуровневое взаимодействие между открытыми системами. Этим, в частности, объясняется широкое распространение протоколов TCP/IP.
Наиболее известными стандартами на API для доступа к транспортным сервисам являются:
	интерфейс сокетов (socket interface), берущий начало из версии Unix BSD;
	XSOCKET, стандартизованный X/Open;
•	ТЫ (Transport Layer Interface), частично основанный на сокетах, а частично на стандарте ISO 8072 по транспортному сервису;
	XTI (X/Open Transport Interface), который базируется на TLI, но может поддерживать несколько стеков протоколов: TCP/IP, NetBIOS, OSI, SNA.
Несколько иной подход представляет технология MPTN (Multiprotocol Transport Networking), разработанная IBM и принятая X/Open. Она компенсирует неоднородности в функциональности различных транспортных протоколов за счет введения дополнительного уровня над транспортным - CTS (Common Transport Semantics).
1. Стандартизация и модельное представление открытых информационных систем
53
MPTN позволяет "смешивать" в произвольной комбинации транспортные провайдеры и транспортные пользователи, делая ПП независимыми от применяемых сетевых протоколов. Следовательно, прикладные программы могут использовать транспортную систему, отличную от той, которая ассоциирована с высокоуровневыми прикладными протоколами.
2. Сервисы распределенной платформы. Любая прикладная программа включает три компонента: логику, сервисы данных и сервисы представления информации. Логика выполняет специфические для конкретной прикладной программы функции и реализуется с помощью системных сервисов и сервисов языков программирования. Сервисы данных ПП выполняют операции ввода-вывода, требуемые ПП. Сервисы представления ПП управляют взаимодействием с пользователем. Эти компоненты эквивалентны соответствующим сервисам в рассматриваемой модели. Если прикладная программа становится распределенной, существует три возможности ее "расщепления" согласно перечисленным компонентам.
Разделение сервиса представления. Распределение прикладной программы заключается в распределении сервиса представления - все остальные компоненты работают на одной локальной платформе. В этом случае программа не осведомлена о том, что она работает в распределенной среде, так как имеет доступ к сервисам представления на своей локальной платформе. Распределенный характер прикладной программы выражается, например, в процедуре удаленного входа в систему (remote login) или в распределенном графическом интерфейсе пользователя (GUI).
Разделение сервиса данных. В этом случае прикладная программа также не имеет представления о том, что данные или ресурсы являются удаленными. Программа имеет доступ к сервисам данных так, как если бы они были для нее локальными.
Разделение логики прикладной программы. В этом случае различные функции ПП выполняются на удаленных друг от друга платформах, поэтому для взаимодействия между компонентами ПП требуется та или иная форма коммуникаций. Эта форма распределения наиболее значима для РВС, так как позволяет достичь наибольших преимуществ (выигрыш в производительности, параллельная обработка, наиболее полная загрузка процессоров и т. д.).
Все три случая имеют схожие требования, и все так или иначе используют коммуникационные сервисы. Различаются они только в том, что в первых двух случаях коммуникационные возможности задействуются системой, а в последнем случае их использование является заботой ПП. Распределенная прикладная программа в последнем случае, очевидно, сталкивается с необходимостью определенной координации функционирования своих компонентов. Основными требованиями со стороны распределенных ПП являются обеспечение возможности связи между' компонентами ПП, обеспечение возможности обнаружения компонентов в РВС и обеспечение синхронизации работы компонентов ПП.
Сервисы распределенной платформы - это расширения внутренних сервисов платформы, рассмотренных при обсуждении классификации сервисов по критерию переносимости, перенесенные в распределенную среду. Они предоставляют основные механизмы распределения ПП, обеспечивают функции по координации распределенной работы ПП. Часто они также носят название сервисов распределения. Сообразно трем основным классам ПП в распределенной среде можно выделить три
54
Информационная безопасность открытых систем
класса таких сервисов: сервисы межпроцессного взаимодействия, сервисы именования ресурсов и сервисы времени.
Сервисы межпроцессного взаимодействия. Существует три основные модели организации взаимодействия между' программами.
Диалоговая (conversational) модель. 1III общаются друг с другом посредством посылки вызовов: "установить соединение", "послать сообщение", "принять сообщение", "разрушить соединение" и т. п. Это форма связи с установлением соединения.
Наиболее известными стандартами, в которых определяется диалоговая модель коммуникаций, являются ISO 10026 - OSI Distributed Transaction Processing и архитектура АРРС (Advanced Program-to-Program Communication) фирмы IBM.
Удаленный вызов процедур (Remote Procedure Call, RPC). Эта модель является расширением традиционного метода вызова процедур в языках программирования. Удаленный вызов процедуры заключается в однократном обмене сообщениями между' вызывающей и вызываемой процедурами, как при локальном вызове. При этом использование коммуникационных сервисов происходит невидимо для обеих процедур. RPC может иметь место как с установлением соединения, так и без него. Но с точки зрения ПП он является синхронной формой коммуникаций, так как оба партнера должны быть активны в одно и то же время, а вызывающая процедура приостанавливается на время выполнения удаленной. Эта форма коммуникаций обычно ассоциируется с моделью вычислений клиент-сервер.
Основными стандартами по удаленному вызову процедур являются Sun RPC, OSF RPC как основа OSF DCE (Distributed Computing Environment) и OSI RPC - стандарт ISO 11578.
Очереди сообщений (message queuing). При этой форме взаимодействия один из процессов помещает свои сообщения в очередь, другой извлекает их оттуда. Это форма коммуникаций без установления соединения.
Существует проект международного стандарта по этому виду коммуникаций -ISO/IEC DIS 10026-7 Information technology - Open Systems Interconnection -Distributed transaction processing - Part 7: Message queuing.
Сервисы именования ресурсов. Эти сервисы и директориальные сервисы являются критическими для распределенной среды, так как размещение и обнаружение ресурсов в ней намного сложнее, чем в локальной системе.
Необходимым условием является присвоение всем объектам, ресурсам и ПП в распределенной среде уникальных глобальных имен. Такие имена должны быть аппаратно- и архитектурно-независимыми. Другими словами, необходима единая логическая схема именования ресурсов, с помощью которой можно обращаться к любым объектам или ресурсам, существующим в системе.
Другое требование состоит в том, что директориальный сервис должен самостоятельно отображать логические имена на реальные адреса объектов. Для этого необходимо определять местоположение объекта и предоставить подходящий коммуникационный протокол для доступа к нему.
Среди схем именования ресурсов наибольшее значение имеют схема ISO, являющаяся частью модели OSI, и доменная система имен {Domain Name System, DNS), используемая в Интернете (RFC 1034, RFC 1035). Основным стандартом на директориальный сервис является рекомендация Х.500 и ее эквивалент ISO 9594. X/Open специфицировала стандарт на API для доступа к директориальному сервису Х.500 -
1. Стандартизация и модельное представление открытых информационных систем
55
XDS (X/Open Directory Services). Спецификация OSF DCE Directory Service обеспечивает механизм для совмещения обоих стандартов: DNS и Х.500.
Распределенные сервисы времени. В локальной системе обычно существует единственный системный таймер, услугами которого могут пользоваться все ПП. Однако в распределенной среде, состоящей из множества вычислительных систем, различные системы вследствие многих причин (разница хода часов, задержки передачи в сети и пр.) могут иметь различные значения текущего времени. Для обеспечения нормальной работы ПП иногда необходима синхронизация показаний таймеров на всех системах, входящих в распределенную среду. Существуют следующие стандарты де-факто на распределенный сервис времени: DCE Distributed Time Service и RFC-1119 (Network Time Protocol).
Реализация сервисов распределенной платформы отличается от реализации внутренних сервисов локальной платформы приложений. Если в локальной среде они представляются соответствующими элементами ПО: ОС, трансляторами, СУБД и т. п., то в распределенной среде соответствующие сервисы реализуются специально назначенными для выполнения определенных функций аппаратно-программными системами - серверами, например директориальными серверами, серверами времени. Система может выполнять роль сервера для нескольких сервисов одновременно, а может одновременно служить сервером для одного сервиса и быть клиентом другого.
3. Распределенные сервисы данных соответствуют разбиению ПП по сервисам данных. Они являются естественным расширением соответствующих сервисов в локальной среде. Выделяют следующие группы сервисов данных: сервис обмена данными, сервис передачи файлов, сервис управления сообщениями (электронная почта), распределенный файловый сервис, сервис распределенных баз данных, распределенный сервис печати, сервис распределенной обработки транзакций.
Сервис обмена данными. Общим условием для реализации всех вышеперечисленных сервисов является требование представления данных в едином формате -синтаксисе, понятном всем ПП и всем платформам. Это дает возможность передавать и корректно интерпретировать взятые с одной платформы данные на другой платформе. Основными стандартами по синтаксису данных являются ISO/IEC 8824 -Information technology — Open Systems Interconnection — Specification of Abstract Syntax Notation One (ASN.l) и ISO/IEC 8825 - Information technology - Open Systems Interconnection - Specification of Basic Encoding Rules for Abstract Syntax Notation One (ASN.l).
Сервис передачи файлов. Передача файлов является одним из основных способов разделения данных между' взаимодействующими системами. Сервис передачи файлов подразумевает, что всякий раз, когда прикладная программа требует данные, которые, как оказывается, хранятся на другой системе, файл с этими данными целиком копируется из удаленной системы в локальную. Прикладная программа может работать с переданным файлом и при необходимости имеет возможность возвратить его обратно, внеся в локальную систему изменения в содержании файла. Сервис передачи файлов в распределенной среде может сталкиваться с существованием множества различных файловых систем и методов доступа к файлам.
Обычно сервис передачи файлов подразумевает, что существует пользователь или прикладная программа, которые управляют передачей файла между двумя системами. Этот пользователь, как правило, размещается на системе-получателе. Передача
56
Информационная безопасность открытых систем
файла включает два вида взаимодействия: управляющие операции, которые выполняются пользователем или прикладной программой (контроль доступа, выбор файла, управление файлами и атрибутами файлов) и протокол передачи файлов. Файловые системы обеих взаимодействующих систем должны представляться как некоторое условное хранилище файлов в форме, одинаково интерпретируемой обеими системами. Для доступа к реальным данным каждая система должна спроецировать этот образ на реальную файловую систему.
Существует два основных стандарта по сервису передачи файлов.
1. Стандарт де-юре ISO 8571 - Information processing systems - Open Systems Interconnection — File Transfer, Access and Management (FTAM).
2. Стандарт де-факто RFC 959 - File Transfer Protocol (FTP), используемый в стеке протоколов TCP/IP.
Стандарты ISO по сравнению со стандартами RFC обладают значительно большей функциональностью, но дополнительные функции приводят к значительно более объемному и сложному программному коду при реализации и большим накладным расходам при исполнении этого кода системой. К тому же на практике обычно используется лишь небольшое подмножество этих функций. Это замечание остается справедливым и при сравнении многих других соответствующих стандартов ISO и RFC.
Сервисы управления сообщениями. Эти сервисы имеют следующие характерные черты.
Для доставки сообщений используется метод хранение и продвижение (store-and-forward). Это означает, что пользователи не устанавливают между сбой непосредственно сеанс связи, а взаимодействуют с сервисом управления сообщениями, передавая ему поручения по пересылке сообщений. Локальная и удаленные системы совместно несут ответственность за посланное отправителем сообщение и гарантируют его доставку, даже если в текущий момент отсутствует соединение с удаленной системой-получателем или она является неактивной. Сервис управления сообще- ниями -асинхронная форма коммуникаций без установления соединения.
В отличие от сервиса передачи файлов отправитель и получатель здесь - это конечные пользователи (люди или ПП), а не файловые системы.
•	Сервис предусматривает специальные возможности для групповой и широковещательной рассылки сообщений, ведения адресной книги и пр.
	Сервис предусматривает пересылку различных видов сообщений: обычного текста, файлов, сложных документов, факсов и пр.
	Сервис управления сообщениями не интересуется содержанием передаваемых сообщений.
Термин "управление сообщениями" означает способность сервиса обеспечивать прозрачную пересылку по ИС любого сообщения, независимо от конкретного его типа. Интерпретация и использование сообщений возлагается на ПП, которые пользуются этим сервисом. Частным случаем систем управления сообщениями является электронная почта. Она задумана как аналог обычной почтовой системы для работы с электронными документами и используется для доставки текстовых сообщений (возможно, с присоединенными к ним файлами) от одного пользователя (или прикладной программы) к другому.
1. Стандартизация и модельное представление открытых информационных систем
57
Существуют две основные группы стандартов по сервису управления сообщениями.
1. Стандарт де-юре ISO/IEC 10021 - Message Handling Systems (MHS) и их эквивалент - серия стандартов Х.400.
2. Стандарты де-факто RFC 821, RFC 822 - протокол Simple Mail Transfer Protocol (SMTP), используемый в стеке протоколов TCP/IP; для адресации SMTP обращается к доменной системе имен DNS.
Распределенные файловые сервисы обеспечивают прозрачный доступ к файлам независимо от их физического расположения в РВС. Основное их отличие от сервиса передачи файлов - в том, что вместо передачи целого файла от одной системы к другой передаются только те его части, которые необходимы для выполнения конкретной операции. Распределенные файловые сервисы часто также называют прозрачным доступом к файлам (transparent file access, TFA). Распределенные файловые сервисы могут обеспечивать такие возможности, как управление параллельным доступом, контроль доступа и пр.
Основным стандартом де-юре является ранее упомянутый OSI FTAM, определяющий в том числе возможность прозрачного доступа к файлам. Среди стандартов де-факто наибольшее значение имеет SunNFS, используемый с протоколом TCP/IP, OSF/DCE Distributed File Service (DFS), распределенная файловая система UNF (Universal File System) сетевой ОС NovellNetWare.
Сервисы распределенных баз данных. Рассмотренные до сих пор сервисы обеспечивают доступ к файловым системам, считая файлы неструктурированным набором данных, где любая интерпретация содержания файлов осуществляется самой прикладной программой. Базы данных обеспечивают для ПП функции более высокого уровня, определяя внутреннюю структуру данных и высокоуровневый механизм для хранения и доступа к данным, не касаясь их физической организации.
При организации сервисов баз данных в распределенных средах необходимо решить проблемы пересылки запросов к БД и получения ответов через множество разнородных систем, а также согласовывать состояние БД в различных системах. Данные, которые запрашивает ПП, могут либо располагаться в локальной системе, либо в удаленной, либо быть распределенными, т. е. составляться из данных, находящихся в нескольких системах. Имея в виду различия в моделях и структуре БД и множество различных СУБД, сервис должен обеспечить стандартизованную и прозрачную работу пользователя с распределенными БД.
Основными стандартами по данному сервису являются:
1. ISO/IEC 9579 - Information technology - Open Systems Interconnection - Remote Database Access.
2. Distributed Relational Database Architecture (DRDA) - спецификация, разработанная фирмой IBM.
Распределенные сервисы печати организуют работу пользователя по печати документов в распределенных средах, обеспечивая гот же набор услуг, что и в локальной системе. Основной стандарт по распределенному сервису печати - ISO/IEC 10175 - Information technology - Text and office systems - Document Printing Application (DPA).
Сервисы распределенной обработки транзакций. Ранее уже рассматривалась модель распределенной обработки транзакций и указывалось, что для обеспечения
58
Информационная безопасность открытых систем
переносимости необходима спецификация интерфейсов элементов модели между собой и с ПП. С точки зрения взаимодействия открытых систем необходима стандартизация того элемента, который обеспечивает связь между системами, участвующими в транзакции, — менеджера транзакций. Основным международным стандартом является ISO 10026 - Information technology - Open Systems Interconnection - Distributed transaction processing (OSI-TP). Организация X/Open стандартизировала API для доступа ПП к сервису, удовлетворяющему стандарту OSI-TP. Этот интерфейс носит название ХАР-ТР.
4. Распределенные сервисы человекомашинного взаимодействия соответствуют разбиению распределенных ПП в части сервиса представления. Основная задача состоит в том, что прикладная программа и пользователь должны казаться друг другу расположенными локально, несмотря на различия в системах. Поддержка человекомашинного взаимодействия в неоднородных средах требует стандартного набора протоколов для переноса данных сервиса представления.
Распределенные сервисы человекомашинного взаимодействия характеризуются тем, что часть функций представления выполняется локально в системе пользователя, а часть - удаленно, в той системе, где выполняется прикладная программа. Каждый из распределенных сервисов человекомашинного взаимодействия соответствует аналогичному локальному сервису, но принимает иные формы, а именно:
	локальный командный интерфейс превращается в интерфейс для удаленного исполнения команд (распределенную оболочку);
	символьный интерфейс пользователя обычно превращается в сервис удаленного терминала, или в сервис удаленного входа в систему;
*	GUI, обеспечивающий доступ к ПП через сеть, носит название распределенного оконного интерфейса.
Распределенная оболочка. В распределенной среде пользователь должен иметь командный доступ к сервисам операционных систем, отличных от той, которая установлена в его локальной системе, без необходимости регистрации в каждой удаленной системе. Этот сервис включает следующие функции: выполнение команд оболочки в удаленной системе, выполнение пакетных заданий с обеспечением прозрачности, контроль доступа к системам и ресурсам.
Основной стандарт по сервисам оболочки - IEEE 1003.2 (его эквивалент- ISO/IEC 9945-2:1993 Information technology - Portable Operating System Interface (POSIX) -Part 2: Shell and Utilities).
Удаленный терминал. Символьный интерфейс для удаленного входа в систему часто также называют виртуальным терминалом. Этот сервис должен обеспечивать возможность входа в систему с различного оборудования и через различные транспортные системы.
Существует два основных стандарта по данному сервису.
1. Модель OSI Virtual Terminal (VT), изложенная в стандартах ISO/IEC 9040:1997 - Information technology - Open Systems Interconnection - Virtual Terminal Basic Class Service и ISO/IEC 9041 - Information technology - Open Systems Interconnection - Virtual Terminal Basic Class Protocol.
2. Протокол Telnet из стека TCP/IP.
Распределенный графический интерфейс. Протоколы, специфицирующие распределенный графический интерфейс, должны поддерживать выполнение более
1. Стандартизация и модельное представление открытых информационных систем
59
сложных операций, чем просто чтение/запись в случае виртуального терминала. В неоднородной среде протокол должен поддерживать различные типы устройств ввода-вывода и быть прозрачным для ПП. Основные стандарты де-факто основаны на системе X Window.
5.	Межкатегориальные сервисы в распределенной среде являются расширением аналогичных сервисов локальной платформы. Рассмотрим два основных класса межкатегориальных сервисов: управления системой и безопасности — в аспекте взаимодействия открытых систем. Управление системой и безопасность оказывают значительное влияние на все части РВС и требуют единообразного подхода.
Сервисы административного управления распределенными системами являются критическими для нормального функционирования распределенной системы. Как и в локальной среде, сервисы управления включают в себя много аспектов, такие, как управление конфигурацией сети, управление нештатными ситуациями, управление производительностью, инсталляция ПО и т. д. Но задача управления осложняется тем, что в гетерогенной системе присутствует различное АО, ОС, сети передачи данных; ПП используют разные методы доступа к ресурсам и т. д.
Основным стандартом де-юре по административному управлению РВС служит модель управления OSI, изложенная в стандарте ISO/IEC 7498-4:1989 Information processing systems — Open Systems Interconnection - Basic Reference Model - Part 4: Management framework. Основными элементами этой модели являются:
	менеджер - процесс, который получает и отслеживает управляющую информацию и вызывает операции управления;
•	агент - процесс, который выполняет операции управления по команде менеджера и передает менеджеру информацию для принятия решений по управлению;
*	управляемый объект - представляет управляемые ресурсы.
Собрание сведений об управляемых ресурсах называется базой управляющей информации (Management Information Base, MIB).
Модель получает развитие в следующем наборе стандартов ISO:
ISO/IEC 9595 - Information technology - Open Systems Interconnection - Common management information service (CMIS);
ISO/IEC 9596 - Information technology - Open Systems Interconnection - Common management information protocol (CMIP) — определяет протокол прикладного уровня для передачи управляющей информации;
ISO/IEC 10040 - Information technology — Open Systems Interconnection - Systems management overview;
ISO/IEC 10164 - Information technology - Open Systems Interconnection - Systems Management;
ISO/IEC 10165 - Information technology - Open Systems Interconnection -Management Information Services - Structure of management information.
Аналогом стандартов ISO в стеке протоколов TCP/IP являются:
протокол SNMP - аналог CMIP;
RFC 1155 - структура управляющей информации;
RFC 1213 - структура MIB.
Среди других стандартов по административному управлению системами следует отметить:
60
Информационная безопасность открытых систем
 стратегию управления РВС DME (Distributed Management Framework) организации X/Open;
* модель управления административной информацией CIM (Common Information Model) организации The Open Group.
Многие ведущие фирмы-производители также специфицируют свои подходы к управлению РВС и API к сервисам управления.
Сервисы защиты. Сервис защиты в распределенной (в особенности неоднородной) среде имеет много аспектов и включает много механизмов защиты: идентификацию и аутентификацию, целостность, конфиденциальность данных, контроль доступа и авторизация, неотказуемость (невозможность отказаться от совершенных действий с подтверждением подлинности источника данных или доставки), аудит, административное управление сервисом защиты и пр. Распределенный характер системы добавляет много дополнительных угроз безопасности по сравнению с локальными системами. Так, особенностями РВС являются невозможность обеспечить физическую безопасность системы в целом и, как правило, открытость коммуникационных каналов.
В силу высокой сложности проблемы существует большое количество стандартов по организации сервиса защиты в распределенной среде. В целом в настоящее время наблюдается стремление к интегрированному решению проблем защиты информации в распределенной вычислительной среде.
1.5. Основные модели открытых систем
Появление очень большого числа стандартов в различных областях ИТ привело к необходимости систематизации их в абстрактных логических моделях, отображающих структуру ИС на более высоком уровне, облегчающих классификацию, размещение и применение стандартов. Данные модели не имеют целью подробную структуризацию всей ИС. Скорее их задача выявить принципы архитектурного построения системного и прикладного ПО и его размещения по аппаратным компонентам СОД. Аппаратура при этом выступает в качестве своеобразного фона, "ячеек" для размещения ПО.
Строгой классификации указанных моделей не существует, но различают несколько основных их видов.
Профиль. Отличается высокой точностью описания, фокусируется на подмножестве взаимосвязанных стандартов или архитектур.
Архитектура. Характеризуется очень высокой точностью описания всех концепций, отсутствием двусмысленностей, хорошо специфицированными описаниями сервисов и механизмов их реализации (за исключением деталей реализации).
Каркасная модель (framework). Имеет более низкую точность, описывает только общие концепции, не содержит подробных объяснений и детальных спецификаций. Этим понятием часто обозначаются модели высокой степени абстракции, описывающие общие соглашения, понятия и методы формирования более конкретных моделей.
Далее будут рассмотрены наиболее значительные представители каждого из названных классов моделей.
1. Стандартизация и модельное представление открытых информационных систем
61
1.5.1.	Модель OSI
Модель OSI (Open Systems Interconnection, взаимодействие открытых систем, ВОС) является классическим примером коммуникационной архитектуры. Она определяет семиуровневую модель взаимодействия вычислительных систем. Модель OSI — старейшая из моделей открытых систем.
Модель изложена в стандарте ISO 7498 [9], состоящем из четырех частей:
ISO/IEC 7498-1:1994 Information technology - Open Systems Interconnection - Basic Reference Model: The Basic Model;
ISO/IEC 7498-2:1989 Information processing systems - Open Systems Interconnection - Basic Reference Model - Part 2: Security Architecture;
ISO/IEC 7498-3:1997 Information technology - Open Systems Interconnection - Basic Reference Model: Naming and addressing;
ISO/IEC 7498-4:1989 Information processing systems - Open Systems Interconnection - Basic Reference Model - Part 4: Management framework.
В первой части стандарта определяется базовая эталонная модель (reference model) взаимодействия открытых систем, остальные три части определяют модели безопасности (ч. 2), управления (ч. 4), именования и адресации (ч. 3) в среде открытых систем.
На разработку модели OSI оказали влияние уже существовавшие многоуровневые модели, такие, как SNA и DNA. Выделение в модели именно семи уровней и разделение функций между ними было до некоторой степени произвольным. Оно явилось попыткой найти оптимальное соотношение между противоречивыми требованиями простоты модели и сложности описываемой структуры и стало опорной точкой в формировании сетевых архитектур и определении функций вычислительных сетей.
Архитектура OSI довольно абстрактна и охватывает очень широкий круг аспектов: общие принципы взаимодействия открытых систем, описание каждого из семи уровней, оборудование. Модель оперирует элементами архитектуры: системы, уровни, логические объекты, сервисы, протоколы, блоки данных, соединения - и определяет общие взаимоотношения между этими элементами.
Каждый уровень модели OSI (рис. 8) представляет собой группу взаимосвязанных функций обработки данных и связи между системами, которые могут быть выполнены стандартным образом с целью поддержки различных приложений. Каждый уровень обеспечивает хорошо определенный набор сервисов для вышележащего уровня и, в свою очередь, использует сервисы уровня, находящегося ниже его. Таким образом, процесс осуществления связи между системами разбивается на отдельные, легко управляемые блоки. Все вместе семь уровней обеспечивают коммуникационный сервис между оконечными пользователями (end-to-end). Изменения в протоколе любого уровня могут быть выполнены, не затрагивая соседних уровней.
Стандартизация взаимосвязи открытых систем проявляется в том, что на каждом уровне разрабатываются и утверждаются базовые стандарты двух видов:
	определение сервиса уровня, которое в абстрактной форме описывает доступные извне услуги данного уровня;
	спецификация протокола уровня, которая регламентирует взаимодействие между равноправными объектами уровня, направленное на выполнение требуемого сервиса.
62
Информационная безопасность открытых систем
Верхние уровни модели связаны с логическими аспектами коммуникаций и ориентированы скорее на пользователей сети (обычно это ПП), чем на саму инфраструктуру сети. Эти уровни включают механизмы для координации диалога между приложениями и для подготовки данных с целью обеспечения единой интерпретации их сторонами. Приложения могут иметь доступ к функциям этих уровней через соответствующие сервисы. Основные функции верхних уровней таковы.
	Оконечная открытая система		Промежуточная открытая система		Оконечная открытая система	
	Приложения пользователя				Приложения пользователя	
Уровень 7 Уровень 6 Уровень 5 Уровень 4 Уровень 3 Уровень 2 Уровень 1		Прикладной				Прикладной
						
		Представления данных				Представления данных
						
		Сеансовый				Сеансовый
						
		Транспортный				Транспортный
						
		Сетевой		Сетевой		Сетевой
						
		Звена данных		Звена данных		Звена данных
						
		Физический		Физический		Физический
						
Физическая среда передачи данны:
Рис. 8. Модель взаимосвязи открытых систем OSI
Прикладной уровень (уровень 7) обеспечивает приложения необходимым высокоуровневым интерфейсом к нижележащим коммуникационным сервисам с целью обеспечения их связи с приложениями-партнерами на других системах. К прикладному уровню также принято относить набор специализированных сервисов-приложений, таких, как передача файлов, управление сообщениями, виртуальный терминал, директориальный сервис и т. п. Этими сервисами могут, в свою очередь, пользоваться приложения конечного пользователя. В рамках сервисов, стандартизированных ISO, к ним относятся стандарты FTAM, Х.400, VT, Х.500. Сами приложения пользователя считаются расположенными над прикладным уровнем.
Уровень представления данных (уровень 6) предназначен для согласования синтаксиса и семантики данных в процессе передачи данных между системами.
Сеансовый уровень (уровень 5) обеспечивает сервисы координации диалога между системами: синхронизацию, полномочия, активность.
Нижние уровни обеспечивают транспортные функции сети: они отвечают за физические аспекты коммуникаций и доставку данных между оконечными транспортными пользователями. Основные функции нижних уровней заключаются в следующем.
Транспортный уровень (уровень 4) обеспечивает надежную и эффективную доставку данных между любыми двумя абонентами потенциально ненадежной сети передачи данных, независимо от характеристик и топологии сети.
1. Стандартизация и модельное представление открытых информационных систем 63
Сетевой уровень (уровень 3) обеспечивает адресацию и маршрутизацию сообщений между системами, которые непосредственно не связаны друг с другом в сети. Модули данных на этом уровне обычно носят название пакетов или дейтаграмм.
Уровень звена данных (уровень 2) связан с обменом неструктурированными данными между смежными узлами сети. На этом уровне происходит обмен модулями данных -фреймами - и обеспечивается обнаружение и исправление ошибок передачи.
Физический уровень (уровень I) предоставляет физическое соединение для передачи данных: среду распространения сигнала, интерфейсы, процедуры передачи сигналов по линии связи.
Уровни модели OSI можно сгруппировать в две категории, соответствующие понятиям "транспортный провайдер" (уровни 1^4) и "транспортный пользователь" (уровни 5-7).
Первая версия нормативной модели OSI была принята в качестве стандарта в 1983 г., но и сегодня она имеет важное влияние на развитие концепции открытых систем, так как явилась первой попыткой формирования единого монолитного стека протоколов, который обеспечил бы универсальное взаимодействие всего спектра существующих вычислительных систем.
Появление модели OSI послужило толчком к быстрому росту числа изделий и продуктов ИТ, согласующихся с концепцией открытых систем. Она стала основой разработки очень большого числа стандартов (как де-юре, так и де-факто), относящихся ко всем семи уровням этой модели.
На любом национальном рынке крупнейшим потребителем ИТ наряду с крупными корпорациями является правительство государства. Стремление правительств обеспечить соответствие продуктов и изделий ИТ, приобретаемых различными подразделениями правительственных органов, текущим международным стандартам по взаимодействию открытых систем и тем самым обеспечить по меньшей мере некоторую гарантию их совместной работы обусловило появление правительственных профилей взаимосвязи открытых систем. Среди правительственных профилей наиболее широко известны профили GOSIP (Government OSI Profile) Великобритании и США. GOSIP США стал обязательным стандартом в этой стране в 1990 г., после чего почти каждый основной поставщик продуктов и услуг ИТ в США объявил о наличии совместимых с GOSIP изделий: локальных и глобальных сетей, реализаций систем обработки сообщений, передачи файлов и т. д.
Свои собственные профили создали Франция, Швеция, Япония, Австралия, Гонконг, многие другие страны. Значительная часть работ по стандартизации госпрофи-ля России взаимосвязи открытых систем была проведена в 1995—1999 гг.
Следующий международный стандарт устанавливает общую классификацию, принципы построения и документирования профилей:
ISO/IEC TR 10000-1:1998 - Information technology - Framework and taxonomy of International Standardized Profiles - Part 1: General principles and documentation framework - общая часть стандарта;
ISO/IEC TR 10000-2:1998 - Information technology — Framework and taxonomy of International Standardized Profiles - Part 2: Principles and Taxonomy for OSI Profiles -устанавливает принципы построения и классификацию профилей, создаваемых в рамках модели взаимосвязи открытых систем OSI;
64
Информационная безопасность открытых систем
ISO/IEC TR 10000-3:1998 - Information technology - Framework and taxonomy of International Standardized Profiles - Part 3: Principles and Taxonomy for Open System Environment Profiles - устанавливает принципы построения и классификацию профилей, создаваемых в рамках модели сред открытых систем OSE (Open Systems Environment) (п. 3.2.2).
Профили стандартов на основе модели OSI, безусловно, являются очень важным этапом развития стандартизации открытых систем. Однако профили дают несколько однобокий взгляд на ИС: с точки зрения ее коммуникационной инфраструктуры. В них не видны роль и функции ОС. Кроме того, прикладной уровень профилей стал очень быстро разрастаться, а простая семиуровневая модель оказалась неспособна описать все многообразие компонентов этого уровня и соответствующих им стандартов.
1.5.2.	Модель POS1X
Исторически модель POSIX развивалась от разработки интерфейса переносимой ОС через разработку профилей операционных сред до формулировки модели полноценной среды открытых систем, которая получила название OSE/RM (Open Systems Environment Reference Model).
Первая рабочая группа POSIX была образована в IEEE в 1985 г. на основе комитета по стандартизации ОС, ориентированного на Unix. Первоначально POS1X (Portable Operating System Interface for Computer Environments) - это набор спецификаций для открытых систем, разработанный техническим комитетом по ОС (TCOS) IEEE. Цель POSIX- выработка спецификаций единого, унифицированного, широко поддерживаемого производителями интерфейса для ОС, обладающих свойствами переносимости между ними ПП, пользователей и данных. POSIX составляет большой набор документов, разрабатываемых множеством рабочих групп и комитетов. Основной набор соглашений и концепций для этих спецификаций сформулирован в документе IEEE "Guide to the POSIX Open Systems Environment, P1003.0". Он утвержден в качестве международных стандартов:
ISO/IEC 9945-1:1996 - Information technology - Portable Operating System Interface (POSIX) - Part 1: System Application Program Interface (API) [C Language];
ISO/IEC 9945-2:1993 - Information technology - Portable Operating System Interface (POSIX) - Part 2: Shell and Utilities.
Co временем число рабочих групп POSIX возросло до 18, а их тематика расширилась, охватив все операционные среды, интерфейсы которых соответствовали спецификациям POS1X. Задача рабочих групп трансформировалась в создание профилей различных сред: коммуникационных систем, систем реального масштаба времени, многопроцессорной обработки, суперкомпьютеров, а также отдельных функций этих систем (защита информации, доступ к файлам, именование ресурсов, директориаль-ные сервисы и т. д.).
Некоторые результаты их работы утверждены в качестве официальных международных стандартов:
ISO/IEC 14519:1999 — Information technology - POSIX Ada Language Interfaces -Binding for System Application Program Interface (API) - Realtime Extensions;
ISO/IEC 15068-2:1999 - Information technology - Portable Operating System Interface (POSIX) System Administration - Part 2: Software Administration.
1. Стандартизация и модельное представление открытых информационных систем
65
Осмысление единства различных сторон разрабатываемой проблемы привело в итоге к формулировке единой нормативной модели (функциональной) среды открытых систем, известной как OSE/RM. Эта модель описана с точки зрения пользователя. Она является довольно простой, но ясно определяет основные компоненты СОД и основные концепции формирования открытой среды. Быть может, главное преимущество этой модели состоит в том, что она позволяет легко разделить стандарты открытых систем по двум категориям: либо как интерфейсы (форматы) и протоколы, либо как спецификации, относящиеся к переносимости или способности к взаимодействию.
Модель OSE/RM не является уровневой (рис. 9). Она определяет три категории логических объектов: прикладное ПО (AS), платформу приложений (АР) и внешнюю среду (ЕЕ) - и два типа интерфейсов между ними: интерфейсы прикладного программирования (API) и интерфейсы внешней среды (EEI). Рассмотрим более подробно существо каждого из этих понятий модели.
Прикладное ПО AS
Прикладное ПО AS
Прикладное ПО AS
Программы
Программы
Программы
Данные
Данные
Данные
Документация
Документация
Документация
API
Сервисы API
Сервисы API
API
Сервисы API
Платформа приложений	АР
lEEI
Внешняя среда
ЕЕ Пользователи
Внешние объекть! данных
Коммуникационные средства
Рис. 9. Модель OSE/RM
Прикладное ПО - это часть ПО системы, специфичная для конкретного применения пользователя. Она составляется из программ (исполняемых модулей, командных файлов, интерпретируемых записей исходного кода и т. п.), данных (рабочих данных пользователя, параметров ПП, установок среды экрана пользователя и т. п.) и электронной документации (электронных документов, справок помощи (on-line help) и пр., но бумажная документация сюда не включается). Примерами прикладного ПО являются текстовые редакторы, программы работы с электронными таблицами, программы обработки информации, хранящейся в БД, и многие другие программы, являющиеся специфически пользовательскими по отношению к той или иной платформе. Разработка, интерпретация и исполнение некоторых специальных видов прикладного ПО может осуществляться при посредстве специализированных сред, обеспечивающих определенный вид сервиса на платформе, например СУБД, системы автоматизированного проектирования (САПР), системы управления электронными таблицами и т. п. Одна или более ПП могут работать на одной платформе одновре-
3—2368
66
Информационная безопасность открытых систем
менно, так как каждая прикладная программа трактуется как независимый логический объект.
Платформа приложений - это все остальные элементы СОД, за исключением прикладного ПО: АО, ОС и другие компоненты и подсистемы системного ПО. ПП, требующие ресурсов платформы, запрашивают их путем вызова сервисов через API. Ресурсы, находящиеся вне платформы, запрашивают сервисы через ЕЕ1, и наоборот, EEI являются средствами, через которые сервисы достигают ресурсов внешней среды. Внутренняя структура платформы в модели OSE/RM преднамеренно не рассматривается. Это связано с тем, что в научных и промышленных кругах не существует единого мнения о составе, структуре и взаимосвязях различных модулей платформы.
Внешняя среда - это все компоненты ИС, находящиеся за пределами данной СОД: пользователи, коммуникационные каналы и средства связи, сменные носители данных, устройства ввода-вывода. Интерфейс между АР и ЕЕ включает форматы данных, интерфейсы и протоколы. По отношению к отдельно взятой вычислительной системе все другие вычислительные системы также выступают как объекты внешней среды.
Модель OSE/RM определяет распределенную среду как множество платформ приложений, которые могут взаимодействовать посредством коммуникационных механизмов, внешних по отношению к платформам. Когда одной прикладной программе необходимо связаться с другой программой на другой прикладной платформе, прикладная программа подает запросы к своей локальной платформе через API. Так как АР взаимодействуют через коммуникационный интерфейс EEI, локальная АР транслирует эти запросы в соответствующие действия через EEL OSE/RM также определяет однородный набор стандартных сервисов, предоставляемых пользователям платформ, в соответствии с требованиями спецификаций POSIX о переносимости и способности к взаимодействию. Данная модель делает попытку описать более полный подход к совместимости вычислительных систем, чем подход, основанный на многоуровневых архитектурах типа модели OSI.
Модель принята в качестве международного стандарта ISO/IEC TR 14252:1996 -Information technology - Guide to the POSIX Open System Environment (OSE).
Классификация профилей, которые могут быть построены в рамках модели OSE/RM, определена в стандарте ISO/IEC 10000-3.
Для информационных нужд правительства США был создан профиль на основе модели OSE/RM, который получил название профиля переносимости прикладных программ. Он изложен в документе Application Portability Profile. The U.S. Government Open Systems Environment Profile. Ver. 3.0. NIST Special Publication 500-230, 1996.
Важное значение модели POSIX состоит также в том, что она, очень удачно сформулировав основы концепции открытых систем, явилась базой для создания многих последующих моделей открытых систем, в том числе и основной на сегодняшней день модели открытых систем - TOGAF (The Open Group Architecture Framework), разрабатываемой международной организацией по открытым системам The Open Group [6].
Более подробную информацию на русском языке о стандартах по открытым ИС и способам модельного представления открытых систем можно получить из книг [12-16].
1. Стандартизация и модельное представление открытых информационных систем 67
Вопросы для самоконтроля к гл. 1
I.	Каковы типичные характеристики ИС организации? Поясните требования к идеальным открытым системам. Назовите основные свойства открытых систем.
2.	Какова роль стандартов в концепции открытых систем? Перечислите известные вам международные организации по стандартизации, виды разрабатываемых ими стандартов. Какие формы логической организации стандартов вы знаете?
3.	Поясните основные требования к совместимости вычислительных систем. Что означают понятия переносимости и способности к взаимодействию?
4.	Изобразите базовую модель ИС. Объясните назначение и общую функциональную структуру платформы приложений.
5.	Используя базовую модель ИС, поясните, как осуществляется взаимодействие платформы приложений с ПП и объектами внешней среды?
6.	В чем заключается системный подход к описанию функциональности на основе модельного представления ИС? Какие функциональные блоки выделяют в открытых системах? Каковы способы их взаимодействия?
7.	Как обеспечивается переносимость ПП между открытыми системами?
8.	Как обеспечивается переносимость пользователей и данных между открытыми системами?
9.	Как обеспечивается способность к взаимодействию открытых систем? Что такое коммуникационный интерфейс и стеки протоколов?
10.	Изобразите расширенные модели открытой ИС, иллюстрирующие следующие два понятия: взаимодействующие открытые системы и РВС.
11.	Используя модель РВС, поясните, как происходит формирование образа единой системы.
12.	Какие свойства распределенной вычислительной среды обеспечивают формирование образа единой системы?
13.	Каковы характерные особенности функционирования ПП в распределенной вычислительной среде?
14.	Чем характеризуются модели организации распределенных вычислений: хостовая, клиент-серверная, иерархическая, master-slave, одноранговая, объектная?
15.	Сравните классификацию внутренних сервисов платформы по критериям переносимости и способности к взаимодействию.
16.	Сравните классификацию сервисов данных по критериям переносимости и способности к взаимодействию.
17.	Сравните классификацию сервисов человекомашинного взаимодействия по критериям переносимости и способности к взаимодействию.
18.	Сравните классификацию межкатегориальных сервисов платформы по критериям переносимости и способности к взаимодействию.
19.	Перечислите сетевые сервисы платформы приложений. Расскажите о функциях транспортного провайдера.
2. ИНТРАНЕТ КАК ОТКРЫТАЯ СИСТЕМА
В главе интранет характеризуется как открытая система. Вводится понятие интранета, кратко указываются технологии создания, рассматривается архитектура и описываются этапы создания. Более детально анализируются сетевая инфраструктура, информационное наполнение, приложения, система публикации, управление, функционирование, безопасность и персонал, сопровождающий работу интранета. После этого приводится эталонная модель интранета, состоящая из базовых механизмов и сервисов, системы управления
и информационного наполнения. Обсуждаются вопросы стандартизации для интранета.
Выделяется четыре вида интранета, дается определение экстранета и детально рассматриваются порталы: их классификация, логическая структура, компоненты, схема и сервисы
2.1. Понятие интранета
Одним из основных объектов защиты любой современной организации является ее интрасеть (intranet), или интранет. Интранет - это информационная инфраструктура компании, представляющая собой ее внутреннюю корпоративную сеть, усовершенствованную веб-технологией (с использованием программных продуктов и технологий Интернета, например веб-сервера), технологией клиент-сервер, а также включающая в себя средства управления сетью и распределенными приложениями. Сразу отметим, что веб-технология коренным образом изменяет способы использования информации, предоставляя самые разнообразные возможности для ее пользователей и владельцев и делая сотрудничество независящим от времени и пространства. Это следующий важный этап в эволюции локальных вычислительных сетей, определяемый тремя ключевыми моментами. Во-первых, новые методы управления информацией и их влияние на бизнес-процессы в современной организации. Во-вторых, организационно-методологическая и административная сторона новой технологии управления информацией. В-третьих, вопросы архитектуры, системнотехнической инфраструктуры и технологических средств построения интранета.
Интранет-системы служат для создания интегрированной информационной среды, используемой всеми сотрудниками компании и выполняющей как справочноинформационные функции, так и функции автоматизации различных бизнес-процессов. Их функциональные возможности охватывают очень широкий спектр -начиная от работы со статическими веб-страницами, которые заменяют корпоративные печатные документы или обеспечивают новый способ совместного использования информации, и кончая сложными клиентскими интерфейсами для офисных серверных приложений [17-20]. Они обладают такими огромными потенциальными возможностями за счет применения инструментальных средств, помогающих компаниям эффективнее интегрировать различные информационные технологии, совместно использовать данные, реализовывать системы коммуникаций и коллективной работы. Следующие по популярности приложения для этих систем - управление документами, составление и ведение коллективных расписаний и корпоративных каталогов.
Целями создания такой среды являются:
	постоянное накопление знаний внутри компании и предоставление удобных механизмов использования накопленных знаний;
	ускорение производственного и непроизводственного документооборота;
	сокращение непроизводственных расходов;
2. Интранет как открытая система
69
	распространение корпоративной культуры на всю организацию независимо от места нахождения отдельных подразделений, или пользователей.
При этом:
	создается единое хранилище справочной информации и нормативной документации;
	достигается максимальная стандартизация и упрощение рутинных операций по созданию и публикации документов компании;
	координируются работы и взаимодействие пользователей ИС через системы электронной почты и средства коллективной работы (groupware);
	обеспечивается удобная навигация, быстрый поиск и доступ к информации;
	предоставляется доступ к данным из различных бизнес-приложений;
	поддерживается безопасность доступа к данным и управление ролями пользователей.
Для обмена информацией внутри организации интранет использует технологии глобальной сети Интернет. Кроме того, из интранета почти всегда открыт доступ пользователей (или хотя бы части пользователей) в Интернет.
Впервые понятие интранета было введено в 1994 г. Стивеном Теллином (Steven Telleen) [21] и основывалось на том, что это сеть, используемая организацией и содержащая информацию, доступную только ее сотрудникам. Вначале само слово мало что значило для подавляющего большинства людей, многие из них, прочтя это слово, подумали бы, что это опечатка. После того как это слово завоевало право на жизнь, возник вопрос, что под этим понимается, ведь после того, как термин появился, его стали использовать все. Многие компании "вдруг" обнаружили, что давно этим занимаются и являются "ведущими производителями" в этой области. Сейчас практически невозможно найти фирму, которая бы не говорила, что она находится в авангарде данного направления. При этом глубина понимания и значение, которое люди вкладывают в понятие интранета, очень сильно различаются. Сказать, что интранет - это применение технологии Интернета в рамках корпоративных систем, - это на самом деле не сказать практически ничего.
В настоящий момент четкого определения интранета найти в научной литературе не представляется возможным. Поэтому постараемся описать это уже ставшее реальностью явление современного мира через его характерные черты. Их три.
1.	Использование Интернет-технологий внутри организации с целью облегчения коммуникаций и доступа к информации.
2.	Наличие механизмов, объединяющих людей, процессы и информацию в рамках организации.
3.	Предоставление служащим либо просто информации, заменившей информационные бюллетени, либо доступа к информации, процессам и приложениям посредством корпоративной информационной сети.
Итак, главными отличительными чертами интранета являются:
	ее основа - Интер нет-технологии и стандарты;
	использование внутри организации,
	обеспечение некоторой интеграции ресурсов и доступа.
Применение в интранете интеграционной технологии означает возможность эффективного и разумного объединения всех программных решений (как наработанных
70
Информационная безопасность открытых систем
ранее, так и создаваемых в настоящий момент и проектируемых) на основе разнородного АО в общую информационную среду с едиными правилами генерации и потребления информации, с единым унифицированным доступом к информации [22]. На практике интранет позволяет создать ИС организации на уже существующей основе, независимо от принятой в организации технологии обработки информации, независимо от существующих программных решений и аппаратной платформы. Причина заключается как в максимально обобщенном подходе интранета к потреблению информации, так и в максимально гибких технических методах и подходах, которые лежат в основе интранета. Сила веб-технологии - в эволюционном характере ее внедрения, который позволяет добиться практически 100 %-го сохранения сделанных ранее инвестиций. Все сложное и дорогостоящее хозяйство: сети, компьютеры, БД, прикладные системы - сохраняется, оно не подлежит замене. Его нужно адаптировать, но адаптация не означает ни смены платформы, ни каких-то дополнительных больших вложений в инфраструктуру.
Технологии, необходимые для создания интранета и реализующие их средства, широко распространены. К ним относятся:
1)	протокол TCP/IP как основной способ, при помощи которого компьютеры связываются в сети;
2)	сетевая файловая система, например NFS (Network File System);
3)	веб-браузер (ы) (программа поиска и просмотра системы Web);
4)	веб-сервер (ы);
5)	гипертекстовые редакторы (HTML, Dynamic HTML, XML и т. п.);
6)	средства связи (типа электронной почты, видео- и аудиоконференц-связи и т. п.).
Как и Интернет, для осуществления соединения и обмена данными интранет использует стек протоколов TCP/IP. Он дает возможность уникальной адресации компьютеров в сети (компьютеры имеют IP-адреса) и также обеспечивает механизм, при помощи которого компьютеры могут находить друг друга и соединяться. Доступ к информации с рабочих мест пользователей осуществляется на основе установления IP-соединений между их компьютерами и хранилищами (или источниками) информации.
Стандартизованная среда Интернета позволяет взаимодействовать между собой различным инструментальным средствам и обеспечивает простой и удобный доступ к таким корпоративным ресурсам, как БД, с помощью специальных сценариев, написать которые не представляет особого труда. Объединяя эти средства с легким для изучения языком разметки гипертекста HTML и графическими вставками, настраиваемую среду интранета можно создать всего за несколько недель.
Поскольку в большинстве существующих сетей используются те или иные протоколы из стека TCP/IP, с интранетом могут работать все сотрудники компании. Более того, применение уже реализованных технологий позволяет компаниям избежать значительных капиталовложений в аппаратное обеспечение и кабельную систему. К примеру, чтобы сотрудник имел возможность получать корпоративную информацию непосредственно на своей настольной системе, все, что нужно сделать, - это добавить клиентские драйверы для TCP/IP, веб-браузер и другие инструментальные средства Интернета.
2. Интранет как открытая система
71
Интранет обязательно использует протокол HTTP (Hypertext Transfer Protocol). Он применяется для передачи текстов, изображений и гиперссылок (т. е. связей с другими электронными документами), указывающих на веб-страницы. HTTP дает возможность ресурсам интранета обмениваться информацией в определенном формате.
Интранет может и не иметь прямого соединения с Интернетом. В некоторых случаях канал доступа к Интернету доставляет лишние проблемы, особенно когда приходится работать с конфиденциальной информацией. В большинстве случаев, однако, соединение с Интернетом увеличивает ценность интранета, поскольку оно открывает доступ к ресурсам Интернета непосредственно с веб-страниц интранета.
Все полезные качества веб-технологии реализуются в рамках простой схемы: программа просмотра, которая размещается на рабочем месте пользователей (навигатор, или браузер), веб-сервер, который выступает в качестве информационного концентратора, и стандарты взаимодействия между клиентом и веб-сервером. Это практически все, что необходимо для построения пилотного варианта интранета. На этой основе можно расширять спектр функций системы, добавляя такие сервисы, как поиск информации, коллективная работа с единым массивом информации и ряд других.
Условно основные компоненты интранета представлены на рис. 10. Эта сеть появляется тогда, когда в организации есть профессионалы, занимающие новые должности с высоким уровнем знаний в области сетевых и информационных технологий и высокой степенью ответственности, способные за счет самых передовых технологий обеспечивать сотрудников организации самой современной информацией, нужной им для выполнения задач компании.
Рис. 10. Компоненты интранета
Из вышеизложенного следует, что у Интернета и интранета есть много общего. Самым главным является общий основной протокол IP (Internet Protocol) — при его использовании передача информации в интранет осуществляется через установленные IP-соединения. Но между интранетом и Интернетом существует и много различий. Они представлены в табл. 1.
Таблица 1. Сравнение интранета и Интернета
Интернет	Интранет
Пакеты принадлежат всем	Пакеты принадлежат организации
Расходы на поддержание сети распределены между пользователями	Расходы на интранет оплачиваются организацией
Централизованного управления нет	Управление осуществляется организацией
Слабые политики безопасности	Сильные политики безопасности
Использование по желанию	В организации используют все обязательно
Нет контролирующей организации	Контроль со стороны организации
72
Информационная безопасность открытых систем
Теперь перечислим некоторые особенности интранета.
	Низкая стоимость клиентского обеспечение, так как вся работа в интранет осуществляется через веб-браузер, что снижает требования к ПО и конфигурации рабочего места пользователя.
	Гибкость за счет того, что в единой инфраструктуре работают централизованные ИС и распределенные приложения, а также есть возможность реконфигурации топологии интранета.
	Масштабируемость, предполагающая как программное, так и аппаратное наращивание обеспечения интранета.
	Интеграция данных, представленных в виде как структурированной, так и неструктурированной информации, и приложений, подразделяемых на централизованные и распределенные.
	Сочетание централизованного управления (пользователями, информационными ресурсами) с возможностями непрямого децентрализованного управления некоторыми локальными информационными ресурсами.
	Развитые средства подготовки документов с возможностями коллективной работы, предполагающими их обсуждение, коррекцию, согласование и утверждение.
Можно выделить ряд преимуществ интранета по сравнению с другими видами сетей.
	В интранете объединяются данные из различных источников (внутренних и внешних, структурированных и неструктурированных).
	Обеспечивается доступ к данным всем пользователям внутри организации (в соответствии с политикой доступа).
	Информация предоставляется в формате, удобном для всех пользователей.
	В интранет гарантирована производительность, доступность, наличие необходимых сервисов и обеспечение информационной безопасности.
Эти преимущества интранета положительно влияют на успешность осуществления бизнеса.
	Повышается конкурентоспособность за счет:
	лучшего доступа к информации конкурентов и к внутренней информации;
	своевременного и постоянного (не ограниченного по времени) доступа (сразу по требованию);
	единого интерфейса для доступа;
	упрощенной процедуры публикации;
	совместного использования (разделения) знаний;
•	новых возможностей для бизнеса.
 Увеличивается объем продаж за счет:
	более быстрого доступа к информации, нужной для игры на рынке;
	использования возможностей мультимедиа в Web;
•	сокращения времени до выхода на рынок;
•	соединения клиентов с внутренними системами;
	прямой и постоянной связи с покупателями;
	снижения затрат.
 Затраты снижаются сразу и исчезают совсем позднее за счет:
 большей автоматизации труда;
• снижения затрат на ПО, бумагу и распространение информации;
2. Интранет как открытая система
73
 более быстрого доступа к информации.
 Возрастает производительность (благодаря лучшему доступу к информации и приложениям), так как для интранета характерно следующее:
	единый платформонезависимый интерфейс;
•	проще изучить, проще расширить;
	доступ к внешней информации;
*	проще опубликовать информацию;
	связь с существующими данными;
	своевременная информация и обучение;
	постоянный доступ к информации;
•	доставка информации на рабочие станции;
	шлюзы к существующим приложениям;
	меньше проблем из-за несовместимости;
•	не нужно тестировать браузеры;
	широкое использование группового ПО;
•	более тесная интеграция информации и средств ее представления и обработки и др.
 Сокращается срок до выхода продукта на рынок (например, благодаря совместным разработкам) за счет:
	использования накопленной информации;
•	немедленного совместного использования информации (со всем миром, в том числе и с бизнес-партнерами);
•	сокращения срока разработки.
 Улучшается работа с клиентами за счет:
	меньших вложений;
	работы со всем миром 24 ч в сутки;
	ссылок;
	совместного использования информации с другими пользователями;
	интеллектуального поиска информации;
•	подписки на обновления;
	доступа к внутренним специалистам-экспертам.
 Расширяется сотрудничество за счет:
	совместной работы, в том числе и над документами;
	использования средств конференций (аудио-, видео-) и других средств быстрой связи в реальном времени;
•	поддержки работы виртуальных, распределенных групп;
	отсутствия ограничений на вычислительные платформы и сети.
Для интранета отмечается еще одно уникальное качество новой технологии, которое заключается в том, что усложнение системы, расширение сервисов, детализация функций не требует от пользователя наращивания специальных знаний. Он учится работе с информацией один раз, а далее, пользуясь в своей повседневной работе средствами навигации по информационному пространству организации, он раз за разом обнаруживает новые возможности, облегчающие выполнение его задач, но при этом инструмент-то остается старым, надежным и испытанным. Психологически исключительно важно. Человек начинает по-другому относиться к работе с информацией - он начинает работать быстрее, эффективнее, он видит реальные результаты,
74
Информационная безопасность открытых систем
приобщается к коллективной работе над колоссальной ценностью, практически самым важным, чем владеет организация - ее информационным хранилищем.
Анализ основных тенденций развития интранета позволяет заключить, что прогресс в данной области пойдет по следующим направлениям:
	интеллектуальный сетевой поиск;
	высокая интерактивность навигаторов за счет применения Java-технологии;
	опора на сетевые компьютеры;
	превращение интерфейса навигатора в универсальный интерфейс с компьютером.
2.1.1. Структура интранета
Для понимания структуры интранета еще раз выделим ряд ее свойств. На сервере порождается конечный продукт - информация в форме, предназначенной для представления пользователю. Для обмена информацией между клиентом и сервером применяется протокол открытого стандарта. Информация представляется клиентам в виде, удобном для восприятия. Прикладная система сконцентрирована на сервере (на клиентах, кроме программ-навигаторов, ничего нет). Рабочее место представляет собой простое универсальное устройство. Фактически, это графический терминал для потребления информации - сетевой компьютер, снабженный специализированным ПО - программой навигации. Вся потребляемая информация порождается на сервере. Доступ к информации осуществляется через одну и ту же программу, не требующую локальных данных. Устройство на рабочем месте целиком настраивается из центра и нет необходимости выполнять какие-то дополнительные действия, по его конфигурированию.
Другое полезное качество интранета - это облегченное централизованное управление, причем не только серверной частью, но и рабочими местами. Сегодня уже можно говорить о централизованном конфигурировании каждого рабочего места, что на несколько порядков упрощает и удешевляет администрирование ИС. В таких системах проще решается и вопрос обеспечения ИБ. Проблема защиты сложна в первую очередь не тем, что сложны сами по себе задача и каждая отдельная подзадача обеспечения ИБ, а тем, что задач много и они разнообразны. При переходе к интранету задача качественно упрощается. Во-первых, гораздо большая часть ресурсов централизована. Ими не только легче управлять, но их и легче защищать. Во-вторых, внешние интерфейсы оказываются унифицированными, стандартными. Способов взаимодействия удаленного рабочего места с центральным сервером оказывается очень немного. Не нужно более заботиться о десятках или даже сотнях приложений на компьютерах-клиентах и для каждого из них решать задачу защиты взаимодействия клиента с сервером. Достаточно обеспечить стандартное решение для одного рабочего места, которое и будет стандартным для всех.
После того как данные централизованы, появилась возможность тиражировать их в разные точки организации для решения дополнительных задач, которые возникают в большой ИС с целью повышения производительности и надежности. Технология тиражирования информации позволяет кардинально решить вопрос о надежности ИС за счет дублирования и раздельного хранения важной информации.
Структура интранета может быть представлена моделью, состоящей из четырех уровней (рис. 11): инфраструктуры, интеграции, приложений и представлений.
2. Интранет как открытая система
75
Рис. 11. Структура интранета
Сетевая инфраструктура является основой интранета, обеспечивающей необходимые соединения и предоставляющей доступ к информации из любого места организации (подробнее сетевая инфраструктура рассмотрена в п. 2.1.3.1). Ее основу составляет АО интранета с соответствующим ПО, поддерживающим работу аппаратных средств.
Уровень интеграции содержит информационные хранилища и архивы (репозитории) бизнес-процессов, предназначенных для специфической в данной организации обработки информации, и корпоративные стандарты (регламенты), также определяющие допустимые процедуры обработки информации в рамках организации.
Уровень приложений объединяет ранее используемые и новые прикладные средства, реализующие задачи бизнеса организации (вопросы приложений обсуждаются в п. 2.1.3.3).
Уровень представлений является основным связующим звеном между интранетом и конечными пользователями - потребителями ее информационных и сетевых ресурсов.
На рис. 11 изображен и еще один необходимый элемент структуры - это система управления интранетом, координирующая работу всех уровней. Ее функции будут рассмотрены в п. 2.1.3.5.
Базируясь на приведенной структуре, для интранета можно выделить четыре уровня абстракции:
1)	уровень логики основных приложений, необходимых для поддержки работы и информационного наполнения портала (каталог, подбор новостей, другие сервисы);
2)	уровень бизнес-логики приложений, в которых реализуются основные бизнес-процессы компании;
3)	уровень описания логики отображения результатов работы приложений уровня бизнес-логики;
4)	уровень представления информации в веб-браузере.
76
Информационная безопасность открытых систем
В интранете выделяют три уровня коммуникаций - аппаратный, программный и информационный [23]. Аппаратный и программный уровни отвечают за организацию надежного канала связи и передачу информации без искажений, а также организацию хранения информации и эффективного доступа к ней. Информационный уровень является определяющим при поиске и передаче знаний. Здесь также можно выделить минимум три уровня, без которых любое общение либо невозможно, либо бессмысленно.
1.	Универсальный язык представления корпоративных знаний - это такой язык описания, который не связан с конкретными предметными областями деятельности организации и определяет грамматику и синтаксис. К этой категории могут относиться графический язык описания алгоритмов, сетевых графиков, моделей данных, бизнес-процессов, язык разметки документов. Уровень абстракции таких языков столь высок, что не связан со спецификой какого-либо предмета. Его использование преследует решение нескольких задач:
	обеспечение унификации представления знаний;
	обеспечение однозначности толкования знаний всех уровней;
	сведение процессов обработки информации к простым процедурам, допускающим их автоматизацию; к таким типовым процедурам можно отнести навигацию, поиск информации, организацию связей между данными.
2.	Модели и представления. Этот уровень определяет конкретную специфику предметов деятельности компании: понятия и символы предметной области, теоретические представления о предмете и самой организации. Например, такая область, как финансовый учет, на данном уровне должна включать толкование всех используемых понятий, базовые принципы и теоретические модели финансового учета, нормы, правила, классификаторы, стандарты. Знания этого уровня иногда называют метаданными, т. е. данными, описывающими первичные данные (фактические знания). Уровень моделей и представлений также решает несколько задач.
	Обеспечение единого представления деятельности организации всеми ее сотрудниками: единой системы понятий, целей деятельности и принципов их достижения, единых принципов поведения и мотивации, единой системы мер, эталонов, классификаторов, нормативов.
	Обеспечение интерпретации первичных данных. Без корпоративных знаний уровня моделей и представлений невозможна не только интерпретация и оценка первичных данных, но даже их измерение. Более того, любое событие становится значимо (наблюдаемо) с точки зрения управления только после того, как оно нашло себе место в системе корпоративных представлений.
	Обеспечение навигации по всему информационному пространству организации.
3. Фактические знания - это конкретные предметные знания, представляющие собой факты, выраженные в терминах предметной области. Такие факты являются первичными данными и могут содержаться в документах, базах данных, почтовых и новостных сообщениях.
Все три уровня образуют корпоративные знания и являются содержательным контекстом корпоративных коммуникаций.
Ресурсы интранета, как и любой другой сети, подразделяются на информационные и сетевые. Под информационными ресурсами интранета, согласно определению Гостехкомиссии РФ, будем понимать совокупность данных и программ, задейство
2. Интранет как открытая система
77
ванных при обработке информации техническими средствами. К сетевым ресурсам принято относить сетевые сервисы и АО интранета.
2.1.2.	Эталонная модель интранета
Эталонная модель интранета объединяет информационное наполнение, базовые сервисы и базовые механизмы [24]. В ней отражены все основные средства интранета:
I)	вычислительные платформы;
2)	пользовательские средства;
3)	системы нахождения информации (навигации);
4)	средства управление публикациями и документами;
5)	базы данных/репозитории;
6)	средства разработки приложений;
7)	средства интеграции с наследуемыми системами;
8)	средства управления;
9)	средства связи (конференции/сотрудничество).
Базовые механизмы
Базовые механизмы интранета представлены на рис. 12 [24]. Обычный пользователь взаимодействует с ресурсами интранета через веб-узлы (Web sites) посредством пользовательских средств (user tools), в которых для него имеются средства поиска информации (discovery tools) и средства поддержки (user support). Разработчики создают пользовательские средства и веб-средства (Web tools), состоящие из вебприложений (Web applications) и средств управления средой интранета (environment managers) и поддерживающие работу издательских систем (publishing systems). Провайдеры обеспечивают хранение информации в хранилище, или репозитории (information repository), и работу издательских систем (publishing systems).
Рис. 12. Базовые механизмы интранет
78
Информационная безопасность открытых систем
Оговоримся, что на эталонной модели представлен базовый набор механизмов, которые присутствуют в интранете любой организации. В реальной сети возможно применение и других механизмов.
Теперь рассмотрим эти механизмы подробнее.
Пользовательские средства. В интранете должны применяться протестированные, сертифицированные и современные (обслуживаемые, постоянно обновляемые) средства с удобными и понятными для пользователей интерфейсами и небольшими затратами на сопровождение. Реализуются такие пользовательские средства веббраузерами со встроенными средствами (Plug-ins), руководствами по использованию и путеводителями, системами просмотра (viewers) для новых форматов данных и файлов и страничками-памятками с закладками и уведомлениями.
Как было отмечено выше, пользовательские средства состоят из системы навигации (или средств поиска информации) и системы поддержки пользователей.
Система навигации. Огромные информационные ресурсы интранета абсолютно бесполезны, если в них нельзя найти требуемую информацию (отметим, что важно и качество найденной информации) и данные. Причем возможность и скорость нахождения касается всего в интранете - не только предоставляемой пользователям информации и данных, а также поступающих для обработки и хранения в интранет сведений, применяемых для этой обработки приложений, самому контенту интранета и системам его публикации. В связи с этим возникает потребность в разработке и утверждении политики того, что, где, когда и кому можно искать.
Для осуществления поиска должны предоставляться самые разнообразные средства, нуждающиеся в постоянном усовершенствовании в соответствии с изменяющими потребностями пользователей. В данную категорию средств входят различные поисковые механизмы, поисковые агенты (типа "пауков" - Spiders, интеллектуального поиска под запросы конкретного пользователя или push-технологии) и классификаторы и доски объявлений, упрощающие поиск (типа тех, которые есть на Интер-нет-узлах, например на Yahoo или Апорте).
Примеры поисковых механизмов (search engines), представленных средствами для серверов, очень просто найти в Интернете. Приведем некоторые из наиболее часто используемых в интранете поисковых механизмов (более полный список дан в прил. 1).
Excite [http://www.excite.com] - система, реализующая поиск по систематизированному каталогу и ключевым словам.
OpenText [http://www.opentext.com] - система, осуществляющая полнотекстовый поиск, поиск метаданных различных форматов, а также способная поддерживать интерактивный поиск.
FreeWAIS [http://ls6-www.informatik.uni-dortmund.de/ir/projects/ freeWAIS-sf/] -система, предназначенная для произвольного поиска под управлением ОС Unix.
Harvest [http://harvest.transarc.com] - система, имеющая масштабируемую, интерактивную архитектуру для индексации и доступа к информации в Интернете.
Другие системы типа Verity [http://www.verity.com], Fulcrum Technologies [http://www.fulcrum-technologies.com], Thunderstone [http://www.thunderstone.com] и т. п.
В отдельную группу выделяются средства помощи при перемещении между страницами (page navigation aids):
	строки совместного перемещения (shared navigation bars);
	метафоры (metaphors);
2. Интранет как открытая система
79
	страницы помощи (help pages);
	карты веб-узлов (site maps).
Есть и средства более широкого применения:
	доски объявлений (announcement directory);
	специализированные искатели информации (info finders);
	фильтры (filters);
	агенты (agents);
	путеводители (guides).
Выделим ряд интересных моментов, характеризующих основные направления в системах нахождения информации:
	запись и сохранение предыдущих поисков пользователя;
	подписка на получение специальной информации;
	персонализированный поиск;
	поиск в фоновом режиме;
	поиск в зависимости от решаемых задач;
	поиск на основе агентов;
Push-технология (дословно в переводе означает технологию принудительного распространения информации), реализующая отбор и доставку информации в реальном времени.
Система поддержки пользователей. На основе веб-технологии эта система обеспечивает поддержку действий конечных пользователей в интранете, а именно обучает, консультирует, помогает им наилучшим образом использовать все ресурсы интранет. Такая система обязательно задействована в организации интерактивной поддержки пользователей, например в виде раздела "Часто задаваемые вопросы" (Frequently Asked Questions, FAQ). Она также может предоставлять доступ всем пользователям к системам разбора проблем (problem reporting systems), типичных для интранета или для организации в целом.
Основными требованиями при проектировании средств помощи являются следующие:
	сообщения системы поддержки должны быть просты в использовании и понимании;
	пользователи должны иметь возможность легко перемещаться в интранете;
	согласованная работа веб-пользователей достигается применением путеводителей и консультантов;
	работа система поддержки реализуется такими средствами, как подсказки, заголовки, иконки и эмблемы, строки навигации, указания даты и авторства, перекрестные ссылки, терминологические словари и т. д.
Веб-средства. Эти средства подразделяются на веб-приложения и средства управления средой интранета, которые объединяют в единое целое внешние и внутренние ресурсы интранета. Они представляют собой набор программных прикладных средств и состоят из постоянно пополняющегося списка типа:
	средств доступа к базам данных;
	средств управления состояниями и событиями;
	пользовательских интерфейсов;
	средств обработки форм;
80
Информационная безопасность открытых систем
	скриптов или сценариев (Common Gateway Interface, CGI) — это механизмы для выбора, обработки и форматирования информации, которые вызывают вебсервер, например для динамического формирования веб-страниц и публикации на них актуальных сведений, извлеченных из постоянно обновляемых баз данных ;
	языков программирования Java, ActiveX и т. д.
Примеров таких средств можно привести много. Вот далеко не полный их список: браузеры, скрипты, Java-апплеты, редакторы, конверторы, средства для авторов, средства поиска, средства индексации, средства трассировки, средства быстрого просмотра, плееры, средства вывода, средства доступа к базам данных, средства диагностики, контроллеры, фильтры, шлюзы, формы и шаблоны, карты, рассыльщики сообщений, библиотеки иконок, графика, объявления, средства защиты и т. п.
Менеджеры среды (средства мониторинга). Без средств для управления интранетом его функционирование просто невозможно, так как интранет представляет собой очень сложную, постепенно все более усложняющуюся, распределенную, постоянно меняющуюся среду. На рынке регулярно появляются все новые средства данной категории, упрощающие и автоматизирующие работу администраторов интранета. Большинство существующих сегодня средств связано с другими системами, осуществляющими следующие функции:
	различные виды администрирования, включая работу с пользователями;
*	подтверждение связей;
	отслеживание статистики;
	контроль документов;
	контроль версий;
*	проверку представления данных;
	проверку веб-узлов;
	защиту и многое другое.
Остальные базовые элементы будут рассмотрены далее в этой главе.
Базовые сервисы
Сервисы предоставляют расширенную функциональность пользователям и администраторам сетей. Известно два вида сервисов - пользовательские и сетевые [22].
Среди пользовательских сервисов выделяются четыре основных типа:
	создание и публикация документов;
	координация работ и взаимодействие пользователей ИС - системы электронной почты и средства коллективной работы;
	навигация (быстрый поиск и доступ к информации);
	доступ к приложениям.
К сетевым сервисам относятся:
	справочники - управление информацией о людях и ресурсах (единая справочная служба);
	репликация — прозрачное распространение данных по сети;
*	защита;
	управление.
Базовыми для интранета являются сервисы, представленные на рис. 13 [24]. К ним принято относить:
2. Интранет как открытая система
81
1)	консалтинг (consulting) - консультирование служащих организации по самым разнообразным вопросам, включая обучение на примерах, помощь при подготовке новой информации для опубликования в интранете, решение сложных производственных вопросов, а также изучение спроса на новые средства и источники информации, что стимулирует разработку новых совместно применяемых механизмов;
2)	дизайн информации (info design) (чем лучше организованы веб-страницы, тем больше в них заинтересованы пользователи);
3)	обучение (training) пользователей интранета с привлечением различных средств, таких как интерактивные учебники, новости, демонстрационные материалы, дискуссии и т. п.;
4)	руководства (guides) (как и с чего начать работу с интранетом, какая информация доступна или как получить доступ к информации ограниченного пользования, с кем контактировать в случае проблем, необходимости установки нового ПО и т. п.);
5)	помощь/'Торячая линия" (help/hotline), что особенно важно для новых пользователей;
6)	политика организации, в которой изложены основополагающие подходы к отбору информационного наполнения для интранета и публикации документов, правила и средства доступа ко всем этим ресурсам, а также ПБ для самого интранета;
7)	сервисы, реализующие планирование развития интранета (например, опережающее предвидение новых запросов пользователей) и мониторинг всех происходящих в ней событий (например, мониторинг трафика) (planning & monitoring);
8)	сервисы, реализующие основные функции по управлению всем интранетом и его серверами (servers/management);
9)	сервисы координации (coordination), обеспечивающие поддержку совместной работы отдельных групп в пределах организации (включают средства обеспечения контактов через интранет между различными рабочими группами, совместное использование информации, получение необходимого ПО и т. п.).
Консалтинг
Дизайн информации
Обучение
Руководства
Координация
Политика
Помощь/ "горячая линия"
Планирование/ мониторинг
Серверы/ управление
Рис. 13. Базовые сервисы интранета
Как видно из краткого описания сервисов, по мере развития интранета они стимулируют разработку все новых механизмов, полезных как для пользователей, так и для сопровождающего персонала интранета.
82
Информационная безопасность открытых систем
2.1.3. Этапы создания интранета
Основной задачей при развертывании интранета является создание в пределах организации расширяемой ИС, которой смогут легко пользоваться ее сотрудники с различной начальной подготовкой. Этого не может произойти без планирования и решения вопросов масштабируемости, доступности, стоимости, простоты использования, обеспечения целостности и т. п.
Создание интранета означает не просто замену ранее созданных локальных сетей. В интранете расширена модель клиент-сервер, которая обычно применяется для доступа к БД и обеспечивает единое средство коммуникации для приложений типа электронных досок объявлений, конференц-связи и дискуссионных форумов. Но при этом не нужно разрабатывать еще одно специализированное средство доступа в среде клиент-сервер - для этого уже есть программа просмотра и поиска информации, называемая веб-браузер. Также на рынке имеется множество пакетов промежуточного уровня (ранее упомянутое middleware), обеспечивающих интерфейс между языком для представления информации в виде гипертекста и БД.
Рассмотрим основные этапы проектирования интранета (рис. 14) [24]. Самым первым из них является составление технико-экономического обоснования, или биз-нес-плана. После этого обсуждается и утверждается план развертывания интранета. Далее следует этап выработки стратегии в отношении информационного наполнения интранета, называемой для краткости информационной стратегией. Заключает эти три этапа определение плана инфраструктуры интранета.
Рис. 14. Этапы проектирования интранета
1.	Бизнес-план. Разработка и составление бизнес-плана является необходимым этапом любого инвестиционного проекта. Бизнес-план - это прежде всего прогноз того, как будет развиваться интранет и бизнес в целом. От того, насколько этот прогноз точен, зависит успех проекта. Поэтому качество и достоверность бизнес-плана -это один из важнейших критериев при его подготовке. Разработка бизнес-плана может опираться на наиболее распространенные в настоящее время стандарты UNIDO -организации по промышленному развитию при ООН [http://www.unido.org], которые основаны на следующих главных принципах:
	моделирование потоков продукции, ресурсов и денежных средств;
2. Интранет как открытая система
83
	приведение будущих доходов и расходов к текущей стоимости;
	оценка эффективности проекта посредством сопоставления потенциальных результатов и затрат с ориентацией на достижение требуемой нормы доходности;
•	учет неопределенности и рисков, связанных с осуществлением проекта.
При составлении бизнес-плана в первую очередь определяются долговременные цели и ожидаемые результаты от использования веб-технологии в рамках сети организации для успешного ведения бизнеса, а не с точки зрения самой технологии. Основное внимание при этом уделяется потребностям пользователей. То есть на данном этапе осуществляется постановка задачи построения интранета, рассчитываются ожидаемые затраты и потенциальная прибыль от внедрения интранета, определяется круг ее пользователей и строится прототип сети, отражающий видение интранета с точки зрения руководства организации. При этом определяются начальные соглашения и регламенты ее использования и критерии оценки — с детализацией доступа к информации и системам публикации, а также, что еще более важно, с определением ПБ для всех ресурсов интранета (гл. 5).
Для большей наглядности приведем простейший бизнес-план одной гипотетической организации, которую будем рассматривать и для иллюстрации других этапов создания интранета.
	Цели использования веб-технологии:
	для организации продаж с доступом к внутренней информации и информации конкурентов;
	обеспечение основных клиентов доступом к необходимой информации;
•	поддержка совместного использования информации при работе над общими проектами.
 Затраты: наиболее затратными статьями являются расходы на персонал, разработку приложений и контента, телекоммуникации, серверы, сопровождение, поддержку и развитие интранета, обучение пользователей и персонала.
2. План развертывания. Он должен содержать детальное описание стратегии поэтапного развертывания интранета, быть очень конкретным, определять информацию, средства и технические стандарты, которые для этого потребуются, а также устанавливать способы и критерии оценки успешности процесса развертывания. По мере завершения реализации начального этапа план может быть уточнен и расширен. На выработку этого плана существенно влияет выбор целевой области использования интранета и учет всех деталей, которые могут повлиять на реализацию плана, что чаще всего в крупных организациях сделать очень сложно.
Известны четыре подхода к переходу от обычной сети к интранету [24].
1.	На основе персональных компьютеров (personal computer, PC). Этот подход реализовать проще всего, так как все мероприятия по подключению к интранету осуществляет сам пользователь, но, конечно же, в соответствии с единым для всех пользователей интранет утвержденным руководством.
2.	На основе сетевых компьютеров (network computer, NC), иначе называемых "тонкими" клиентами. Подключение к интранету осуществляется централизованно. Нагрузка на пользователя минимальна.
Сравнение этих двух подходов в наглядном виде представлено на рис. 15.
84
Информационная безопасность открытых систем
Рис. 15. Развертывание интранета на основе персональных и сетевых компьютеров
3.	На основе компромисса:
	интерактивная инсталляция - упаковка ПО для инсталляции в специальные корпоративные пакеты ПП;
	централизованная доставка ПО на рабочую станцию;
	установка ПО пользователем;
	удаленное управление сервисами рабочей станции.
4.	На основе интеллектуальных агентов с регистрацией и удаленным централизованным мониторингом. В интеллектуальных агентах применяется оригинальная технология электронной поддержки. Сбор информации, помогающей управлять ПК (о конфигурации системы, об установленных в ней приложениях и дополнительных компонентах), осуществляется при помощи специальных интерактивных агентов. Служба позволяет автоматически провести диагностику и внести необходимые изменения в конфигурацию. С помощью интеллектуальных агентов владельцы компьютеров могут также загружать драйверы устройств, получать и устанавливать обновленные версии ПО по мере их появления.
В качестве примера приведем краткий план развертывания для нашей выбранной организации.
	Основная цель - рост продаж.
•	Работа с применением ноутбуков.
•	Начало развертывания интранета — с пробной группой из 12 основных продавцов.
 В центре внимания - производственная информация.
 Цель для потребителей - получение квалифицированной информации от инженеров.
 Показатели успеха - число пользователей, скорость роста числа пользователей.
3. Информационная стратегия. Ключевыми вопросами, на которые должны быть получены четкие ответы во время определения информационной стратегии и выработки единой для интранета архитектуры информации, являются следующие. Какая информация требуется большинству пользователей? Как будет получаться информация (какими способами)? Какие источники информации будут применяться (наследуемые системы; преобразованная информация; информация, полученная из новых источников, в том числе внешних)? В каком формате поступает информация? Какова периодичность ее поступления? Как обеспечить ее целостность? Как ее ин
2. Интранет как открытая система
85
тегрировать в единых рамках интранета? Какие стратегии получения доступа к информации являются наилучшими для создаваемого интранета? Как оценить достижения? После ответа на все эти вопросы должна возникнуть стройная система правил, процедур и ролей в управлении информацией, т. е. информационная стратегия. На этом этапе также осуществляется выработка принципов отбора и подготовки информационного наполнения веб-узлов и его обновления.
Основным критерием правильности принятой информационной стратегии считается то, что в интранете содержится только проверенная, легко разыскиваемая информация, не утратившая своей актуальности.
Говоря об информационной стратегии, нельзя не ввести одно из основных понятий, связываемых с интранетом. Это понятие контента (content), или содержания. Единого определения на сегодняшний день пока не существует, но из различных источников [например, 25] можно сделать вывод, что контент - это информационное наполнение, преобразованное в любую форму - тексты, иллюстрации, интерактивные элементы, предназначенное для передачи и хранения с целью последующего востребования и упорядоченное в соответствии с заранее разработанной структурой. Контент интранета, как правило, очень динамичен.
Для управления контентом разрабатываются системы управления контентом (Content Management System, CMS) - это специализированное ПО, позволяющее автоматизировать разработку и управление информационными ресурсами: их содержимым, структурой, дизайном. Система управления контентом может быть реализована и как самостоятельное ПО, и как модуль в составе системы документооборота (российских систем такого уровня пока нет, из зарубежных это, например, Documentum (http://www.documentum.com) и т. д.).
Информационная стратегия для нашей гипотетической организации может быть, например, такой:
	Информация о конкурентах получается от аналитиков.
	Связи с хранилищами информации устанавливаются только после подтверждение прав доступа к информации.
	Вся деловая информация должна храниться в репозитории.
	Требуется постоянный контакт с группой продаж для определения их потребности в информации.
	Необходима поддержка создания внутренних веб-узлов и их совместное использование в пределах организации.
4. План инфраструктуры. На этом этапе должна быть определена инфраструктура интранета, состоящая:
•	из централизованного управления на основе принятых политик и стандартов;
	объединяющих все ресурсы интранета механизмов;
	сервисов поддержки ее пользователей и обеспечивающего персонала;
	ее информационного наполнения, т. е. совместно используемых (иначе разделяемых) информационных ресурсов и способов, делающих эти ресурсы доверенными.
План инфраструктуры основан в первую очередь на эталонной модели интранета, текущем состоянии и возможностях организации, ее потребностях для осуществления бизнеса и времени, требуемом для проведения всех работ.
86
Информационная безопасность открытых систем
Специалисты отмечают, что видение, стратегии и задачи должны постоянно пересматриваться и по мере необходимости обновляться. Ведь создание интранета - это эволюционный, а не революционный процесс.
Отдельно можно выделить и некоторые вопросы, без решения которых проектирование интранета существенно усложняется. К ним принято относить [26]:
	постепенный отход от среды передачи с разделяемым доступом;
	оптимальное размещение коммутаторов;
	выбор типа коммутируемой магистрали (100Base-T или ATM или какой-либо еще);
	определение и реализацию виртуальных частных и локальных сетей;
	управление полосой пропускания глобальных сетей;
	поддержку специальных протоколов, например для удаленного мониторинга по протоколу RMON;
	использование графической среды управления;
	выбор инструментария для мониторинга, включая ручные анализаторы.
Начало перехода к интранету заметно упрощается, если правильно выбрана начальная инфраструктура, инсталлирован централизованный веб-сервер и создано несколько стартовых веб-страниц.
Подводя итог вышеизложенному, перечислим более конкретно, что же нужно определить для создания интранета.
1.	Ее масштаб (размер) с учетом всей централизованной архитектуры, механизмов и сервисов, общих и разделяемых ресурсов.
2.	Информационное наполнение.
3.	Сетевую инфраструктуру.
4.	Используемые приложения.
5.	Систему публикации информации, т. е. издательскую систему.
6.	Средства и процедуру управления интранетом.
7.	Вопросы финансирования.
8.	Обеспечение ИБ.
9.	Поддерживающий персонал.
Далее все эти вопросы будут рассмотрены более подробно.
Сетевая инфраструктура
Как было отмечено выше, сетевая инфраструктура является основой интранета, обеспечивающей необходимые соединения и предоставляющей доступ к информации из любого места организации. Конфигурации интранета столь же разнообразны, как и способы их использования. Конкретная топология интранета в конечном счете определяется функциональными требованиями и соображениями удобства доступа (рис. 16) [26]. Но в их сетевых инфраструктурах есть и общие черты - веб-, DNS-, почтовые и прокси-серверы, маршрутизаторы и т. п. Например, общепринятым является разграничение доступа между сегментами интранета для защиты конфиденциальной информации и создание так называемых демилитаризованных зон (Demilitarized Zone, DMZ). Такое разграничение обычно реализуется совокупностью маршрутизаторов, распределенных в пределах группы зданий. С другой стороны, топология интранета может основываться и на сочетании центрального маршрутизатора и многочисленных концентраторов/коммутаторов. Набор возможных вариантов
2. Интранет как открытая система
87
так же многообразен, как и условия, в которых функционирует каждая организация. Под "другой сетью" на рис. 16 обычно понимается Интернет (хотя возможны и другие варианты).
Рис. 16. Возможная конфигурация интранета
Поскольку маршрутизаторы проверяют все входящие пакеты, прежде, чем перенаправить их, они могут быть довольно просто сконфигурированы для отсеивания некоторых пакетов на основе определенной администратором базы правил. Таким образом, маршрутизаторы вносят свой вклад в реализацию политики и сервисов безопасности. Администратор может задать тип пропускаемых потоков данных и, следовательно, тип допустимых сервисов и приложений. Использование потенциально опасных сервисов может быть ограничено, что повышает защищенность границ сети. В современных маршрутизаторах реализованы развитые средства межсетевого экранирования. Подобные устройства эффективнее, проще в администрировании и экономичнее, чем межсетевые экраны (МЭ), установленные на специально выделенных хостах. С помощью маршрутизаторов можно организовывать подсети, полезные с точки зрения повышения управляемости и эффективности. Еще важнее то, что после создания подобных подсетей защитные средства современных маршрутизаторов могут предоставить или ограничить доступ к ресурсам, входящим в подсети, в соответствии с выбранной ПБ. Например, в случае отдела по работе с персоналом, конфиденциальная информация о сотрудниках может быть размещена на защищенном сервере в одной подсети, в то время как данные об имеющихся вакансиях выносятся в другую подсеть, открытую для всеобщего доступа. Маршрутизатор блокирует попытки неавторизованного доступа в подсети, защищая тем самым конфиденциальную информацию.
88
Информационная безопасность открытых систем
В интранете учитываются:
	подключения каждой рабочей станции на основе протокола IP (или кратко -IP-подключения);
•	IP-шлюзы;
	смешанное IP- и не IP-подключение рабочих станций;
•	возможность работы с мейнфреймами, которые снова активно используются в современных сетях.
Кроме того, применение IP требует соответствующих средств администрирования. Протокол динамической конфигурации хостов (Dynamic Host Configuration Protocol, DHCP), являющийся открытым промышленным стандартом, был разработан как средство динамического выделения хостам IP-адресов. Он упрощает управление IP-сетями, так как может быть использован для централизованного управления процессом настройки стека протоколов TCP/IP на клиентских машинах (например, адрес шлюза по умолчанию или адрес DNS-сервера).
Итак, сетевая инфраструктура интранета базируется :
1)	на каналообразующем оборудовании (маршрутизаторы, коммутаторы, концентраторы и т. п.) со средствами поддержки (это предмет отдельного обсуждения, не входящий в задачу данного учебника);
2)	внешних и внутренних веб-серверах (http);
3)	других внешних и внутренних серверах [административный, почтовый, доменной системы имен (Domain Name System, DNS), распределения нагрузки, директорий, обработки таксономий, локального и удаленного доступа, разнообразных БД (включая базы пользователей), наследуемых систем, зеркализовании и репликации, электронной коммерции и т. д.];
4)	клиентском обеспечении;
5)	средствах защиты типа МЭ (с возможностями кеширования информации на основе прокси-серверов).
Для большей наглядности на рис. 17 приведена более детальная расшифровка отдельных элементов сетевой инфраструктуры интранета. Реальная структура интранета должна отражать структуру организации, ее состав и подразделения. Для каждого подразделения должна быть при необходимости выделена своя подсеть, для которой определяются внутренние и внешние пользователи.
Информация чаше всего находится на компьютерах, которые называют вебсерверами. Веб-сервер в интранете является удобным и экономичным инструментом для публикации однократно составленных (в смысле основного "шаблона" вида документа, а не его конкретного наполнения, которое сегодня постоянно обновляется и динамически "подгружается" из баз данных в отведенные для этого поля шаблона) и многократно используемых документов (write-once, read-many) внутри организации, доступных любому пользователю с браузером. Сервер хранит документы и выполняет запросы пользователей о поиске и просмотре данных. В Интернете каждый веб-узел располагается на отдельном сервере, а сами серверы разбросаны по всему миру. В интранете корпоративная информация может находиться на одном или нескольких серверах, расположенных по всей организации. Веб-сервер может также предоставлять доступ к информации, хранящейся на других типах серверов. Например, он может быть объединен с серверами БД, электронной почты или источником данных на мейнфрейме.
2. Интранет как открытая система
89
Рис. 17. Пример сетевой инфраструктуры интранета
Узлы второго типа содержат совместно используемые группой страницы, предоставляющие доступ к общим и групповым сервисам и являющиеся местом для общения с группой.
Централизованный узел выполняет более глобальные задачи в рамках интранета:
	позволяет за счет централизации осуществлять более удобное сопровождение (своевременное и быстрое обновление информации, ее многократное использование, сокращение времени доступа к информации и т. п.);
	согласовывает навигацию всех пользователей интранета;
	предоставляет удобную связь с пользователями;
	поддерживает простой запуск и последующее использование веб-средств;
	является основными воротами для перехода на другие узлы.
Вот некоторые вопросы, которые помогут оценить эффективность узлов интранета.
1.	Были ли при создании узла компании учтены мнения и нужды сотрудников?
2.	Понимаете ли вы, как интранет может помочь сотрудникам и другим менеджерам выполнять их работу более эффективно?
3.	На основании чего разрабатывалась архитектура узла? Была ли она проверена? Соответствует ли она интуиции пользователя?
4.	Каков контент узла? Заметит ли кто-то, если вы уберете какую-то его часть? Каковы критерии отбора материала для контента?
5.	Насколько велика статистика посещений узла? Следит ли за ней кто-нибудь? Влияет ли она на отбор материала для контента узла?
90
Информационная безопасность открытых систем
6.	Привлекателен ли дизайн узла? Нравится ли он сотрудникам?
7.	Поддерживает ли узел брэнд компании? (брэнд - это не только логотип компании, но и то впечатление, которое остается у клиента после контакта с компанией).
8.	Доступен ли узел со всех компьютеров в компании? Может ли сотрудник зайти на него, когда он дома?
9.	Насколько узел эффективен? Могут ли сотрудники найти нужную информацию максимально быстро?
10.	Какое место интранет занимает в рекламе компании? Как элементы этой системы поддерживают друг друга?
В сетевой инфраструктуре интранета важна поддержка следующих возможностей:  простота инсталляции;
	функциональность;
	простая интеграция в существующие в системе сервисы;
•	возможность применения того, что в организации уже знают и имеют;
	масштабируемость;
	работа со средствами третьих фирм.
И еще одно важное замечание. Прогнозируемый при развертывании интранета трафик может не создавать проблем. Но надо быть готовым к тому, что развитие интранета постепенно приведет к возникновению подобных проблем. Проектируемая изначально сетевая инфраструктура должна учитывать это обстоятельство.
Информационное наполнение
Главная цель интранета заключается в том, чтобы стать доверенным средством ведения бизнеса. Этого не произойдет, если для доступа пользователей открыта лишь небольшая часть ее информационного наполнения или доступная информация вообще устарела. Ведь не зря считается, что чем больше серверов и информации в интранете, тем она ценнее. Пользователь получает эту информацию через веб-узлы. Современные узлы интранет представлены динамическими веб-страницами, формируемыми специальными средствами на основе взаимодействия с БД интранета или с другими допустимыми источниками.
Информация в интранете, хранимая в виде структурированных или неструктурированных данных, может поступать как из внутренних, так и из внешних источников (рис. 18).
Примерами внешней информации являются внешние веб-архивы (например, с внешнего веб-узла организации), сведения, необходимые сотрудникам организации для осуществления их функций, получаемые из различных внешних источников, например котировки валют, прогноз погоды, географические карты, расписания авиаперелетов и т. п., а также информация для клиентов компании (например, пресс-релизы, каталоги, руководства, справочники, прайс-листы, заказ продуктов и услуг, вопросы и ответы). Внутренняя информация интранета предназначена для служащих организации и состоит из новостей компании, систематизированных библиотек хранимых документов и документаций, финансовых данных, информации отдела кадров, описаний проектов и отчетов, маркетинговых исследований, расписаний курсов повышения квалификации и учебных материалов, ссылок на различные источники и т. п.
2. Интранет как открытая система
91
external information
Внешняя информация external Web archives
Рис. 18. Информационное наполнение интранета
Содержимое интранета, т. е. его информационное наполнение, хранится в документах. По умолчанию они имеют формат HTML (Hypertext Makeup Language). Язык разметки документов, каким и является HTML, - это набор специальных инструкций, называемых тегами, предназначенных для формирования в документах какой-либо структуры и определения отношений между различными элементами этой структуры. Теги языка (или, как их иногда называют, управляющие дескрипторы) в таких документах каким-то образом кодируются, выделяются относительно основного содержимого документа и служат в качестве инструкций для программы, производящей показ содержимого документа на стороне клиента. Использование гипертекстовой разбивки текстового документа в современных ИС во многом связано с тем, что гипертекст позволяет создавать механизм нелинейного просмотра информации. В таких системах данные представляются не в виде непрерывного потока текстовой информации, а набором взаимосвязанных компонентов, переход по которым осуществляется при помощи гиперссылок. Самый популярный на сегодняшний день язык гипертекстовой разметки - HTML.
	Документы HTML имеют небольшие размеры, что облегчает их передачу по сети.
	Язык HTML является текстовым и не зависит от какой-либо платформы, так что серверы и клиенты могут быть установлены на любых компьютерных платформах.
	Формат HTML является более или менее открытым стандартом, и средства разработки для него создаются множеством компаний.
На смену HTML приходит новый язык гипертекстовой разметки, мощный, гибкий и одновременно с этим удобный, - XML (Extensible Markup Language). Он описывает целый класс объектов данных, называемых XML-документами. Этот язык используется в качестве средства для описания грамматики других языков и контроля за правильностью составления документов. То есть сам по себе XML не содержит никаких тегов, предназначенных для разметки, он просто определяет порядок их создания. Таким образом, у разработчиков появляется уникальная возможность определять собственные команды, позволяющие им наиболее эффективно находить данные, содержащиеся в документе. Автор документа создает его структуру, строит необходимые связи между элементами, используя те команды, которые удовлетворяют его требованиям, и добивается такого типа разметки, который необходим ему для вы
92
Информационная безопасность открытых систем
полнения операций просмотра, поиска и анализа документа. Еще одним из очевидных достоинств XML является возможность использования его в качестве универсального языка запросов к хранилищам информации. XML-документы могут выступать в качестве уникального способа хранения данных, который включает в себя одновременно средства для разбора информации и представления ее на стороне клиента. XML позволяет также осуществлять контроль за корректностью данных, хранящихся в документах, производить проверки иерархических соотношений внутри документа и устанавливать единый стандарт на структуру документов, содержимым которых могут быть самые различные данные. Это означает, что его можно использовать при построении сложных информационных систем типа интранета, в которых очень важным является вопрос обмена информацией между различными приложениями, работающими в одной системе.
Хотя гипертекстовые документы являются ключевым компонентом любого интранета, документы других типов также могут играть в нем важную роль. Здесь стоит упомянуть возможность работы с различной мультимедиаинформацией.
Все информационное богатство интранета в виде метаданных находится в информационном хранилище, или репозитории [27]. Термин "мета" (meta) появился из греческого слова, которое означает "рядом, с, после, следующий". Более позднее латинское и английское употребление использует термин "мета” для определения чего-то абстрактного или сверхъестественного. Метаданные, кроме того, могут быть интерпретированы как данные о других данных. Это термин века Интернета, определяющий информацию, которую традиционно организуют в виде каталогов и которая чаще всего используется для описания веб-ресурсов. В книге "Хранилище данных" Дон Майер (Don Mayer) и Кейси Кэнон (Casey Canon) делят метаданные на две категории: технические и коммерческие. Техническими метаданными пользуются программы управления хранилищами и администраторы. Эти метаданные определяют содержание данных в прежних системах-источниках, сообщают, какая обработка была произведена в хранилище (извлечение, преобразование, очистка, интеграция, обновление графиков управления процессами). Коммерческие метаданные позволяют нетехническим пользователям просматривать содержимое хранилища, таблицы и графики, которые являются элементами информации; определяют, как могут быть использованы эти элементы и насколько актуальны резидентные данные. Большинство коммерческих метаданных сопровождается описанием содержания, в интранете используются оба этих типа метаданных.
В общем случае метаданные помещаются в централизованно управляемый репозиторий, в который включается информация о структуре данных хранилища, структурах данных, импортируемых из различных источников, о самих источниках, методах загрузки и агрегирования данных, сведения о средствах доступа, а также бизнес-правилах оценки и предоставления информации. Там же содержится информация о структуре бизнес-понятий. Так, клиенты могут подразделяться на кредитоспособных и некредитоспособных, на имеющих или не имеющих льготы, они могут быть сгруппированы по возрастному признаку, по месту проживания и т. п. Как следствие, появляются новые бизнес-понятия: "постоянный клиент", "перспективный клиент" и т. п. Некоторые бизнес-понятия (соответствующие измерениям в хранилище данных) образуют иерархии, например, "товар" может включать "продукты питания"
2. Интранет как открытая система
93
и "лекарственные препараты", которые, в свою очередь, подразделяются на группы продуктов и лекарств и т. д.
Широко известны репозитории, входящие в состав популярных CASE-средств [Power Designer (Sybase), Designer 2000 (Oracle), Silverrun (CSA Research)], систем разработки приложений [Developer 2000 (Oracle), Power Builder (Sybase)], администрирования и поддержки ИС (Platinum, MSP). Все они, однако, решают частные задачи, работая с ограниченным набором метаданных, и предназначены в основном для облегчения труда профессионалов - проектировщиков, разработчиков и администраторов ИС. Репозиторий метаданных предназначен не только для профессионалов, но и для пользователей, которым он служит в качестве поддержки при формировании бизнес-запросов. Более того, развитая система управления метаданными должна обеспечивать возможность управления бизнес-понятиями со стороны пользователей, которые могут изменять содержание метаданных и образовывать новые понятия по мере развития бизнеса. Когда структура метаданных разработана и система управления ими спроектирована, решается задача заполнения и обновления данных в репозитории.
Репозиторий должен поддерживать быстрый доступ к информации. Большинство серверов хранилищ загружает часть репозитория в память, но для больших объемов данных требуется быстрый доступ и к устройствам постоянного хранения. Есть несколько различных стратегий хранения данных. В них входят хранение информации репозитория в реляционной БД, хранение ее в собственном репозитории с памятью на дисках и комбинация этих двух способов.
В качестве хранилищ информации чаще всего выступают реляционные СУБД типа Oracle, Informix, Sybase и т. п. Эти хранилища представляют собой доверенную централизованную базу, содержащую совместно используемую внутри организации информацию и предоставляющую доступ ко всем корпоративным данным. Способ и средства извлечения информации из репозитория зависят от того, где и в каком виде (открытом, зашифрованном, заархивированном) она хранится. Эти средства нуждаются в постоянной поддержке и обновлении, поскольку в их функции входит предоставление различных уровней защиты, фильтрация и ежедневное пополнение информации из многочисленных источников.
Информацию в репозитории проще хранить в виде взаимосвязанных БД, так как ими проще управлять, чем большим количеством полностью хранимых веб-страниц. Кроме того, использование БД упрощает управление контентом. На основе содержимого БД можно создавать требуемые веб-страницы. Но для поиска информации в БД потребуются иные поисковые механизмы, а не те, которые создавались под вебтехнологии.
Основными стратегиями для репозитория являются:
	управление БД;
	поддержка различных источников информации;
	конвертирование информации;
	архивирование информации;
	обеспечение ее ИБ (например, за счет применения средств шифрования), как одной из важнейших потребностей бизнеса;
	"распределение" источников по целям (например, внутренние, внешние, партнеры...).
94
Информационная безопасность открытых систем
Отдельно выделим, какими средствами обеспечивается в репозитории доступ к БД.
	Чаще всего посредством скриптов CGI, каждый из которых соответствует отдельному запросу на извлечение требуемой информации из БД.
	Через специфичные для различных серверов интерфейсы прикладного программирования API, которые хорошо согласуются с архитектурой сервера, осуществляют надежную и устойчивую обработку данных и отличаются большой производительностью (примеры интерфейсов - NSAPI, ISAPI, CAPI, WSAPI и т. п.).
	Возможен прямой доступ к БД, когда в один отдельно взятый момент времени осуществляется обращение только к одной БД.
	Через открытый интерфейс взаимодействия с БД (Open DataBase Connectivity, ODBC), который позволяет осуществлять доступ сразу к нескольким БД.
	Через интерфейс взаимодействия с БД на языке Java (Java Database Connectivity, JDBC).
Также очень часто требуется организация доступа к наследуемой информации, сохранившейся от ранее созданных в организации ИС. Решение здесь достаточно простое: или преобразование терминальных приложений в гипертекст "на лету", или установление терминальных сессий с веб-страницей, или использование серверов приложений, выступающих в качестве посредников в передаче информации между веб-сервером и приложением.
Единственная проблема, которая может возникнуть, - это необходимость обеспечения надежности устанавливаемых сессий.
Ранее уже отмечалось, что интранет является гетерогенной средой, в которой представлены различные средства. Это же правомерно отметить и для информационного его наполнения. Поэтому обязательно требуется осуществить интеграцию подобных средств в существующую прикладную среду интранета. Есть различные системы, позволяющие это сделать (прил. 1), например, HahtSite (фирмы НАНТ Software) [http://www.haht.com] извлекает информацию из существующих БД, разработки фирмы Edify [http://edify.com] и т. п.
Кроме того, обязательно потребуются системы управления документами, или системы электронного документооборота (типа DOCSFusion фирмы Hummingbird).
В заключение данного подраздела отметим самые важные требования к информационному наполнению интранета.
	Быстрый доступ к ключевой информации.
	Актуальность и достоверность информации.
	Легкий поиск информации.
	Знание владельцев информации и контроль за этим.
Приложения
Кроме разнообразного сетевого оборудования, интранет обязательно включает и ряд приложений - программных компонентов, предназначенных для обеспечения решения задач бизнеса организации. Приложения интранета делятся на несколько групп [22]:
	базовые, предоставляемые интранет в качестве стандартных средств: клиент-серверное обеспечение, электронная почта, стандартное и групповое ПО, телеконференции, компьютерная телефония, хранение и совместное использование информации, навигация и поиск, справочники, электронный документооборот;
2. Интранет как открытая система
95
	приложения, поставляемые независимыми производителями ПО;
	приложения, разрабатываемые специально для нужд каждой организации: базы и хранилища данных со средствами доступа к ним, работа с контентом (управление контентом, карты информации, средства поддержки принятия решений, фильтрация контента, механизмы индексации, сохранение контента и т. п.), корпоративные стандарты, исследования, проекты, продажи и маркетинг, кадровые и финансовые приложения, взаимодействие с партнерами и поставщиками;
	шлюзы приложений, осуществляющие доступ к наследуемым системам, хранилищам данных, сервисам, средствам управления и т. п.
Отличительной особенностью этих приложений должна быть высокая производительность, что особенно важно при наличии большого числа пользователей и обработки больших информационных массивов.
Для работы в интранете и просмотра документов, хранящихся на серверах, применяют клиентские приложения, называемые браузерами. Они выполняют несколько функций:
	поиск информации и подключение к веб-серверу;
	загрузку, форматирование и вывод на экран документов на языке гипертекста;
	распознавание гиперссылок и переход к соответствующим документам;
	обеспечение таких стандартных средств работы, как кнопки Back (Назад) и Next (Далее), папки Favorites (Избранное) и History (Журнал).
Помимо основных функций, браузер также может выводить такие элементы мультимедиа, как звук, видео или трехмерное изображение. Браузер также поддерживает использование управляющих элементов, что существенно расширяет его возможности.
Существует множество средств, предназначенных для написания приложений для интранета (в первую очередь для разработки веб-приложений). Они включают управляющие элементы, сценарии и серверные компоненты. Управляющие элементы являются частью приложений, которые могут выполняться в браузере. Расширяя возможности последнего, они позволяют использовать решения, по природе более близкие к обычным приложениям, не ограничиваясь функциями просмотра документов. Такие управляющие элементы создаются с помощью языков C++, Java, Microsoft Visual Basic. После написания их помещают прямо в гипертекстовые документы. Языки сценариев прочно связаны с управляющими элементами и используются для управления последними или для динамического изменения содержания документа. Это простые языки программирования, способные взаимодействовать с управляющими элементами, реагировать на события и работать с БД на сервере. Microsoft Visual Basic Scripting Edition (VBScript) и JavaScript являются примерами таких языков. Сценарии тоже помещаются в гипертекстовые документы и могут выполняться как на сервере, так и в браузере. Очень часто используемым подходом являются скрипты. Но, как и все в компьютерном мире, средства разработки приложений развиваются очень стремительно и на рынке появляются все новые и новые продукты, которые сначала дополняют, а потом и вытесняют устаревшие.
Система публикации информации
Система публикации преследует очень важную цель - дать возможность и средства интерактивно, быстро и легко создавать и автоматически обновлять различные
96
Информационная безопасность открытых систем
веб-узлы и публиковать на них имеющуюся у владельцев информацию. При выборе и реализации системы публикации информации в первую очередь требуется ответить на некоторые "трудные" вопросы. Кто владеет информацией? Что можно публиковать? Кто управляет процессом публикации? Как узнать, что опубликованная информация "свежая"? Что делать, если интерес к публикациям будет потерян?
К системе веб-публикации относятся средства, процессы, шаблоны для создания и обновления новых информационных веб-узлов, средства совместного использования информации и стандарты реализации. Вот лишь начальный состав простейшей системы публикации, который потом по мере необходимости будет расширяться: гипертекстовые редакторы; гипертекстовые шаблоны; конверторы; Java-апплеты (описания процессов); связи с веб-архивами; поисковые механизмы (с путеводителями); формы для обратной связи; шаблоны; средства помощи (графика, коды и т. п.).
Такие средства должны позволять:
	создавать тематические категории;
	работать с поисковыми системами;
	публиковать материалы различного объема, с системой комментариев к каждой публикации;
	осуществлять поддержку авторских профайлов (можно зарегистрировать постоянных авторов в системе, и в дальнейшем все их публикации будут сопровождаться такими авторскими атрибутами (все они необязательны), как подпись, фото и имя автора, адрес его электронной почты и т. д.;
	предоставлять возможность выбора режима работы системы: статический (создаются статические страницы для каждой публикации) или динамический (все генерируется системой на лету, в момент запроса страницы пользователем);
	оптимизировать публикации для поисковых систем: индивидуальный титул, метаописания, ключевые слова для индексации каждой публикации;
	поддерживать нескольких шаблонов для каждой тематической категории;
	осуществлять полный контроль внешнего вида публикации;
	иметь версию для печати и отправки публикации по запросу по электронной почте;
	загружать файлы (в том числе картинки, фото и т. п.) через WWW;
	подключать необходимые интерпретаторы языков программирования (типа РНР, ASP и т. п.);
	предоставлять удобный интерфейс для пользователей и администратора.
Какие средства для подготовки публикаций сегодня доступны на рынке? В первую очередь это средства для авторов (authoring tools), которые не требуют от них знания специальных языков для гипертекстового представления информации. Microsoft Word, Microsoft Powerpoint позволяют автоматически конвертировать документы в веб-формат. Некоторые современные системы объединяют веб-средства и средства рабочего стола (примеров много - Lotus SmartSuite, Internet Assistants для Excel, Powerpoint и Word, средства просмотра документов Word и Excel, PerfectOffice, WordPerfect, Quattro Pro и т. д.). Простое в использовании средство - HTML Transit преобразует многие форматы документов в гипертекст, таблицы и фреймы. Другая известная система "Domino" позволяет хранить контент и управлять им, имеет сервис директорий и преобразует контент (Notes -> HTML) на лету.
2. Интранет как открытая система
97
Доступны сложные средства с контролем и синхронизацией версий, поддержкой совместного авторства при работе над одним и тем же документом, с возможностью согласования и утверждения документов, их редактирования в простом браузере, а также подсистемами аудита. Это, например, продукт MKS Web Integrity [http://www.mks.com/solution/wi/] и средство совместной работы для Интернет-разработчиков Wallop’s Build-IT [http://www.wallop.com].
В данной категории систем можно упомянуть и средства для создания частей или даже целых веб-узлов, начиная от простейших типа HomeSite, QuickSite, Fusion, Frontpage, InterDev и кончая системами для профессионалов (прил. 1). Все эти средства имеют готовые шаблоны и коллекцию различных стилей.
Простое перечисление систем для подготовки публикаций позволяет понять одну важную проблему — систем на рынке много, их стандартизировать довольно сложно. Поэтому целесообразно заняться стандартизацией контента, а не средств его создания.
Также требуется, чтобы у издателей или простых пользователей интранета под рукой всегда были легкие и удобные в применении средства для представления или конвертирования информации в нужный формат, а также для их добавления к информационным хранилищам интранета. Кроме того, издатели должны знать все применимые в их интранете корпоративные форматы. Отметим, что для исполнения этих новых функций по изданию публикаций для интранета потребуется специально обученный персонал.
Управление интранетом
Каждая информационная технология поддерживает определенные методы управления. Метод управления определяет то, на что и как надо воздействовать управляющему для достижения ожидаемых результатов бизнеса.
Как только интранет появилась в организации, возникает ряд начальных проблем управления: управлять организационно и технически; осуществлять мониторинг работы интранета; адаптировать его к реальным условиям работы; заинтересовывать пользователей, показывать им преимущества интранета и добиваться поддержки со стороны всех служащих; реализовывать механизмы для его широкого использования. После начального периода эксплуатации интранета проблемы управления заметно усложняются и включают следующие действия: постоянное планирование и выделение основных направлений развития; поддержка; финансирование; внедрение новых технологий; совершенствование и расширение инфраструктуры и сервисов; постоянное обучение пользователей и персонала. При этом управление интранетом является многофункциональным и распределенным, с постоянной потребностью в координации всех действий и разрешении сложностей, возникающих при определении зон ответственности.
Традиционные подходы к построению ИС предполагают создание приложений под названием "автоматизированное рабочее место руководителя", реализующих ограниченный набор функций управления документами, контроля исполнения и т. д., т. е. ставят руководителя организации в весьма жесткие рамки. Как правило, такие приложения обладают массой недостатков, сложны, неудобны в использовании, требуют обучения и реально на практике руководителями не применяются. Причина неуспеха такого подхода - функциональная ограниченность и неестественный интерфейс. Руководитель современной организации - человек занятой. Он не может тра
4—2368
98
Информационная безопасность открытых систем
тить время на освоение сложностей работы с тем или иным приложением. С другой стороны, руководителю все же необходимо иметь адекватную и всеобъемлющую информацию о деятельности организации, чтобы в любой момент времени представлять, что же все-таки в ней происходит. Для решения этой задачи идеально подходит технология интранета. Не требуется практически никаких знаний о специфике работы приложения (так как самого-то приложения и нет - работа ведется с навигатором). Достаточно касания курсором мыши нужных ссылок и нажатия одной кнопки. В то же время спектр информации, предоставляемой руководителю, практически ничем не ограничен. Он не ограничен возможностями навигатора (поскольку навигатор лишь средство доступа к информации). Он никак не ограничен техническими возможностями веб-сервера. Вся информация, генерируемая в данной организации, может стать доступной для руководителя (разумеется, в концентрированном и сжатом виде). Для этого нужно только правильно спроектировать и подготовить содержание информационного сервера.
Управление интранетом осуществляется по нескольким основным направлениям:
	организационная и техническая поддержка и финансирование существующей инфраструктуры;
	интеграция и обновление информационных и сетевых ресурсов;
	реализация и обновление ПБ, регламентов и стандартов;
	работа с персоналом и пользователями (обучение новым знаниям в области информационных и сетевых технологий и обучение вопросам ИБ);
	планирование развития инфраструктуры, сервисов и механизмов и внедрение новых технологий, которые нужно отслеживать и оценивать перед выбором.
Как и в любом другом деле, при создании интранета начать не так сложно, как сложно правильно продолжить. Это означает реализацию целого спектра каждодневных мероприятий, включающих:
	постоянное сопровождение;
	управление средой, включая мониторинг серверов и взаимодействия клиент-сервер, в том числе удаленный;
	необходимость постоянного внесения изменений;
	работа в условиях многоплатформенности и многосистемности;
	решение вопросов полосы пропускания и качества обслуживания;
	хранение огромных информационных массивов (тысячи и тысячи документов в разных форматах);
	решение проблем переполнения информацией и уничтожения (или архивирования) устаревшей информации;
	поддержка издательской деятельности;
	работы по реализации масштабируемости;
	привлечение высококвалифицированных специалистов;
•	обучение и постоянная поддержка большого числа пользователей;
	обеспечение ИБ;
	постоянное финансирование.
Подчеркнем особо, что для управления интранетом важно определить, утвердить, реализовывать и проводить постоянный аудит политик доступа, опубликования, контента и безопасности. Политика доступа регламентирует, например, такие вопросы, как что и когда может быть доступно; сами виды доступа и способы их поддержки;
2. Интранет как открытая система
99
наличие ресурсов без ограничений доступа; доступ бизнес-партнеров и многое другое. Политика опубликования указывает, кто может создавать веб-узлы, кто за это отвечает и степень ответственности (подотчетности). Политика в отношении контента определяет тех, кто его может создавать, как обеспечивается актуальность этого контента, как проверяется его целостность и т. п. ПБ описывает и классифицирует по степени секретности защищаемые ресурсы, доступ к ним для различных категорий пользователей (трастовые модели), угрозы безопасности и возможные риски, меры и средства защиты, способы аудита, ответственность за нарушение политики и т. п. (см. п. 5.5).
Можно выделить следующие три большие группы методов управления ресурсами, процессами и корпоративными знаниями (коммуникациями) [23]. (Специфику метода управления можно также определить способами представления корпоративных знаний на уровне прикладных моделей и на уровне универсальных языков представления.)
Модель первой группы методов представляет организацию как систему ресурсов (финансов, материальных запасов, кадров), принадлежащих владельцам - юридическим лицам, структурным подразделениям, физическим лицам. Все процессы описываются как проводки, отражающие перемещение ресурсов между владельцами. К первой группе можно отнести управление финансами, материальными запасами, кадрами в той степени, в которой они рассматриваются как ресурс (заработная плата). Основная цель управления для этого метода - обеспечение ресурсами и контроль за ними. Метод управления хорошо описывается моделями, ставшими стандартами: модель бухгалтерского учета (например, GAAP), планирование производственных ресурсов (MRP II), планирование всех ресурсов предприятия (ERP). В качестве универсального языка представления используются балансовые модели с языком проводок. Методы этой группы поддерживаются широким спектром прикладного ПО, при этом наиболее распространены бухгалтерские системы. В наибольшей степени к поддержке данного метода управления тяготеют СУБД.
Вторая группа представляет организацию как систему бизнес-процессов. Здесь центральными понятиями выступают процесс, функция, данные, событие. Основная цель управления для этих методов - обеспечение координации событий и функций. Ко второй группе можно отнести такие методы, как управление качеством (TQM -стандарт IS09000), управление процессами (Workflow - стандарты ассоциации Workflow Management Coalition). К этой же группе можно отнести управление проектами (семейство стандартов PMI), но лишь в той степени, в какой эти проекты можно считать типовыми, сведенными до уровня технологии. В качестве универсального языка представления описания используются формальные языки, многие из которых зафиксированы как стандарты: языки семейства IDEF, CIM-OSA, языки описания объектно-ориентированных моделей. Методы управления поддерживаются ПО, которое известно как системы управления проектами, документооборотом, технологическими процессами.
Третья группа представляет организацию как систему небольших коллективов сотрудников, решающих общую задачу, а в роли организующих факторов выступают корпоративные знания и эффективные коммуникации. Главным корпоративным ресурсом управления становится база корпоративных знаний, в которой сотрудники могут быстро найти информацию для принятия правильного решения и понимания друг друга. Эта база концентрирует в себе коллективный опыт компании и создает
100
Информационная безопасность открытых систем
контекст корпоративных коммуникаций. Основная цель управления - обеспечение координации, коммуникации и быстрого поиска информации для самостоятельного принятия решения. Эта группа методов управления сейчас переживает период бурного развития и получила общее название управление знаниями (Knowledge Management). О стандартах на уровне моделей говорить пока еще рано. Хотя в области универсальных языков описания наметились некоторые тенденции. Для структурирования информации начинает активно применяться язык SGML, который зафиксирован как стандарт ISO 8879. К этой группе методов также относятся методы управления сложными нестандартными проектами (семейство стандартов PMI). В таких проектах критическим фактором управления являются проектные коммуникации и квалификационный уровень проектной группы. Методы управления поддерживаются программными средствами класса группового обеспечения, информационнопоисковыми системами, интранет-технологиями: веб-технологией, электронной почтой, телеконференциями. Системы, обеспечивающие работу коллективов пользователей, послужили отправной точкой технологии интранета. Далеко не случайно лидеры рынка ПО этого класса стали ведущими производителями интранет-систем: Lotus, Microsoft, Novell. Наряду с перечисленными производителями прочное место на этом рынке заняли Netscape и Oracle.
У каждого метода управления есть своя область эффективности, но бывают случаи, когда внедрение одного метода просто невозможно без использования другого. Например, попытки внедрения системы управления качеством (TQM) на американских предприятиях заканчивались неудачей до тех пор, пока не была осознана необходимость управления корпоративной культурой. Если сотрудники не образуют сплоченный коллектив, в котором все проблемы (отклонения от технологии) быстро находят решение, TQM просто не будет работать. Японцы для управления первоначально использовали не ИТ, а социальные и организационные механизмы (кружки качества), хорошую внутрикорпоративную связь, единое описание всех видов деятельности компании (тотальное документирование). Появление интранета придало TQM совершенно новое качество. Не случайно многие западные компании, внедрившие у себя интранет, вскоре внедрили и TQM и прошли сертификацию по стандарту IS09000.
И о финансировании интранета. Существует несколько основных моделей финансирования интранета за счет бизнеса. Во-первых, затраты на интранет могут стать отдельной статьей расходов. Иное дело, когда она поддерживается из сэкономленных средств. И совсем иной способ финансирования за счет накладных расходов или из прибыли. И все же реальность такова: наибольшие расходы идут на сопровождение и расширение интранета, а не на его начальное развертывание. К этому нужно быть готовыми при принятии решения о его создании в организации.
Персонал
Для сопровождения интранета и его дальнейшего развития и совершенствования требуется новый персонал, предполагающий введение в организации ряда новых должностей (рис. 19) [24]: веб-совет во главе с основным руководителем, решающий все вопросы развития и использования интранета, веб-мастер (возможно целое подразделение с руководителем и несколькими исполнителями), издатели, несколько рабочих групп (техническая группа, группа поддержки сервисов, веб-разработчики) и т. п. Специфика введения этих новых должностей полностью зависит от фирмы -ее культуры, потребностей, текущего состояния.
2. Интранет как открытая система
101
В круг обязанностей издателя контента входит публикация информации в интранете. Именно он несет всю ответственность за ее точность, актуальность и соответствие политике безопасности.
Рис. 19. Новые должности и интранет
"Привратник" отвечает за интеграцию и сопровождение информации, публикуемой в интранете, осуществляя техническое управление, управление контентом, участвует в определении ПБ ресурсов интранета и реализации мер их защиты.
От веб-мастера требуются значительные знания и навыки по работе с интранетом:
	веб-мастер в одном лице — миссионер, проповедник, технолог, менеджер проектов, учитывающий общественное мнение, осуществляющий обучение и руководство;
	у него в подчинении должна быть многофункциональная рабочая группа;
	он осуществляет интеграцию новой информации и приложений с уже существующими в организации информационными системами и ресурсами;
	он должен быть высококвалифицированным специалистом с широким кругозором в области информационных и сетевых технологий, постоянно повышающим свой профессиональный уровень.
Информационный архитектор наделен более глобальными функциями - он определяет и корректирует информационную стратегию для интранета.
Прежде чем создавать штат таких сотрудников, рекомендуется изучить, что делают в аналогичной ситуации другие компании.
Как правило, работать в развертываемом интранете начинает группа пионеров. Но их опыта и знаний не всегда достаточно на следующей стадии, когда в связи с ростом объема работ появляется потребность в узкой специализации персонала. С точки зрения безопасности "вырастить" свой персонал для поддержки интранета лучше, чем привлекать сторонних консультантов.
2.1.4.	Виды интранета
Выделяют четыре основных вида интранета [18].
Первый вид. Базовая сетевая инфраструктура организации дополняется браузерами и веб-серверами с базовым информационным наполнением. Значимость этого наполнения способствует тому, что различные подразделения компании присоединя
102
Информационная безопасность открытых систем
ются к системе и добавляют информацию, а следовательно, значимость интранета экспоненциально увеличивается. Когда сеть начинает широко использоваться и появляется возможность доступа к "критической массе " данных, внимание администратора переключается на структуру и организацию информации.
В таком интранете обеспечивается статический доступ к статическим данным. Термин "статический доступ" указывает на способ поиска информации пользователями. В рассматриваемом случае он осуществляется с помощью имеющихся связей или известных адресов. Данные являются статическими: они однажды созданы и могут быть изменены только владельцем информации.
Второй вид. В дополнение к первой модели вводятся поисковые средства информации. Механизмы поиска информации и путеводители по ресурсам упрощают пользователям нахождение документов, однако приводят к усложнению системы, поскольку нуждаются в управлении индексами поиска. Кроме того, они заставляют администраторов с повышенным вниманием относиться к системной и сетевой производительности. При этом пользователи получают динамический доступ к статическим данным.
Третий вид. В дополнение ко второй модели реализуются интерфейсы между системой и существующими БД и приложениями. Это позволяет связать с интранетом финансовые, кадровые, инженерные, коммерческие и другие приложения и БД, чтобы обеспечить к ним более широкий доступ с помощью простого в использовании клиентского интерфейса.
Для того чтобы обеспечить интерфейс с внешними ресурсами, требуются специализированные программы. Во многих случаях необходим дополнительный код для интеграции информации из множества источников в единое представление.
Пользователи получают средства доступа нового поколения, которые базируются на "выталкивающей" (push) модели предоставления информации. Вместо осуществления запросов и поиска (по системе "вытягивания" информации) пользователи создают свои профили по интересам, на которые ориентируется система, принимая решение, какую информацию выдать конкретному пользователю. Пользователь получает сообщение, когда интересующие его данные поступают в интранете или когда происходят определенные изменения элемента базы данных. Теперь интранет обеспечивает динамический доступ к динамическим данным.
В таком интранете корпорация может строить приложения, обеспечивающие интеграцию данных из множества источников.
Четвертый вид. Имея доступ ко всей корпоративной информации, организации настраивают его в соответствии с задачами бизнеса, потребностями своих клиентов или отдельных служащих. В этой модели интранет обеспечивается персонифицированный доступ к персонифицированным данным внутри и — при соответствующих условиях - вне интранета.
Доступ к интранету может быть реализован через унифицированный или даже персонифицированный вход, получивший название портала. Об этом речь пойдет в п. 2.4.
2.1.5.	Стандарты создания интранета
Известно, что большие ИС, в том числе и открытые, функционируют на основе стандартов. Появление интранет-систем знаменует собой процесс вытеснения решений, основанных на закрытых технологиях (решениях, разработанных одной фирмой
2. Интранет как открытая система
103
для одного приложения), и появления жестких требований к новым приложениям или даже к изменению существующих с тем, чтобы они работали на основе открытых стандартов. Процесс движения к открытым стандартам набирает скорость - коммерческие реализации ключевых компонентов информационных систем, таких, как средства управления ИС, электронная почта, телеконференции, очень быстро переходят на существующие открытые общепризнанные протоколы.
Поскольку важнейшей составляющей интранета является использование вебтехнологий, которые очень быстро меняются, стандарты не всегда успевают за этим процессом.
Выбор стандартов при создании интранета определяется задачами, которые решает организация. Если интранет нужен для получения информации, этот вопрос сводится к выбору множества поддерживаемых браузеров, типов информационного наполнения, схем адресации и серверных интерфейсов прикладного программирования API. Если интранет предназначен для распределенных вычислений, то должен быть принят ряд решений, и наиболее важное из них - какой прикладной протокол будет применяться для связи программ и ресурсов. Существует по крайней мере пять конкурирующих протоколов: Netscape Internet Inter-ORB Protocol (ПОР) для программного доступа к серверу, использующий простейший интерфейс Common Object Request Broker Architecture (CORBA); Distributed Component Object Model (DCOM) компании Microsoft; расширенный HTTP (HyperText Transport Protocol) и XML (Extensible Markup Language); CGI (Common Gateway Interface). Каждый из них имеет свои достоинства и недостатки. То же самое относится и к работе с БД, для которой можно выбрать интерфейс Open Database Connectivity (ODBC) компании Microsoft, Java Database Connection (JDBC) компании JavaSoft или более специализированный интерфейс, такой, как Data Access Object (DAO) или Remote Data Objects (RDO) компании Microsoft.
Стандартизация браузеров, серверов и спецификаций для текстов и мультимедийных данных упрощается по мере того, как характеристики разных продуктов и API становятся примерно одинаковыми. Однако некоторые тонкие различия все же остаются - даже в том, каким образом браузеры поддерживают такие основные возможности представления информации на экране, как таблицы и фреймы.
Приведем лишь часть открытых стандартов, которые сегодня лидируют и фактически стали стандартами де-факто ИС.
	Управление сетевыми устройствами (протокол SNMP).
	Информационный сервис (HTTP, HTML).
	Справочная служба (LDAP, Lightweight Directory Access Protocol - облегченный протокол доступа к каталогам).
	Электронная почта (протоколы SMTP, IMAP, MIME и др.).
• Конференции (протокол NNTP и др., в зависимости от вида — аудио, видео и т. п.).  Программирование (Java и т. п.).
Поскольку интранет является частью среды открытых систем (п. 2.2) и строится на Интернет-технологиях, то все стандарты для этих систем применимы и к интранету.
104
Информационная безопасность открытых систем
2.2. Интранет как часть среды открытых систем
В гл. 1 были рассмотрены основы современной теории открытых систем. Затем были введены базовые понятия и принципы создания и описания интранет-систем. Теперь можно связать воедино эти понятия, вернувшись к проблемам стандартизации и модельного представления открытых систем, и рассмотреть понятия, связанные с формированием сред интранета, но уже на новом, более глубоком уровне, через призму теоретических представлений о среде открытых ИС. Для этого целесообразно обратиться к современным моделям открытых систем, разработанным международными организациями.
Модель TOGAF (The Open Group Architecture Framework) [6] - документ, разрабатываемый международной организацией The Open Group. Он состоит из четырех основных частей. Первая часть ("Введение") описывает ключевые принципы, положенные в основу архитектуры современных ИС вообще и подхода модели TOGAF в частности. Вторая часть - "Метод разработки архитектур" (Architecture Development Method, ADM) - является ядром модели. Она описывает шаги, которым необходимо следовать в разработке архитектуры любой ИС, содержит принципы конструирования архитектуры, формально описывает цикл разработки системы. ADM опирается на "Фундаментальную архитектуру" (TOGAF Foundation Architecture), которая изложена в третьей части документа. Четвертая часть документа - "База ресурсов" (Resource Base) - описывает набор инструментальных средств и методических приемов, доступных для использования при применении модели TOGAF, и в частности методов ADM, на практике.
Модель TOGAF утверждает: непрактично пытаться описать единую, универсальную архитектуру для всех открытых систем. Неверно было бы строить одну архитектуру для любых целей и пытаться рассматривать ИС с одной точки зрения даже внутри одного предприятия, не говоря уже о существенно более сложных, глобальных ИС.
Для решения проблемы синтеза множества архитектур открытых систем модель TOGAF вводит концепцию организационного континуума (enterprise continuum, ЕС), основное содержание которой заключается в следующем. Существует непрерывное и бесконечное множество — континуум архитектур открытых систем, которые конструируются из единой каркасной модели посредством набора более узких моделей и строительных блоков. Такую каркасную модель под названием AF (architectural framework) описывает TOGAF. AF является инструментом для конструирования широкого ранга архитектур, оценки различных архитектур, выбора и построения корректной архитектуры для конкретной корпоративной информационной системы. С помощью AF путем выбора или модификации ее компонентов может быть описано сразу целое семейство взаимосвязанных архитектур.
Организационный континуум - комбинация двух взаимосвязанных и взаимодополняющих друг друга концепций (рис. 20): континуума архитектур (architecture continuum, АС) и континуума решений (solutions continuum, SC).
2. Интранет как открытая система
105
Рис. 20. Организационный континуум (по модели TOGAF)
Под континуумом архитектур понимается широкий диапазон, непрерывное множество архитектур различных типов, которые могут быть разработаны для всевозможных ИС на различных этапах их разработки, конструирования, выбора составных частей и моделей. Континуум архитектур отображает поступательное движение от абстрактного к конкретному, которое имеет место при создании архитектуры каждой ИС, на основе последовательной детализации и перехода от предельно общей модели, такой, как нормативная техническая модель TOGAF, к архитектуре реальной ИС.
В этом множестве архитектурных моделей может быть (условно) выделено несколько "опорных точек".
Фундаментальные архитектуры (foundation architectures, FA) — это архитектуры всех потенциально возможных функций, которые может выполнять какая бы то ни было ИС. FA описывают полную вычислительную среду. Фундаментальная архитектура самой модели TOGAF является примером FA.
Общесистемные архитектуры (common systems architectures, CSA) — это архитектуры, которые руководят выбором и интеграцией определенных сервисов из FA с целью создания архитектур для решения широкого класса взаимосвязанных задач: архитектур защиты, архитектур управления, сетевых архитектур и т. п. Каждая из них неполна, если рассматривается с точки зрения общей функциональности ИС, но полна в рамках определенной проблемы: обеспечения ИБ, управляемости системы, организации телекоммуникационной среды и т. п. Решения, реализующие каждую такую архитектуру, составляют строительные блоки ИС. Они совместимы с другими строительными блоками, синтезированными на основе общей FA, и могут быть использованы в любых комбинациях для создания функционально полных ИС.
Индустриальные архитектуры (industry architectures, I А) — архитектуры, которые руководят интеграцией общесистемных компонентов (компонентов из архитектур класса CSA) с компонентами архитектур из класса IA и созданием целевых решений для потребителя внутри определенной отрасли, например для банковской сферы, нефтехимической, газовой промышленности, авиакомпаний и т. п.
Архитектуры организаций (organization architectures, О А) описывают и руководят окончательным развертыванием компонентов ИС, из которых слагается необходимое
106
Информационная безопасность открытых систем
решение для определенной организации. Компоненты могут приобретаться пользователем в виде готовых решений, соответствующих архитектурам перечисленных выше классов, либо разрабатываться им самим.
Под континуумом решений понимается последовательный путь практической реализации архитектур из соответствующего уровня континуума архитектур, "население" логических моделей, абстрактных по своей сути, конкретными продуктами и системами информационных технологий. Из них, как из строительных блоков, постепенно вырастает реальная ИС, которая решает все задачи информационного обеспечения деятельности предприятия (организации, учреждения). В континууме решений также (условно) выделяется несколько опорных точек.
Продукты и услуги - это раздельно существующие (разработанные поставщиком или приобретенные конечным пользователем) аппаратные, программные или вспомогательные модули. Под последними понимаются различные услуги на рынке ИТ: обучение, консультации, системная интеграция, обслуживание и т. п. Продукты - это мельчайшие единицы, которые выполняют какие-либо полезные для потребителя функции обработки (передачи, хранения) данных.
Системные решения - это реализации CSA, слагаемые из набора продуктов и услуг, которые могут быть определенным образом оценены или сертифицированы на соответствие некоторым требованиям или задачам, сформулированным в CSA, например на соответствие критериям защищенности информации, высокой производительности и т. п.
Индустриальные решения - это реализации IA, которые обеспечивают универсальные пакеты компонентов и услуг, общих для определенной отрасли промышленности. Они могут набираться из стандартных продуктов и решений, но могут требовать и специального аппаратного и программного обеспечения. Например, в банковской сфере - банкоматы и пластиковые карты с соответствующим ПО.
Решения для организаций - это реализации ОА, которые обеспечивают требуемые функции для данной, конкретной организации. Они содержат наибольшее количество неповторимого, уникального контента, чтобы максимально полно отвечать требованиям всех деловых процессов, должностных лиц и потребителей организации.
Фундаментальная архитектура TOGAF — это архитектура общих сервисов и функций, обеспечивающих базис, на котором могут быть синтезированы более специфичные архитектуры и архитектурные элементы. Она состоит из трех компонентов: нормативной технической модели (Technical Reference Model, TRM), информационной базы стандартов (Standards Information Base, SIB) и информационной базы строительных блоков (Building Blocks Information Base, BBIB).
Основное назначение TRM - это описание тех функций вычислительной платформы, которые служат для поддержки ПП. Основные элементы TRM - это прикладное ПО, платформа приложений, коммуникационная инфраструктура, интерфейс платформы приложений (Application Platform Interface), интерфейс коммуникационной инфраструктуры (Communications Infrastructure Interface, СП) (рис. 21). TRM классифицирует сервисы платформы приложений.
SIB - это систематизированное собрание большого числа стандартов, наработанных за долгие годы различными международными организациями, апробированных или широко принятых в промышленности, выбранных членами The Open Group в ка
2. Интранет как открытая система
107
честве ядра для реализации открытых систем. В SIB все стандарты классифицированы по категориям сервисов, соответствующих TRM.
BBIB содержит информацию о строительных блоках, которые могут быть использованы в конструировании архитектур.
Бизнес-приложения
Инфраструктурные приложения
Интерфейс коммуникационной инфраструктуры (СИ)
Коммуникационная инфраструктура
Рис. 21. Нормативная техническая модель TOGAF
TRM и SIB не являются строго обязательными для любой ИС. Потребитель вправе выбирать или разрабатывать такую техническую модель своей системы и такие правила ее организации, которые лучше всего удовлетворяют его запросы. TRM и SIB, специфицированные The Open Group, отображают сложившуюся общемировую практику создания крупномасштабных ИС.
Как и в базовой модели среды открытых систем POSIX OSE/RM (рассмотренной в п. 1.5.2), в TRM модели TOGAF не детализируется структура платформы приложений. Основное отличие, однако, состоит в том, что TOGAF специфицирует полный набор стандартных сервисов из 12 групп сервисов, которые могут предоставляться платформой ПП в любой потенциально возможной ИС: сервисы графики и обработки изображений, сервисы обмена данными, сервисы управления данными, сервисы интернационализации операций, сервисы пользовательского интерфейса, сервисы размещения ресурсов и директориальные сервисы (location and directory), сервисы разработки программ (software engeneering), сервисы обработки транзакций, сервисы безопасности, сервисы управления системами и сетями, сетевые сервисы, сервисы ОС. Последние две группы сервисов условно помещены в нижний уровень платформы приложений. Они, как правило, являются основой реализации всех остальных
108
Информационная безопасность открытых систем
вышеперечисленных сервисов. Необходимость реализации того или иного сервиса в конкретной системе определяется целями и задачами этой системы.
Кроме того, определяется понятие "качество сервисов". Он применяются ко всем категориям сервисов и влияют на способ реализации и взаимодействия этих сервисов в конкретной ИС. Качества сервисов, разделенные по четырем категориям, описывают свойства, которые должны быть обеспечены однородно и взаимосвязанно во всех категориях сервисов: доступность, гарантированность, используемость (легкость действий пользователей), адаптируемость.
Внешняя среда в ранних версиях модели TOGAF понималась точно так же, как и в модели POSIX OSE/RM. Это все внешние объекты, с которыми АР обменивается информацией, причем обмен производится через EEI. В дальнейшем под внешней средой стала подразумеваться прежде всего коммуникационная инфраструктура, к которой "подключена" рассматриваемая ИС.
Так как современные корпоративные ИС являются сложными системами, для описания их различных аспектов используются различные средства и инструменты. В связи с этим модель TOGAF вводит несколько так называемых взглядов (views) на открытую ИС.
Функциональный взгляд (function view) затрагивает операционные аспекты системы, отталкиваясь от описания существующей среды ИТ и требований к функциям открытой системы. Это взгляд со стороны специалиста в той предметной области, которую обслуживает система.
Взгляды на реализацию (implementation views) - это описание строения открытой системы с точки зрения специалистов по ИТ различного профиля.
	Взгляд на управление системой (management view) — это рассмотрение системы с точки зрения лиц, ответственных за ее эксплуатацию: долгосрочное планирование целей деятельности открытой ИС, оперативно-диспетчерское управление, конфигурирование и администрирование ПО и пр.
	Взгляд на безопасность (security view) имеет целью обеспечить контролируемое использование информации в системе, сосредотачиваясь на аспектах защиты информации внутри открытой ИС.
	Взгляд на строение программного обеспечения (builder’s view) охватывает те стороны создания и функционирования ИС, которые важны для разработчиков ПО: переносимость, способность к взаимодействию, методы разработки сложных программных систем и пр.
	Взгляд на управление данными (data management view) изучает процессы хранения, доступа, обработки, архивации, передачи данных, в том числе средства и методы систематизированного хранения и управления данными, защиту, администрирование данных.
	Пользовательский взгляд (user view) включает эргономические аспекты работы пользователя: удобство, простоту видения системы, среду работы пользователей.
Физические взгляды (physical views) — это взгляды на открытую систему с точки зрения физической ее организации и размещения в пространстве.
	Взгляд на организацию вычислений (computing view) - это множество различных способов, которыми программные и аппаратные компоненты могут быть собраны в работоспособную структуру, т. е. модели организации вычислений (уже рассмотренные в п. 1.4.1).
2. Интранет как открытая система
109
	Коммуникационный взгляд (communications view) — это географический аспект организации системы, т. е. ее коммуникационная инфраструктура. Она рассматривается здесь с двух позиций. Физически - как состоящая из трех уровней: локального, регионального и глобального. Логически — как состоящая из пяти архитектурных уровней на базе расширенной модели ISO/OS1: уровня передачи (transmission level) - ниже физического уровня модели OSI, уровня сетевых переключений (network switching level) - с 1-го по 3-й уровень OSI, уровня обмена данными (data exchange level) - с 4-го по 7-й уровень модели OSI, сервисов прикладного уровня модели OSI и уровня ПП.
Предшественником модели TOGAF являлась модель среды открытых систем IT DialTone [4], также синтезированная организацией The Open Group, ныне уже упраздненная и выведенная из официального обращения, но очень важная для учебных целей. Это каркасная модель архитектуры глобальной информационной системы для бизнес-приложений на базе общей коммуникационной инфраструктуры глобального масштаба: глобальных телекоммуникационных сетей, виртуальных частных сетей (Virtual Private Network, VPN), открытых общедоступных сетей, в пределе - на основе всемирной сети Интернет. Создание этой модели явилось первой попыткой теоретического описания глобальной информационной среды, сформировавшейся на базе Интернета (рис. 22), и, что важно в нашем случае, четко демонстрирует соотношение понятий интранета и Интернета.
Предприятие
Партнеры Клиенты
Законы, правила, условия, стандарты
Соглашения, договоры
Политика предприятия
Бизнес-функция 1
Бизнес-функция 2
Бизнес-функция 3
Платформа 1
Платформа 2
Сервисы внутренней среды предприятий
Сервисы среды предприятий-партнеров
Сервисы глобальной среды Интернет
Рис. 22. Модель информационной среды на основе глобальной сети Интернет
Модель IT DialTone является примером общесистемной архитектуры (по классификации TOGAF) и согласована с этой моделью. Принципиально новым по сравнению со всеми предыдущими моделями, которые были рассчитаны на описание распределенных, но не глобальных ИС, в ней является то, что с позиций каждого пользователя (потребителя информации) доступная ему открытая информационная среда
110
Информационная безопасность открытых систем
представляется как ряд разномасштабных ИС, соответствующих различным организационным структурам: от своей локальной вычислительной системы, ИС отдела, предприятия в целом, объединения, отрасли до среды Интернет.
Средством передачи данных между отдельными сегментами глобальной ИС согласно этой модели является глобальная коммуникационная инфраструктура (IT DialTone Core Infrastructure) - совокупность некоторого, возможно большого или даже неопределенного числа, взаимосвязанных и взаимодействующих между собой глобальных, региональных и локальных коммуникационных сетей.
На сегодняшний день основным (да и практически единственным) стандартом коммуникационной инфраструктуры в масштабах сети Интернет стала коммуникационная архитектура TCP/IP [10]. Необходимым качеством глобальной инфраструктуры является открытость. В общем случае ни один производитель аппаратного или программного обеспечения не может удовлетворить все требования потребителя. Инфраструктура на базе TCP/IP должна собираться из компонентов, доставленных различными поставщиками, которые следуют общим международным стандартам. Вот почему очень часто понятие интранета ассоциируется или даже отождествляется с сетью, построенной на базе архитектуры TCP/IP (хотя всегда надо иметь в виду, что с точки зрения теории открытых ИС это не совсем верно!).
Архитектурная модель IT DialTone в основных чертах аналогична модели TOGAF: она включает эталонную архитектурную модель (Architecture Reference Model, ARM) - конкретизированную TRM модели TOGAF, SIB и ADM являются общими для обеих моделей. Согласно ARM компоненты среды IT DialTone разделяются на три блока.
ПП и средства взаимодействия с пользователем обеспечивают прикладные сервисы, не зависимые от положения внутри распределенной среды. ПП подразделяются на два класса: бизнес-приложения и инфраструктурные приложения. Функции биз-нес-приложений выходят за рамки модели IT DialTone и в ней не рассматриваются. Инфраструктурные ПП обеспечивают обшецелевые бизнес-функции, базируясь на сервисах инфраструктуры. С течением времени некоторые бизнес-приложения имеют тенденцию переходить в разряд инфраструктурных, а те, в свою очередь, в разряд сервисов системы.
Сервисы распределенной системы предоставляют услуги, которые создают условия для прозрачной работы ПП: сервисы представления и взаимодействия с пользователем, сервисы интеграции ПО, сервисы управления информационными потоками, сервисы безопасности, сервисы управления, директориальные сервисы и сервисы размещения ресурсов, сервисы данных, сервисы распределенных вычислений, коммуникационные сервисы, сервисы платформ.
Коммуникации и платформы формируют основание, на котором строятся распределенные среды.
Необходимо иметь в виду, что понятие интранета как таковое обычно не используется напрямую в стандартизирующих документах и моделях, - его всегда необходимо тем или иным образом "высмотреть", изучая модель открытой системы. Это объясняется тем, что объект рассмотрения любой модели - гораздо более абстрактное и общее понятие, чем те, которые интересуют рядового пользователя, потребителя, системного интегратора или инженера. Кроме того, следует помнить, что современная теория открытых систем располагает гораздо более обширными и глубокими
2. Интранет как открытая система
111
средствами анализа и синтеза архитектуры и структуры корпоративных ИС, чем те, которые были рассмотрены в качестве примеров в этой главе.
2.3. Интранет и экстранет
Другим способом обеспечения совместного доступа деловых партнеров к информации, хранящейся в интранете, является создание экстранета (extranet) - части интранета, предназначенной для доступа извне. Это сеть обмена информацией, объединяющая как собственную внутреннюю сеть предприятия (интранет), так и внутренние сети его удаленных подразделений и партнеров. Например, несколько компаний могут создать экстранет для универсализации процесса обучения, сбора и совместного использования данных по некоторому общему проекту. В этом случае Интернет используется для передачи информации между интранетами предприятий. В отличие от интранета замкнутой, защищенной от внешнего вторжения компьютерной информационной сети, экстранет предназначен для внешних пользователей.
Деловые партнеры часто создают экстранеты, обеспечивающие ограниченный доступ к отдельным частям своих интранетов. В экстранете каждая компания использует свою систему безопасности для обеспечения доступа сотрудников других организаций только к той информации, которая действительно нужна им для работы. В жизни граница между сотрудником, партнером и клиентом очень условна. Некоторым внешним партнерам можно доверять как сотрудникам, и их работа очень нужна. Ряд сотрудников работают на повременной оплате за штатом компании и не являются фактически сотрудниками. Деловым партнерам доступны только те части интранета, на которые они имеют соответствующие права доступа. Для конкурентов же любой доступ к такой интранет закрыт. Для ИС не имеет значение, что эксперт проекта находится в Москве, клиент - в Штатах, а руководитель проекта - в Екатеринбурге. Все получают информацию в соответствии со своими ролями и предусмотренными в ПБ способами контроля и предоставления доступа. Для этого создаются системы, предназначенные для управления аутентификацией, авторизацией, профилями и правами пользователей (примером может являться разработка IdentityMinder компании Netegrity).
Типичным и популярным примером экстранет-решений является, например, Ин-тернет-трейдинг и Интернет-банкинг. Очень значительную экономию получают компании с развитыми дилерскими сетями — экстранет-решение позволяет открыть дилерам постоянно доступную и актуальную информацию о номенклатуре, состоянии склада и прочем, а также автоматизировать процесс приема и обработки заявок.
При наличии экстранета для получения доступа к корпоративным данным служащим компании уже не нужно связываться по телефонной линии с сервером удаленного доступа; достаточно подключиться к Интернету в любой точке мира через защищенный канал связи. Вместо применения форматов электронного обмена данными в интегрированных сетях становится возможным открытый диалог между клиентами и поставщиками через Интернет.
Приложения, обеспечивающие возможность совместной работы сотрудников, являются мощнейшим средством экстранета. Эти приложения позволяют совместно использовать интеллектуальные ресурсы нескольких компаний при работе над общими проектами и обеспечивают решение задач разного уровня: от совместного использования файлов до осуществления ответственных бизнес-операций с партнера
112
Информационная безопасность открытых систем
ми. Кроме того, поставщики, заказчики и другие партнеры могут подключаться к экстранету через провайдеров услуг Интернет для получения ответственной информации.
Обычно построение экстранета требует немалых усилий [28]. БД, приложения и прочая важная производственная информация должны быть защищены с помощью МЭ, шифрования или сочетания того и другого. Традиционные системы удаленного доступа не поддерживают доступ к экстранету. Доступ через экстранет требует специальных продуктов. Для гладкого функционирования экстранета критически важно наличие законченного комплекта ПО или оборудования типа поставляемых компаниями Netscape Communications, Lotus Development и Bay Networks (например, специального коммутатора для экстранета). При выборе провайдера услуг доступа к сети следует остановиться на том, который предоставляет высокопроизводительную сеть с малым временем ожидания, обеспечивает вход через коммутируемую линию и дает гарантии обслуживания. При этом опыт провайдера и техническое состояние сети иногда важнее стоимости обслуживания.
Поскольку экстранет, как и интранет, является IP-системой, предназначенной в основном для использования между организациями, между организацией и клиентами или между клиентами, то стандарты имеют здесь огромное значение [29]. Ни одна компания не может диктовать другой, какие использовать технологии. Но если обе они не будут говорить на одном и том же языке, ни о какой коммуникации между ними не может быть и речи. Теперь, когда браузеры и сервис-провайдеры имеются повсюду, решена самая крупная проблема стандартов экстранета. Клиенты могут взаимодействовать с серверами независимо от используемой платформы. Однако остается нерешенной такая важная проблема, как обеспечение ИБ. Как можно гарантировать, что к экстранету получают доступ только выбранные деловые партнеры? Как понять, что ваши посетители - именно те, за кого они себя выдают? Наиболее полезными для экстранета для достижения двух целей защиты - конфиденциальности и аутентификации оказываются две технологии: Secure Sockets Layer (SSL) и виртуальные частные сети (VPN). Они будет рассмотрены в соответствующих главах второй части учебника.
2.4. Портал и интранет
Появление информационных порталов как самостоятельной информационной единицы можно датировать 1994-1995 гт. [30, 31], когда в Интернете появился новый класс коммерческих узлов - информационные накопители (Yahoo, AltaVista, Lycos, Google и др.). Самым первым был поисковый портал Yahoo, затем приобрели "портальный" облик поисковые машины Lycos, Infoseek (теперь go.com), Excite, Netscape, AOL, AltaVista. За первые четыре месяца существования портала Yahoo (с июня по сентябрь 1996 г.) наблюдался более чем 50 %-ный рост числа посещений этого вебузла. Его отличительными чертами, как и других поисковых машин, являются обязательное окно для ввода искомых слов и рубрикация по тематике, подобная систематическому каталогу в библиотеке. Уровень систематического каталога зависит от квалификации составителей. Над ведением Yahoo работает несколько сотен человек. С расширением Интернета эти узлы стали путеводителями для пользователя сети.
Первое упоминание слова "портал" связывают с выпуском Шайлаксом и Тилма-ном из компании Merrill Lynch (Shilakes С. С., Tylman J. Enterprise Information Portals)
2. Интранет как открытая система
113
в ноябре 1998 г. отчета, в котором впервые было введено понятие корпоративного информационного портала (Enterprise Information Portal, EIP), под которым понимались приложения, позволяющие компаниям раскрывать информацию, хранящуюся внутри и вне организации, и предоставлять пользователям единый шлюз доступа к персонализированной информации, необходимой для принятия бизнес-решений. Они являются "совокупностью программных приложений, которые консолидируют, управляют, анализируют и распространяют информацию по всему предприятию и за его пределами". Их основные характеристики, с точки зрения Merrill Lynch, таковы:  использование технологий передачи и сбора данных для предоставления инфор-
мации пользователям через стандартизованный веб-интерфейс;
	интерактивность - возможность задавать вопросы и совместно использовать информацию на рабочем столе пользователя;
	тенденция к "вертикализации" ПП, т. е. корпоративные порталы (КП) часто являются приложениями, предоставляющими "специализированный контент для конкретных индустрий или корпоративных функций";
	интеграция разнородных приложений (включает приложения управления контентом, business intelligence, управления данными и хранилищами данных, а также внешние данные) в единую систему, которая позволяет "управлять, распределять и поддерживать информацию с помощью единого центрального пользовательского интерфейса".
В январе 1999 г. практически одновременно появились еще две работы на тему порталов - Джерри Мюррея из IDC и Колина Вайта. В отличие от Merrill Lynch Джерри Мюррей (директор по исследованиям систем управления знаниями IDC) считает, что КП - это больше, чем шлюз (Murray G. The Portal is the Desktop. 1999. Jan.). IDC считает, что "порталы, которые концентрируются лишь на работе с контентом, не отвечают нуждам корпоративного рынка. КП должны подключать ... не только ко всей необходимой информации, но и ко всем нужным... людям и предоставлять инструменты, необходимые для поддержки совместной работы. Это означает, что ПО для коллективной работы, электронная почта, приложения для управления рабочими процессам (workflow) и настольные приложения — и даже критические бизнес-приложения - должны быть доступны через портал, который становится вашим рабочим столом".
Основатель компании DataBase Associates International, занимающейся консалтингом в области ИТ и один из крупнейших аналитиков Колин Вайт определяет EIP просто как систему, предоставляющую пользователям единый веб-интерфейс доступа к корпоративной информации, разбросанной по всему предприятию (The Enterprise Information Portal Marketplace. 1999. Jan.). Руководствуясь этим определением, он классифицирует EIP на две основные категории, следуя двум наиболее частым задачам: decision processing и collaborative processing. Decision processing EIP помогают "пользователям организовывать и находить корпоративную информацию в системах, которые входят в цепь поставки бизнес-информации". Информация такого типа является в высшей степени структурированной и получается из операционных данных и информации, хранящейся в хранилищах данных, а также из внешних систем. Decision processing EIP используют инструменты business intelligence и аналитические приложения для создания отчетов и анализа, а затем распространяют их по всему предприятию всевозможными электронными способами. Collaborative processing EIP помога
114
Информационная безопасность открытых систем
ют "пользователям организовывать и совместно применять информацию в рабочих группах, такую, как электронная почта, материалы групповых обсуждений, отчеты, напоминания и протоколы собраний". Информация этого типа относительно неструктурированна и поступает от отдельных участников работы и из рабочих групп. Она обрабатывается с помощью совместных инструментов groupware и workflow.
В следующем представлении от Delphi Group КП централизуют "корпоративный доступ к информации в графически богатом, независимом от приложений интерфейсе, который отображает технологические процессы, завязанные на знаниях, и предоставляют единую точку интеграции по всему предприятию". Они должны интегрировать "острова автоматизации", сформированные из современных рабочих ПК, и постепенно создавать интегрированную бизнес-среду, "предоставляющую информационный доступ, доставку и поддержку рабочих процессов по всем измерениям организации".
В отчете Data Warehousing Institute Уэйн Экерсон, директор по исследованиям Data Warehousing Institute, определяет портал как приложение, которое "предоставляет пользователям единую точку для доступа к любым нужным им информационным объектам, находящимся как внутри, так и снаружи корпорации" (Wayne Eckerson, ’’Business Portals: Drivers, Definitions, and Rules", April 1999). Он утверждает, что шлюзовые функции приложения портала в его представлении являются фундаментальными. Помимо этого, подчеркивается важность совместных услуг, таких, как безопасность, хранение метаданных, персонализация, поиск, публикация и абонентские услуги и т. д. Data Warehousing Institute почти не уделяет внимания сотрудничеству и приложениям поддержки технологических процессов, ни в своем определении, ни в спецификации концепции портала. Он отмечает, что пользователи могут помещать информацию в хранилища порталов, что будет способствовать сотрудничеству. Однако это практически все, что он говорит о сотрудничестве, описывая функции порталов. Таким образом, его портал больше всего напоминает представление IDC о EIP - информационный шлюз, предоставляющий пользователю доступ к большому объему структурированного и неструктурированного контента для поддержки процессов принятия решений.
Определение одного из важнейших поставщиков в области EIP - компании Plumtree Software основано на различиях между корпоративными и публичными порталами в видах доступа. Plumtree перечисляет следующие семь характеристик КП, отличающие их от Интернет-порталов:
	автоматический поиск и организация доступа к новому контенту;
	интегрированный доступ к более широкому спектру форматов данных, чем в Интернет-портал ах;
	организация доступа к информации для удобства просмотра пользователем;
	сбор персонализированных картин важной информации и извещение пользователей о появлении нового материала по электронной почте или через другие каналы;
	организация доступа к данным, однако без хранения самих данных;
	расширяемость и открытость для занесения в каталог новых типов информации;
	безопасность и выборочная блокировка доступа к внутренней корпоративной информации.
2. Интранет как открытая система
115
Однако в определении не рассматриваются типы приложений, поддерживаемые с помощью этого доступа, таким образом, оно соответствует определениям порталов поддержки принятия решений с поддержкой и без поддержки процессов сотрудничества, порталов поддержки процессов сотрудничества и технологических процессов, экспертных порталов и порталов знаний.
Компания Viador, другой заметный поставщик порталов, определяет EIP как "приложения, которые позволяют компаниям предоставлять доступ к информации, хранящейся внутри и снаружи компаний, а также предлагать пользователям внутри и снаружи компании единое окно для просмотра персонализированной информации, необходимой для принятия обоснованных бизнес-решений. Корпоративный информационный портал — это система на основе браузера, которая предоставляет полный доступ ко всей важнейшей бизнес-информации, точно так же, как контентные порталы в Интернете типа Yahoo являются шлюзами доступа к контенту Интернета". С первого взгляда кажется, что это похоже на мнение Вайта. Но в сущности определение Viador гораздо ближе к формулировке бизнес-портала Data Warehousing Institute, поскольку, в отличие от Вайта, EIP-определение Viador практически не уделяет внимания приложениям для совместной работы.
Согласно определению компании Information Advantage КП должны предоставлять всеобъемлющие интеллектуальные возможности для сотрудников, ответственных за принятие решений, поддерживать беспрецедентный уровень доступности, приспосабливаться к изменениям и увеличению численности пользователей. Здесь опять сдвиг в сторону business intelligence, широкого доступа и приспосабливаемости и также слышны отголоски формулировок Data Warehousing Institute и Viador, поскольку Information Advantage четко концентрируется на процессах принятия решений, не уделяя значительного внимания сотрудничеству или функциям технологических процессов.
Компания Sqribe определяет EIP как автоматизированный информационный шлюз, который доставляет информацию пользователям на основе их уровня безопасности, позиции и интересов, способен предоставить доступ к любой информации в любое время, независимо от содержания этой информации, и представляет собой единую точку доступа ко всей информации предприятия. Sqribe, подобно Data Warehousing Institute, Viador и Information Advantage, в своем определении портала почти не уделяет внимания сотрудничеству и технологическим процессам. Для Sqribe EIP - это КП поддержки принятия решений, а компонент сотрудничества при этом полностью исключается.
Подводя итог приведенному обзору, определим портал как комплекс аппаратных и программных средств, представленный единым входом в виде веб-узла и организованный для объединения различных сетевых ресурсов и сервисов, обеспечивающих персонализированное обслуживание целевой аудитории и ее коллективную работу.
Основная функция портала, как и у интранета, - это информационное обеспечение его пользователей. Это и понятно - ведь именно портал чаще всего в настоящее время и является единой точкой доступа к ресурсам интранета. Другие функциональные возможности тоже практически идентичны тем, которые ранее были указаны для интранета.
1.	Интеграция данных и приложений (новых и унаследованных).
2.	Визуализация информации при помощи веб-браузера, благодаря чему исчезает необходимость в установке и поддержке "тяжелых" клиентских приложений.
116
Информационная безопасность открытых систем
3.	Гибкость, масштабируемость и открытость создаваемых решений, которые достигаются благодаря использованию XML и Java; быстрое и легкое внедрение, оптимизация и персонификация.
4.	Единый и настраиваемый интерфейс работы с данными и приложениями; возможность входа в портал из различных систем, в том числе территориально удаленных.
5.	Реализация системы на основе технологий Java и XML, что обеспечивает переносимость и независимость приложений от операционных систем сервера и клиента. Хранение и передача данных происходит с помощью языка XML, специально созданного для организации взаимодействия с различными приложениями. Формат данных в XML не зависит от способа его дальнейшей визуализации - за это отвечают хранимые отдельно файлы таблицы стилей, которые преобразуют файлы XML для их представления в веб-страницы.
6.	Создание в процессе интеграции пользовательских веб-интерфейсов к корпоративным приложениям. При дальнейшем развитии системы обеспечивается не только доступ для чтения данных, но и полноценный документооборот.
7.	Безопасность и защита информации обеспечиваются единой точкой входа, каталога и разделением прав доступа. База описаний пользователей также хранится в едином кросс-платформенном каталоге, что создает унифицированную систему безопасности для всех приложений.
Как правило, порталы обладают открытой архитектурой, позволяющей расширять их функциональность за счет добавления сторонних приложений или дополнительных компонентов. Отметим, что чаще всего такими компонентами оказываются средства управления информационным наполнением, поэтому обычно такие средства выпускаются производителями порталов или просто входят в состав последних.
Серьезная потребность в построении порталов возникла при переходе от обычных корпоративных БД к распределенным в связи с необходимостью систематизировать и усовершенствовать информационные хранилища компании. Тогда руководители поняли, что без единого информационного пространства, позволяющего и посетителям и сотрудникам работать с данными компании и совместно пользоваться аналитическими приложениями в режиме реального времени, не обойтись.
С чего же обычно начинается создание портала? Как видно из нижеприведенного перечня стартовых этапов, они соответствуют аналогичным, возникающим при создании интранета.
	Выделяется целевая пользовательская аудитория.
	Проводится интервьюирование и обследование потребностей пользователей.
	Проектируется модель информационного наполнения портала.
	Идентифицируются источники информации.
	Осуществляется интеграция информационных потоков.
	Уточняется и утверждается информационная стратегия.
При этом основными требованиями, предъявляемыми к порталам, являются следующие [http://www.cmsinfo.ru/contentid-39.html]:
	обслуживание большого числа пользователей;
	широкий спектр информации;
	поддержка основных сетевых форматов;
2. Интранет как открытая система
117
	возможности персонализации (настройка рабочего места пользователя в соответствии с его индивидуальными запросами, привычками и требованиями);
	возможности поиска - реализация удобных и эффективных поисковых механизмов, используя в качестве источников различные информационные ресурсы (структурированные, неструктурированные, метаданные), и оценка достоверности и полноты полученных данных;
	обеспечение защиты хранящейся информации, используя программные и физические способы обеспечения безопасности (установление подлинности, управление доступом, конфиденциальность и целостность данных и т. д.);
	интеграция - обеспечение возможности взаимодействия сотрудников компании со всеми приложениями и информационными ресурсами (в соответствии с их приоритетом) через единый интерфейс;
	разбивка хранимой информации на категории (так называемый процесс категоризации);
	автоматизированные процедуры категоризации результатов индивидуального поиска;
	наличие приложения интеллектуального анализа (так называемые системы управления знаниями).
2.4.1. Классификация порталов
Классифицировать порталы можно с точки зрения либо их технического исполнения, либо их целевой аудитории и структурированности информационного наполнения [32, 33].
С точки зрения технического исполнения порталы делятся на следующие классы:
	мегапортал;
	информационный, который предоставляет информацию;
	корпоративный, который координируют контент в рамках относительно узкого сообщества пользователей, объединенных общими целями и задачами;
	коммерческий, который обеспечивает предоставление узконаправленной информации определенной целевой аудитории;
	вертикальный (специализированный), имеющий узкую тематическую направленность;
	горизонтальный (универсальный), носящий общий характер;
	торговый, создаваемый для объединения веб-узлов поставщиков и покупателей и централизации документооборота между ними [электронные транзакции проходят через электронные торговые площадки (marketplaces), соединяющие покупателей и поставщиков по "звездообразной" топологии];
	портал публикации информации, ориентированный на большие, разнородные сообщества пользователей с разнородными интересами (содержит немного элементов персонификации контента и предлагает только базовые средства поиска и интерактивного взаимодействия, ориентированные на неискушенного пользователя Web);
	портал приложений;
	портал управления;
	портал для совместной работы, который обеспечивает все мыслимые средства взаимодействия людей с использованием компьютерных технологий;
118
Информационная безопасность открытых систем
	портал знаний, который комбинируют все перечисленные выше типы и обеспечивает доставку персонифицированной информации с учетом конкретной работы, которую выполняет каждый пользователь в определенный момент времени, и др.
С точки зрения целевой аудитории и структурированности информационного наполнения сети порталы бывают общедоступными, персонально-групповыми и корпоративными.
Общедоступные (потребительские) порталы (типа Rambler, Yahoo, Google, InfoArt и т. д.) отличаются слабой структурированностью информации, и их целевая аудитория не ограничена. Такие порталы создаются для организации удобной работы в сети со ссылками на различные узлы. Они предоставляют своим пользователям поисковые возможности, ленты новостей, биржевые сводки, прогнозы погоды, услуги e-mail, сервисы для планирования времени, ведения баз данных адресов и дат. Существуют такие порталы за счет рекламной деятельности. Их нередко называют мегапорталами или информационными порталами.
Целевой аудиторией персонально-групповых порталов (Enfish, Му Yahoo! и др.) являются отдельные индивидуумы или группы пользователей, объединенные общим интересом, задачей. В функции таких порталов входит поддержка электронной почты, удаленное хранение и обработка персональной информации. Их роль возрастет с появлением виртуальных рабочих мест, физически удаленных от предприятия. Персональные порталы могут быть реализованы как автономный узел либо входить в состав корпоративного или общедоступного портала, обеспечивая узконаправленную, глубоко персонализированную и интеллектуально структурированную переработку информации. Эти порталы используют разные бизнес-модели, включая получение дохода от платной подписки, участия в прибыли, размещения рекламы, продажи уникального информационного контента, услуг мобильной и мультимедийной коммуникации и т. д.
КП - это единая ИС организации, обеспечивающая хранение, обработку, анализ и разграничение прав доступа к структурированным и неструктурированным данным, используемым во внутренних и внешних бизнес-процессах. Такие порталы создаются для организации единого информационного пространства внутри компании и включают в себя вертикальные и горизонтальные порталы и порталы приложений. Этот вид порталов в научной литературе пока не получил единого названия и поэтому можно встретить его различные наименования: корпоративный портал (corporate portal); бизнес-портал (business portal); интеллектуальный бизнес-портал (business intelligence portal); корпоративный интранет-портал (enterprise intranet portal, EIP) на базе интранета. Из определения КП следует, что он интегрирует приложения внутрикорпоративные (программы электронной почты, системы управления документами и БД) и внешние (службы новостей, потребительские веб-узлы и пр.), а также сочетает в себе функциональность интранета/экстранета и Интернет-ориентацию веб-представительства организации.
В некоторых публикациях предлагается более детальная классификация КП, подразделяющая их [34]:
	на порталы, представляющие результаты анализа данных (Business intelligence portals);
	внутрикорпоративные интранет-порталы (Business area portals);
2. Интранет как открытая система
119
	порталы для организации групповой работы (Enterprise Collaborative Portals);
•	порталы, предназначенные для управления знаниями (Enterprise Knowledge Portals);
	ролевые порталы (Role portals), поддерживающие три бизнес-модели - В2Е, В2С и В2В.
Согласно исследованиям аналитической компании Gartner Group назначение КП отражается такими тремя основными решаемыми с его помощью задачами:
1)	интеграция информационных ресурсов и доставка сотрудникам важной информации;
2)	организация совместной работы пользователей над документами и предоставление коллективных услуг;
3)	доступ к корпоративной информации, сервисам и приложениям в соответствии с предоставленными пользователям полномочиями и решаемыми задачами.
Согласно этим же исследованиям первое поколение КП имеет следующие характеристики:
	поиск и индексирование широкого набора информационных репозитариев;
	категоризация информационного наполнения;
	управление информационным наполнением и его агрегация;
	персонализация;
	высокоэффективная разработка приложений и возможность интеграции с другими приложениями.
Для второго поколения КП, применяемых в качестве составляющей части электронного бизнеса, характерны:
•	надежная среда реализации приложений;
•	мощные и гибкие инструменты разработки приложений;
•	широкие возможности в области интеграции приложений;
•	соответствие требованиям к информационным системам масштаба предприятия;
	поддержка интеграции с другими приложениями и информационными системами партнеров;
	поддержка мобильного/беспроводного доступа к данным.
Функциональные особенности КП заключаются в следующем:
	единый виртуальный каталог хранения корпоративной информации;
•	универсальный метод доступа ко всему множеству корпоративной информации;
	интеграция приложений и данных;
	возможность управления бизнес-процессами;
	гибкая организация коллективной работы;
	использование привычных методов просмотра и поиска информации (через вебинтерфейс);
	поддержка персональных публикаций клиентов системы;
•	прозрачные схемы управления потоками информации и публикации;
•	персонализация рабочих мест пользователей;
	возможность постоянно наращивать сервисы системы;
•	контроль, учет и анализ использования ресурсов пользователями;
•	дистанционное обучение сотрудников корпорации на основе использования ресурсов и сервисов портала.
120
Информационная безопасность открытых систем
Сравнение КП и Интернет-портала позволяет сделать следующие выводы [32]:
	Интернет является слабоструктурированной средой без интеллектуальной обработки знаний (информационного контента), перекладывающей на пользователя основной груз перехода от примитивных к более сложным формам и интеллектуальным методам работы с сетевой информацией.
	КП - это не просто систематический каталог ресурсов, а интегрированная система хранения данных, обеспечивающая единую точку входа.
	Особая защита в Интернете информации и сервисов не предусмотрена, поскольку ценность необработанных данных либо услуг, не затрагивающих интересы пользователя, обычно мала (реальная потребность в защите возникает только с определенного уровня структуризации информационного содержания сетей и внедрения материально значимых услуг).
	Интернет и дальше будет оставаться слабоприбыльным бизнесом ввиду очевидного соотношения: потенциальная прибыль от использования "сырой" информации всегда ниже, чем от обработанной. Интернет-проект лишь тогда становится прибыльным, если есть за что платить и нет опасности переплатить (например, потеря средств из-за взлома зашиты).
В качестве примера приведем возможное наполнение КП одной из компаний. Он может иметь следующие разделы:
1.	Новости компании.
2.	Что делать в экстренных случаях (охрана, проблемы с компьютерной техникой, пожар, другие проблемы).
3.	Конкуренты (краткая информация о конкурентах, сравнительная характеристика, новости конкурентов, персональные досье).
4.	Клиенты (краткое описание, история взаимоотношений, контактные лица в компании, контактные лица у клиентов, "черный список").
5.	Основные проекты компании.
6.	Финансовые показатели.
7.	Профессиональная информация (обзоры и новости сегмента рынка, технологии, ссылки на ресурсы Интернета, полезные советы, форумы и конференции).
8.	Маркетинговая информация (Что надо знать сотрудникам о маркетинговой стратегии Компании, Пресс-релизы, Пресс-клипинг).
9.	Внутренняя информация (структура компании, внутренние правила и корпоративная политика, обязанности сотрудников, адреса, телефоны и дни рождения сотрудников, фотографии и личные странички).
10.	Страница отдела кадров (обучение, тестирование, вакансии компании).
11.	Доска объявлений (для публикации внутренней информации компании).
12.	Информационная система компании (документация, ссылки, структура каталогов и баз данных).
Далее все главы учебника будут ориентированы на рассмотрение именно КП, как наиболее интересного класса порталов.
2.4.2.	Логическая структура и компоненты
Корпоративный информационный портал разделен на две части [34].
	Внутренний портал (интранет), в котором расположена конфиденциальная корпоративная информация, предназначенная для употребления ограниченным числом пользователей (применяется локальная сеть).
2. Интранет как открытая система
121
	Внешний портал, который доступен для общественного использования и в котором расположена публичная информация (применяется Интернет).
В составе типичного КП условно можно выделить три основных функциональных слоя.
1.	Слой базовой инфраструктуры, отвечающий за базовые сервисы, такие, как управление транзакциями, система безопасности, управление порталом и др. Технически он содержит, как правило, сервер приложений, сервер БД и веб-сервер либо несколько подобных серверов.
2.	Слой интеграции приложений, отвечающий за взаимодействие портала со всеми существующими в компании приложениями, такими как СУБД, CRM- и ERP-системы, унаследованные приложения и др.
3.	Слой интерфейсов, включающий в себя средства управления информационным наполнением, интерфейсы для обмена данными с ИС бизнес-партнеров, средства для работы с мобильными и беспроводными устройствами и многое другое. К этому же слою относятся визуальные и невизуальные компоненты порталов, называемые обычно портлетами (портальными апплетами), но иногда имеющие и другие названия (в англ, оригиналах встречаются обозначения Pagelets, Gadgets, iViews и т. д.). Термин "портлет" обозначает небольшое приложение портала, которое обычно изображается на веб-странице как отдельный прямоугольник. Портлеты — это многоразовые компоненты, которые обеспечивают доступ к приложениям, веб-содержимому и другим ресурсам. Через портлеты можно получить доступ к веб-страницам, вебсервисам, приложениям и объединенным источникам информационного наполнения. Заказчики могут строить свои собственные портлеты либо выбирать нужные из каталога портлетов. Каждый отдельный портлет разрабатывается, развертывается, управляется и отображается независимо от других портлетов. Администраторы и конечные пользователи могут создавать персонализированные страницы портала при помощи выбора и настройки соответствующих портлетов, что приводит к появлению полноценных веб-страниц, содержимое которых может быть предназначено конкретным людям или группам.
Логическая структура портала представлена на рис. 23 [31]. Информация, получаемая из различных источников на основе правил предоставления доступа, представляется в виде индексированных текстов и метаданных, среди которых можно проводить отбор для персонализированных клиентов или которые можно просто публиковать с помощью универсальных клиентов.
Из логической структуры следует такая схема работы портала:
1)	в портал из различных источников поступает информация;
2)	портал производит первичное распознание информации и предоставляет доступ к ней;
3)	при использовании систем управления знанием формируются метаданные;
4)	метаданные проходят через "фильтр", установленный и настроенный под собственные требования пользователем, при этом ненужные ему данные отбрасываются;
5)	после этого отфильтрованные данные передаются пользователю.
122
Информационная безопасность открытых систем
Источники информации
Рис. 23. Логическая структура портала
К логическим компонентам портала относятся следующие элементы [31, http.7/www.e-commerce.ru/biz_tech/implementation/management/corp_portals.html] (схема взаимодействия этих компонентов портала представлена на рис. 24).
тал интранета
Подсистема информационной безопасности
Корпоративный по э
Подсистема поиска информационны) ресурсов	Подсистема персонифицированного представления информационны) ресурсов	Подсистема подготовки и унифицированного отображения информационных ресурсов
Подсистема управления и оптимизации загрузки, обеспечения информационного обмена
Информационные ресурсы
Пользователи КПИ
Администратор информационной безопасности КПИ
Рис. 24. Схема взаимодействия компонентов портала
Приложения - это обычный навигатор для доступа к страницам в формате, например HTML. Домашняя страница может быть адаптирована к потребностям определенного пользователя, т. е. настроена на получение того типа отчетов, документов и данных, которые ему нужны и на получение которых он авторизован. К этому может быть добавлен механизм поиска по ключевым словам и другие традиционные инструменты навигатора.
Репозиторий хранит метаданные об информационных объектах, пользователях, рабочих группах и информационных каналах. Метаданные указывают тип объекта, раздел, к которому он принадлежит, формат хранения, местоположение.
Подсистема публикации и подписки. Пользователи могут публиковать собственные документы и осуществлять подписку на существующие источники.
2. Интранет как открытая система
123
Механизм фильтрации данных по заданным правилам фильтрует и сортирует объекты по типу, формату или другим признакам. Он может направлять пользователю информацию о новых объектах и об изменениях в уже имеющихся, актуализируя доступные ему источники.
Механизм анализа и планирования бизнес-процессов (Enterprise Resource Planning, ERP) обеспечивает поддержку анализа данных средствами реляционных и многомерных OLAP-систем (систем оперативной аналитической обработкой, On-line Analytical Processing) и других аналогичных систем.
Драйверы данных предназначены для связи с реляционными и многомерными СУБД различного рода библиотеками и другими возможными источниками информации.
Приложения интеллектуального анализа или система управления знаниями (Knowledge Management) - это средства структурирования и категоризация неучтенных данных (например, затерянные в почтовых ящиках), формирования удобных механизмов доступа к ним и на основе специальных аналитических методов конструирования отчетов о собранной информации.
Принцип работы используется при аннотировании документов, формировании на базе аннотаций метаданных и при их размещении в информационном хранилище вместе со ссылками на исходный документ (кроме того, устанавливается язык документа, его тема, дата создания и принадлежность). Одновременно создаются словари или БД терминов и других атрибутов с указанием их источника.
Результатом деятельности является разбиение текстового документа на связанные категории, что реализуется посредством эвристического анализа смысловой и терминологической близости распределяемых по иерархическим рубрикам текстов.
Модуль управления связью с клиентами (Customer Relationship Management, CRM). Может входить в систему ERP; обеспечивает объединение front и back-office компании, позволяя сформировать информационную базу с данными о клиентах, службу информационной поддержки клиентов, настраивать КП под требования клиента (например, выдавать пользователю список информации, основываясь на прошлых обращениях) и т. д. При этом значительно повышается потенциал front-office, упорядочивается процесс документооборота с оппонентом, производится исследование предпочтений покупателей. Основная функция CRM - это "удержание” клиента (по мнению экспертов, "удержание" 5 % покупателей дает прирост прибыли на 25-125 %).
Обеспечение безопасности доступа включает обычные для защитных систем средства шифрования, аутентификации и управления сессиями.
2.4.3. Схема портала
Обобщая приведенные ранее структуры и схемы, изобразим более подробную схему портала (рис. 25 [32]).
Обработка источников информации осуществляется в портале портлетами, вид которых зависит от характера источников, с которыми они работают. Портлет интерпретирует запросы пользователя, обращается к внешним источникам и подготавливает информацию для визуализации на портале.
В качестве входных данных портлет получает информацию о пользователе и его правах доступа. Результат работы портлета - описание данных (например, на языке
124
Информационная безопасность открытых систем
XML), которое впоследствии трансформируется (форматируется) с учетом типа клиента применяемого пользователем (веб-браузер, мобильные устройства и т. д.).
Рис. 25. Схема портала
В случае слабоструктурированной информации портлеты обрабатывают наборы документов, архивы сообщений, веб-страницы и ссылки, поступающие в реальном времени данные. Если необходима структурированная информация, то портлеты используют методы, применяемые при обработке хранилищ данных, корпоративных приложений, методы категорирования и интеллектуальной обработки знаний.
Возможна также обработка источников в виде событий и процессов, включая процессы коллективного взаимодействия. Запросы к метаданным и портлетам через службу доступа поступают непосредственно к ним или через машину поиска. До браузера пользователя и веб-сервера запрашиваемая информация проходит через службы персонализации, представления, управления сессиями и защищенной передачи по сети.
2.4.4. Базовые сервисы портала
Сервисом портала будем называть доступные через внешний интерфейс или внутренние (программные) интерфейсы портала, реализованные в его составе про
2. Интранет как открытая система
125
граммные средства, основная задача которых помогать пользователям удобно и эффективно выполнять требуемые им операции над содержимым разделов портала и применять его ресурсы.
Службой портала будем называть функциональную подсистему портала, доступную через внутренние интерфейсы и используемую несколькими функциональными подсистемами (сервисами) портала. Примерами сервисов являются системы новостей и форумов, информационного поиска и персонализации. В качестве примера служб можно упомянуть службу аутентификации и авторизации доступа к содержимому портала.
Следует отметить, что состав служб и сервисов портала может расширяться. Возможно как добавление новых служб, так и новых специализаций (версий, предназначенных для работы в специфических условиях) существующих служб [35].
Можно выделить ряд базовых (разрабатываемых при начальной реализации) сервисов, предоставляемых порталом [35, 36]:
	пользовательские сервисы;
	информационные сервисы;
	сервисы доступа через веб-интерфейсы;
	интерактивные сервисы;
	корпоративные сервисы;
	сервисы доступа к корпоративным документам;
	сервисы мониторинга и статистики.
1. Пользовательские сервисы. Они состоят из сервисов, позволяющих осуществлять персонализацию представления информации на страницах портала для сотрудников, и сервисов, обеспечивающих безопасный доступ к корпоративным ресурсам (с авторизацией и установлением прав доступа пользователей портала). Также сюда относятся сервисы поиска и навигации, состоящие из средств работы с моделируемым иерархическим каталогом (рубрикатором) ресурсов и объектов, карты портала и поисковой системы по внутренним (входящим в систему порталов) и внешним информационным ресурсам.
Первая группа сервисов отвечает за персональную настройку информационного содержания страниц портала пользователем и настройку информационного содержания для подразделений и дочерних предприятий. Сервис управления профилем пользователя и настройки персонального (индивидуального или корпоративного) портала пользователя предоставляет средства для настройки персональных данных пользователя, средства предоставления ему персонального календаря и набора электронных словарей, средства поддержки создания персональной страницы и персональной настройки внешнего вида персонального (индивидуального) или корпоративного портала образовательной организации, средства организации удобной персональной системы закладок, средства персонализации сервисов поиска, новостей и трансляций и пр.
Вторая группа сервисов представляет собой централизованную систему управления доступом к ресурсам КП и осуществляет поддержку авторизации через, например, права в NT-домене, облегченный протокол доступа к сетевому каталогу LDAP, назначение прав доступа группам и отдельным пользователям и анализ применения ресурсов портала сотрудниками и подразделениями. В состав сервисов поиска и навигации входят средства работы с моделируемым иерархическим каталогом (рубри
126
Информационная безопасность открытых систем
катором) ресурсов и объектов, карта портала и поисковая система по внутренним (входящим в систему порталов) и внешним информационным ресурсам. Приведем ряд замечаний относительно возможных решений вопросов безопасности.
	Возможна авторизация пользователей, например на основе прав NT-домена или LDAP-сервера.
	Если нельзя применить NT/LDAP, то возможно создание отдельного реестра прав сотрудников.
	Если у каждого сотрудника разные пароли для доступа к документам, базам данных, финансовым приложениям, почте и т. п., т. е. возможность авторизации на уровне отдельных приложений (content level authorization), логин и пароль передаются приложению через специальный интерфейс, а права определяются по результатам ответа приложения.
	Интеграция авторизации пользователей на основе прав доступа в различных системах должна рассматриваться в каждом случае отдельно.
	Права доступа сотрудников при входе в портал определяют набор доступных им сервисов и информации. Не должно быть ограничений на количество уровней доступа.
	Персонализация сервисов и информационного содержания страниц портала в соответствии с потребностями отдельных сотрудников или группы пользователей (может быть создан профайл для корпоративных отделов).
	Системы анализа применения ресурсов портала сотрудниками и подразделениями оценивают, как часто сотрудники пользуются теми или иными разделами портала, что им наиболее необходимо в работе. Такая статистика нужна для реорганизации сервисов портала и уточнения требований к его информационному наполнению.
2.	Информационные сервисы. В состав информационных сервисов входит единая система новостей, единая баннерная сеть портала и сервис трансляции обновлений, обеспечивающий отслеживание всех изменений определенных разделов портала и подготовку информации о таких изменениях для пользователей портала. Средства поддержки экспорта и импорта информационных и функциональных ресурсов (содержания и сервисов) портала предназначены для поддержки интеграции в структуру портала внешних ресурсов, а также для поддержки средств создания персонального или корпоративного портала пользователя. Новостные ленты формируются путем круглосуточного сканирования новостных Интернет-узлов, информации новостных агентств и формирование новостной ленты с заданным периодом обновления. Распределение на персональные блоки новостей происходит на основании описания предпочтений пользователя и фильтрования по ключевым словам содержания сообщений. Внутренние новости компании формируются сканированием ресурсов интранета для отбора новостей и добавлением новостей сотрудниками, ответственными за обновление корпоративной новостной ленты, через специальный интерфейс.
3.	Сервисы доступа через веб-интерфейс. Эти сервисы предоставляют удаленный доступ (УД) к ресурсам интранета с помощью веб-браузера с наследованием прав доступа к файлам из существующей файловой системы. Они позволяют использовать веб-браузеры в качестве тонких клиентов для реализации распределенных приложений, что особенно актуально для задач с большим числом распределенных клиентских подключений. Например, доступ к корпоративным БД и ИС через единый вебинтерфейс (с предварительным просмотром документов в виде гипертекста - файлов,
2. Интранет как открытая система
127
что позволяет сначала определить необходимый документ и только потом загрузить его с удаленного сервера). Через веб-интерфейс также подключается электронная почта и при необходимости осуществляется передача сообщений на пейджер и сотовый телефон.
4.	Интерактивные сервисы. К сервисам интерактивного общения пользователей относятся единая система форумов, система проведения опросов и голосований, электронные доски объявлений и сервис рассылок. Примерами таких сервисов также являются средства поддержки очного обучения и повышения квалификации персонала, систем дистанционного обучения и тестирования (сертификации), а также системы информационной поддержки обучаемых.
5.	Корпоративные сервисы. Эти сервисы реализуют бизнес-процессы компании, для которых характерна удаленная или распределенная деятельность и необходимо отслеживание промежуточных результатов. Простейший пример - оформление различных заявок (например, на вход в здание) и отслеживание их прохождения через веб-интерфейс. Более сложный пример - банковские проводки.
6.	Сервисы доступа к корпоративным документам. Основное назначение этих сервисов - создание единого каталога для доступа к корпоративным документам. Каталог - это иерархически организованные записи о документах по разделам со ссылками на место хранения этих документов в интранете. Каталог позволяет:
	организовать единый регламент доступа к документам;
	сделать доступ к документам максимально удобным и легким через единый вебинтерфейс;
	создать единую информационную базу корпорации;
	осуществлять простую поддержку резервного хранения и восстановления после системных сбоев.
Сервисы доступа реализуют следующие основные функции для работы с документами:
	аутентификацию и авторизацию пользователей;
	визуализацию дерева каталога;
	эффективный поиск документов по аннотациям;
	возможность предварительного просмотра документов в формате гипертекстового файла;
	публикацию документов пользователями через веб-браузер с интуитивно понятным интерфейсом;
	классификацию документов по каталогу при публикации;
	возможность группировки документов при публикации (групповые документы);
	хранение истории изменения документов и записей о лицах, внесших изменения;
	групповую работу над документами;
	аудит всех событий, связанных с доступом.
7.	Сервис мониторинга и статистики предоставляет администраторам портала средства контроля и анализа нагрузки на аппаратные ресурсы портала и средства статистики обращений к различным разделам портала.
128
Информационная безопасность открытых систем
Вопросы для самоконтроля к гл. 2
1.	Дайте определение интранету. Каковы его основные отличия от локальной сети?
2.	Какие преимущества для организации предоставляет интранет?
3.	Из каких элементов состоит архитектура интранета?
4.	Опишите эталонную модель интранета.
5.	Какие базовые механизмы выделяют для интранета? Каковы их функции?
6.	Какие базовые сервисы интранета вам известны? В чем их назначение?
7.	Перечислите и кратко охарактеризуйте этапы создания интранета.
8.	Что такое сетевая инфраструктура интранета? Какие элементы в нее входят?
9.	Из чего складывается информационное наполнение интранета?
10.	Какие типы приложений используются в интранете?
11.	Какие функции и какими средствами выполняет система публикации информации для интранета?
12.	Каковы особенности управления интранетом?
13.	Какой новый персонал требуется для поддержки функционирования интранет? Каковы его примерные обязанности?
14.	Какие виды интранета вам известны?
15.	Расскажите о стандартах создания интранета.
16.	Каково место внутренней информационной среды предприятия в модели глобальной коммуникационной инфраструктуры?
17.	Для каких целей в модели TOGAF вводится понятие организационного континуума? Из каких составляющих оно слагается?
18.	Покажите, что интранет является частью среды открытых систем.
19.	Что такое экстранет?
20.	Дайте определение портала. Охарактеризуйте его основные функции.
21.	Рассмотрите известные классификации порталов. В чем особенности КП?
22.	Какова логическая структура и компоненты КП?
23.	Нарисуйте и прокомментируйте схему КП.
24.	Рассмотрите базовые сервисы КП.
3. УЯЗВИМОСТЬ ОТКРЫТЫХ СИСТЕМ
НА ПРИМЕРЕ ИНТРАНЕТА
В главе вводится понятийный аппарат, используемый при дальнейшем изложении, а именно определения угроз, уязвимостей и атак. Далее рассматриваются виды вторжений в открытые системы и типы нарушителей, совершающих их. Определяются виды организаций, сети которых наиболее уязвимы для атак злоумышленников. Подробно анализируются способствующие атакам причины, которые можно разделить на пять классов: уязвимость архитектуры клиент-сервер; слабости в системных утилитах, командах и сетевых сервисах; слабости в современных технологиях программирования; ошибки ПО и распространяющиеся по открытым сетям сетевые вирусы. Отдельно описываются уязвимости рабочих станций и различных серверов (почтовых и веб -серверов, СУБД, систем электронного документооборота и т. п.), а также каналообразующего оборудования
3.1. Основные понятия
Дадим определения основных понятий, которыми в дальнейшем будем пользоваться при рассмотрении вопросов защиты в открытых сетях.
Под термином "информационная безопасность", согласно определению Гостехкомиссии при Президенте РФ, понимают состояние защищенности информации, обрабатываемой средствами вычислительной техники или автоматизированной системы, от внутренних или внешних угроз: от нежелательного ее разглашения (нарушения конфиденциальности), искажения (нарушения целостности), утраты или снижения степени доступности информации, а также ее незаконного тиражирования, которые приводят к материальному или моральному ущербу владельца или пользователя информации [37].
Угрозы (threats) — потенциально возможные событие, действие или процесс, которые посредством воздействия на компоненты системы могут привести к нанесению ущерба. Это также и люди или группы людей, способные взломать компьютерную систему [38]. Это может быть любопытный подросток, рассерженный служащий или шпион конкурирующей компании или иностранного правительства. Наличие угрозы необязательно означает, что она реализуется и нанесет вред.
Уязвимость (vulnerability) - любая характеристика или свойство системы, использование которой нарушителем может привести к реализации угрозы. Иными словами, это слабые места в системах [38]. Уязвимости могут использоваться для компрометации (взлома) систем.
Вторжение (intrusion) - процесс попытки несанкционированного проникновения в какую-либо систему. Под вторжением может пониматься любое действие нарушителя, приводящее к реализации угрозы путем использования уязвимостей. Поэтому это реализовавшаяся угроза.
Атака (attack) - это событие (момент), при котором злоумышленник проникает внутрь системы или совершает по отношению к ней какое-либо несанкционированное действие. Атака является результатом вторжения.
Далее нас будут интересовать сам процесс вторжения и его результат, что для простоты изложения будем обозначать единым термином "атака" (в силу их большой взаимозависимости).
Слово злоупотребление (misuse) имеет широкое толкование и может отражать различные события, начиная от кражи конфиденциальных данных и заканчивая засорением спэмом, т. е. бесполезной, незапрашиваемой корреспонденцией (от англ.
5—2368
130
Информационная безопасность открытых систем
spam), почтовой системы. Злоупотребление определяет действие, которое нарушает стратегию использования сети (например, посещение порносайтов), в то время как вторжение определяет действие, которое указывает на то, что кто-то атакует и ставит под угрозу защиту сети.
Обнаружение вторжений (OB) (intrusion detection) - это процесс обнаружения несоответствующих, неправильных или аномальных действий и событий в сетях [38].
Также вводится различие между обнаружением вторжений и обнаружением неправильного использования сети. Термин "вторжение" применяется для описания нападений на сеть извне, в то время как термин "злоупотребление" описывает атаки, исходящие из самой внутренней сети. Злоупотребление начинается после первоначального санкционированного входа в сеть.
Информационная система, для которой проводится обнаружение вторжений, может быть любым объектом - рабочей станцией, сетевым элементом, сервером, мейнфреймом, МЭ, веб-сервером и т. п.
Средства ОВ — это средства, помогающие управлять угрозами и уязвимостями в постоянно меняющейся сетевой среде.
Система обнаружения вторжений (Intrusion Detection System, IDS) — это система, предназначенная для обнаружения вторжений [39].
Аудит означает получение информации о системе, касающейся ее внутренней работы и поведения. Примеры аудита не ограничиваются только работой с учетными записями (бюджетами), syslog для Unix-платформ, event log в Windows NT и incident tickets в сетях передачи данных Х.25.
Риск нарушения ИБ (security risk) — фактор, отражающий возможный ущерб организации в результате реализации угрозы ИБ.
Наглядная взаимосвязь введенных выше понятий представлена на рис. 26 [40] (пунктирной линией обозначены управляющие воздействия, непрерывной - естественные воздействия). Эта модель основана на адаптации общих критериев (ISO 15408) и проведении анализа риска (ISO 17799) и соответствует специальным нормативным документам по обеспечению информационной безопасности, принятым в Российской Федерации, международному стандарту ISO/IEC 15408 "Информационная технология - методы защиты - критерии оценки информационной безопасности", стандарту ISO/IEC 17799 "Управление информационной безопасностью" и учитывает тенденции развития отечественной нормативной базы (в частности, Гостехкомиссии РФ) по вопросам защиты информации.
Есть два основных типа нарушителей (intruder) ИБ в сетях: хакер (hacker) и взломщик (cracker). Хакер — это человек, который хочет вмешаться в события, происходящие в компьютерной системе. Добрый хакер - это человек, которому нравится проникать в собственный компьютер, чтобы пытаться понять, каким образом он работает, или в компьютеры других сетей с целью обнаружения известных уязвимостей и их закрытия или информирования о них соответствующего сетевого администратора. Взломщик отличается от хакера тем, что он разрушает все на своем пути.
Исследования показали, что типичный нарушитель - это обычно молодой человек в возрасте от 16 до 25 лет. Такие нарушители часто начинают интересоваться взломом компьютеров и сетей с целью применения своих знаний и совершенствования навыков или для использования сетевых ресурсов для своих нужд. Большинство атакующих достаточно постоянны в осуществлении атак, что определяется большим ко
3. Уязвимость открытых систем на примере интранета	131
личеством свободного времени, которым они располагают. Многие из них - это оппозиционеры по своему духу. Они применяют сканеры для проверки огромного количества хостов удаленных систем с целью выявления в них уязвимых мест (под хостом понимается компьютер с уникальным IP-адресом). Кроме определения хостов и сетей, уязвимых для удаленных атак (УА), нарушители часто получают доступ к хосту, разрешенный, например, для пользователя с именем root (что верно для ряда Unix-платформ и уже невозможно, например, для Power Secure Unix фирмы Harris), а далее для проникновения в систему устанавливают специальные встроенные "люки" и захватывают хост, проникая на него через известные для удаленного входа слабые места. При этом другие атакующие для входа на те же хосты используют уже другие популярные методики получения доступа.
Рис. 26. Взаимосвязь основных понятий информационной безопасности
Для сканирования хостов на известные для УА уязвимости атакующий обычно запускает программу-сканер с хоста, с которым у него есть быстрая связь через Интернет. Чаще всего это оптоволоконное соединение.
Для сканирования компьютеров, которые работают с телефонными сетями и являются терминальными серверами (подвидом серверов удаленного доступа), досками объявлений или голосовыми почтовыми системами, атакующие используют специальные программы, автоматически сканирующие большое количество телефонных номеров на наличие соответствующего перечисленным системам программного обеспечения ("носителей систем").
И лишь небольшой процент нарушителей действительно выбирает себе жертвы и методично предпринимает попытки атак на них. Эти атакующие особенно искусны и используют изощренные методики взлома сетей. Известно, что они атакуют сети, защищенные от Интернета МЭ, зная о неопубликованных уязвимостях и особенностях этих МЭ, что помогает им атаковать внутренние хосты через сервисы, разрешенные МЭ. Сети и хосты, представляющие интерес для атакующих данного типа, обычно содержат такую конфиденциальную информацию, как отчеты об исследованиях и новых разработках или иные сведения, полезные с точки зрения взломщиков.
Также известно, что нарушители имеют доступ к информации по обнаруженным в различных средствах слабостям, о чем знают лишь консультанты по безопасности и крупные компании, занимающиеся обеспечением ИБ. Атакующие используют такие
132
Информационная безопасность открытых систем
данные для сканирования определенных целей на наличие известных для УА уязвимостей. Нарушители, которые атакуют специфические хосты, обычно очень терпеливы, и уже установлено, что перед тем, как они попытаются получить доступ к хосту или сети, они проводят долгие месяцы, собирая информацию о своих будущих жертвах.
Нарушители могут быть разделены на две категории (рис. 27).
1. Аутсайдеры (outsiders) - это внешние нарушители по отношению к открытой сети, которые атакуют внутренние сетевые ресурсы (цель - удаление информации на корпоративном веб-сервере, пересылка спэма через почтовый сервер и т. д.), часто обходя для этого средства защиты типа МЭ. Злоумышленники могут осуществлять атаки из Интернета через модемные линии, через физическое подключение к каналам связи или из сети партнеров (поставщиков, заказчиков, дилеров и т. д.).
Рис. 27. Внешние и внутренние нарушители
2. Инсайдеры (insiders) - это внутренние нарушители, находящиеся внутри сети и имеющие полный доступ ко всем ее серверам. Это пользователи, неправильно применяющие свои привилегии или исполняющие роль привилегированного пользователя (например, с привилегированного терминала). Исследования показывают, что 80 % всех атак в сетях исходит именно от инсайдеров. Заметим, что МЭ не обеспечивают зашиты от них. Внутренние злоумышленники представляют основную опасность, так как они знакомы с системой зашиты, направлением деятельности компании и могут реально оценить стоимость ресурсов корпоративной сети. В этой категории опасность представляют уволенные и обиженные сотрудники, мстящие от обиды, "продвинутые" пользователи, при каждом удобном случае желающие проде
3. Уязвимость открытых систем на примере интранета
133
монстрировать свои знания, и администраторы, которые в силу своих обязанностей знают многие секреты организации.
Какие действия чаще всего совершают внутренние злоумышленники?
Посторонние лица (у которых права в действующей ИС отсутствуют) осуществляют перехват или воздействие на информацию, передаваемую по телекоммуникационным сетям, а также квалифицированное воздействие на систему защиты и работу ИС в целом с использованием телекоммуникационных сетей.
Разработчики приложений (у которых права в действующей ИС отсутствуют) к уже названным двум действиям добавляют на этапе разработки ПО реализацию преднамеренных скрытых возможностей для последующего входа в систему или непреднамеренных ошибок.
Обслуживающий персонал (у которого права в ИС и на уровне приложений отсутствуют, но имеется доступ к техническим средствам и ПО) может вести себя как постройнее лицо, плюс получать доступ к сетевому и телекоммуникационному оборудованию, устанавливать посторонние программы и внедрять программные закладки.
Пользователи ИС - сотрудники или клиенты (права на доступ к приложениям ИС) - осуществляют перехват или воздействие на информацию, передаваемую по телекоммуникационным сетям, вносят вредоносное ПО в ИС и присваивают полномочия других пользователей (в том числе администратора).
Согласно руководящему документу Гостехкомиссии РФ "Концепция защиты средств вычислительной техники и автоматизированных систем от несанкционированного доступа к информации" в качестве внутреннего нарушителя рассматривается субъект, имеющий доступ к работе с их штатными средствами. Нарушители классифицируются по четырем уровням возможностей, предоставляемых им этими средствами. Классификация является иерархической, т. е. каждый следующий уровень включает в себя функциональные возможности предыдущего. Первый уровень соответствует самому низкому уровню возможностей - запуск задач (программ) из фиксированного набора, реализующих заранее предусмотренные функции по обработке информации. Второй уровень определяется возможностью создания и запуска собственных программ по обработке информации с новыми функциями. Третий уровень подразумевает возможность управления функционированием системы, т. е. воздействием на ее базовое ПО, состав и конфигурацию АО. Четвертый уровень определяется всем объемом возможностей лиц, осуществляющих проектирование, реализацию и ремонт технических средств системы, вплоть до включения в состав средств вычислительной техники собственных технических средств с новыми функциями по обработке информации.
Все, что случается в киберпространстве, является зеркалом реальной жизни. Нападающие взламывают сети по огромному числу различных причин, большинство из которых вне закона. Они обычно сообщают об этом своим друзьям, так как это повышает их авторитет. Одна группа злоумышленников может также конкурировать с другой группой, соревнуясь в числе успешных атак. Это очень похоже на борьбу преступных группировок в обычном мире. Вся информация о взломах из хвастовства публикуется в Интернете, где она доступна огромному числу пользователей. В их числе - преступники, другие злоумышленники, пресса, юридические и военные организации, просто интересующиеся граждане, профессионалы в области безопасности и, наконец, конкуренты по бизнесу. Другие нападающие могут заниматься взло
134
Информационная безопасность открытых систем
мами, чтобы привлечь внимание к отдельной проблеме, которую они выбрали в качестве предмета применения своих навыков и знаний. В этом случае они сами могут собирать и публиковать в Интернете фактические доказательства взломов и/или входить в контакт с прессой. Они часто протестуют против того, что многие из их единомышленников уже были пойманы и находятся в тюрьме. Есть те, кто просто подражает своим друзьям, - они протестуют против некой социальной несправедливости или борются за окружающую среду, защищают мораль и веру.
Существует еще несколько типов нарушителей: "любители веселых прогулок в чужом автомобиле" (joy riders), ради шутки показывающие всем, что они умеют; вандалы (vandals), вызывающие разрушения или оставляющие свои следы на вебстраницах; спекулянты (profiteers) или шпионы, желающие получить прибыль от своих действий, таких, как кража корпоративных данных и их продажа; охотники за промышленными секретами; просто профессиональные преступники и террористы, координирующие свою деятельность посредством Интернета. Этот список наверняка можно пополнить и другими представителями. В основном их цели сводятся к следующему:
	финансовой выгоде;
	политической выгоде - небольшой, но существенный, процент атакующих делают это по политическим соображениям, например они пытаются таким образом обратить внимание общественности на отдельную проблему (права животных, контроль за оружием, свобода слова и т. д.);
	разрушению;
	мести недовольных сотрудников;
	вызову обществу;
	самоутверждению (например, дети хотят поразить друзей своими знаниями и навыками);
	спорту — возможно, администратор хвастается защищенностью своего интранета, говоря всем, что он непроницаем; перед таким вызовом нарушитель устоять не может;
	шутке.
Попытаемся ответить на вопрос, какие ОС используют нарушители. Очевидно, что различные. Но некоторым они отдают явное предпочтение. Macintosh - это наименее вероятная платформа, поскольку еще не достаточно средств для MacOS, а таких средств различного назначения для исследования системы-жертвы и осуществления атаки требуется много. По этой причине Unix - наиболее вероятная платформа. Чаще это FreeBSD или Linux. Причина довольно очевидна - это цена. За 39 долл, за книгу по Linux (с CD-ROM) атакующий получает все необходимые средства: С, C++, Smalltalk, Perl и многое другое. Кроме того, он получает полный исходный код ОС (в первую очередь это касается свободно распространяемых Linux и FreeBSD). Unix-платформы нетребовательны в отношении ресурсов. Часто используется Solaris или SCO. Они лицензированы, и их легко приобрести. Для платформ Microsoft есть много законных средств администирирования и защиты, которые могут использоваться и для удаленной атаки на серверы. Для своего применения они не требуют особых навыков и знаний. Поэтому все больше атакующие используют именно их.
Теперь определим, к каким сферам человеческой деятельности относятся организации, чаще всего становящиесся объектом атак злоумышленников.
3. Уязвимость открытых систем на примере интранета
135
Компьютерные сети используются в организациях каждый день (типовая схема современной сети приведена на рис. 28). Они обеспечивают пользователям совместное и эффективное применение огромных массивов данных. Обычно при проектировании и реализации сети организации не учитываются аспекты обеспечения ИБ. Принимается во внимание лишь функциональность и эффективность сети, что, конечно же, самое главное с точки зрения самого бизнеса. Вопросы защиты информации, как правило, встают уже несколько позже, что в дальнейшем на практике может стоить миллионов долларов.
Центральный офис
Серверный комплекс Web/FTP-серверы
Рабочие станции
Серверы Рабочие станции
Почтовый
Сервер Рабочие станции
Сервер Рабочие станции
Абоненты системы
Абоненты системы
Подразделения 2 уровня
Почтовый
сервер
Мобильные
пользователи
Открытые
сети
Интернет)
Выделенные
сети
передачи
Рис. 28. Типовая схема сети современной организации
Подразделения 1 уровня
Подразделения 2 уровня
Клиенты и партнеры
Подразделения 1 уровня
Наиболее частым попыткам осуществления атак подвергаются следующие организации [41]:
	финансовые учреждения и банки;
	сервис-провайдеры Интернета;
	фармацевтические компании;
	правительственные и оборонные предприятия;
	партнеры и заказчики различных правительственных учреждений и агентств;
	международные корпорации.
136
Информационная безопасность открытых систем
Хотя большинство подобных атак на интранет осуществляется изнутри (пользователями, которые уже имеют авторизированный доступ к каким-либо подсистемам корпоративных и секретных сетей), рассмотрим методы, употребляемые для взлома открытых сетей полностью извне.
Финансовые учреждения и банки подвергаются атакам с целью совершения мошенничества. Многие банки были атакованы именно по этой причине, понеся при этом большие финансовые потери. Банки строят свою политику на недопущении того, что они могут стать жертвами подобных внешних атак, иначе, если об атаках станет известно широкой общественности, они потеряют клиентов и их доверие.
Сервис-провайдеры (СП) Интернета - это обычная цель злоумышленников, так как серверы СП легко доступны из Интернета (они обладают IP-адресами, "видимыми" в Интернете). Кроме того, СП имеют большое количество оптоволоконных соединений, которые могут быть использованы нарушителями для перемещения существенных объемов информации по Интернету. Крупные СП ведут у себя БД своих клиентов, часто содержащие такую конфиденциальную информацию о пользователях, как номера их кредитных карточек, имена и адреса.
Фармацевтические компании становятся жертвами преимущественно промышленного шпионажа, когда группе взломщиков за получение фармацевтической информации (например, о фирмах, производящих лекарственные препараты, их разработках и новых исследованиях) платят солидные суммы. При утечке подобных данных возможны значительные потери для организаций, о которых взломщикам удалось получить соответствующие сведения.
В 1998-1999 гг. правительственные и оборонные предприятия США испытали на себе буквально миллионы атак, исходящих из Интернета. Из-за низких ассигнований на обеспечение ИБ и достаточно слабых ПБ защита информации в таких организациях стала настоящем полем битвы, где злоумышленники пробовали взломать правительственные и военные серверы.
Заказчики различных оборонных учреждений, хотя и сознающие необходимость защиты, представляют для взломщиков интерес с точки зрения получения доступа к классифицированной или секретной военной информации. Эта информации может быть "перепродана" взломщиками заинтересованным в этом зарубежным организациям. Хотя такие случаи, о которых стало общеизвестно, можно пересчитать по пальцам, подобные действия могут иметь место и к ним нужно быть готовыми.
Международные корпорации - это основные жертвы попыток осуществления промышленного шпионажа. Они имеют разбросанные по всему миру офисы, для связи которых создаются большие корпоративные сети, обеспечивающие возможность эффективного совместного разделения сетевых ресурсов всеми служащими этих корпораций. Как показывают многочисленные тесты различных организаций, и в том числе Network Security Solutions Ltd., многие из таких международных организаций уже подверглись атакам взломщиков и таким образом были взломаны.
Подобно фармацевтическим компаниям, международные корпорации, работающие в области электроники, ПО или в близких к компьютерам сферах, расходуют миллионы долларов на исследования и разработку новых технологий. Для конкурентов этих корпораций очень соблазнительно нанять группу взломщиков для получения подробных сведений о деятельности корпорации-"жертвы". Похищенная таким способом информация далее может быть использована для быстрой и простой реали
3. Уязвимость открытых систем на примере интранета
137
зации знаний конкурентов о новых ключевых технологиях, что повлечет за собой для них большие потери из-за упущенной прибыли.
Другая форма атак, принятых среди конкурентов, заключается в постоянном контроле ("опеке") за интранетом в течение определенного времени и утечке ценной информации, что в конечном счете приведет к снижению прибыли организации. В большинстве случаев достаточно сложно установить и локализовать источник такой атаки. В зависимости от внутренней сегментации сети данный вид атак может быть очень эффективен и приведет к большим финансовым потерям.
В современном сетевом сообществе такая "нечестная игра" не является чем-то необычным и для достижения успеха должна вестись серьезными методами.
Подводя итог, можно сказать, что типичной жертвой атак является интранет небольшой организации, где чаще всего вопросы экономии распространяются и на оплату затрат на приобретение и установку средств защиты. Экономия на безопасности может сказаться серьезными последствиями для жизнеспособности интранета.
Рано или поздно можно обнаружить, что произошло нарушение ИБ интранета, проявившееся тем или иным образом. Известно, что атаки на интранет могут принимать самые разнообразные формы. Какое-либо неординарное происшествие в интранете должно дать повод для размышлений системному администратору, и конечно, что-либо вызвавшее проблемы или повреждения должно быть немедленно проанализировано. Это может быть, например, запуск странного или неизвестного процесса, который использует большую часть процессорного времени, регистрация в системе постороннего пользователя, вирус или попытка проникновения в систему пользователя с удаленного компьютера.
3.2.	Угрозы ресурсам интранета и причины их реализации
Угрозы осуществляются на практике в результате стечения случайных обстоятельств (ошибки, пропуски, сбои электроэнергии, природные бедствия) либо из-за преднамеренных действий злоумышленников. Общепринятой классификации угроз безопасности пока не существует. Возможна классификация по следующим признакам:
1)	цели реализации (цели могут быть связаны, например, со свойствами конфиденциальности, целостности и доступности информации, которые собирается нарушить злоумышленник, или с расширением прав доступа и получением полного контроля над работой компьютера пользователя или определенным сервером);
2)	принципу воздействия на систему (например, взлом парольной защиты или нападение на основе сетевого протокола);
3)	характеру воздействия на систему (например, пассивный перехват трафика или активная подмена данных);
4)	причине появления используемой ошибки защиты (например, из-за отсутствия средств обнаружения вторжений, неправильной настройки средств защиты или неус-тановки защищающих обновлений);
5)	объекту атаки (например, данные, программы, сетевое обеспечение);
6)	используемым средствам атаки;
138
Информационная безопасность открытых систем
7)	состоянию объекта атаки (например, явное изменение состояния или отсутствие каких бы то ни было изменений, так как осуществляется лишь пассивный перехват входящих и исходящих пакетов или почтовых сообщений);
8)	по источнику угроз и т. п.
Чуть подробнее рассмотрим последнюю классификацию, так как каждая угроза обязательно имеет свой источник. Их можно разделить на три класса [http://www. c-news.ru/oldcom/security/elvis_class.shtml].
1.	Антропогенные:
• внешние: криминальные структуры; потенциальные преступники и хакеры; недобросовестные партнеры; технический персонал поставщиков телематических услуг; представители надзорных организаций и аварийных служб; представители силовых структур;
 внутренние: основной персонал (пользователи, программисты, разработчики); представители службы защиты информации (администраторы); вспомогательный персонал (уборщики, охрана); технический персонал (жизнеобеспечение, эксплуатация).
2.	Техногенные:
• внешние: средства связи; сети инженерных коммуникаций (водоснабжение, канализация); транспорт;
 внутренние: некачественные технические средства обработки информации; некачественные программные средства обработки информации; вспомогательные средства (охрана, сигнализация, телефония); другие технические средства, применяемые в учреждении.
3.	Стихийные (чаще всего внешние): пожары; землетрясения; наводнения; ураганы; магнитные бури; радиоактивное излучение; различные непредвиденные обстоятельства; необъяснимые явления; другие форсмажорные обстоятельства.
Согласно ставшему уже классическим подходу для информации вообще выделяются три вида угроз, связанные с ее основными свойствами.
1.	Угрозы конфиденциальности (конфиденциальность - защищенность информации от несанкционированного ознакомления с нею, подразумевающая некоторую классификацию данных, получение либо использование которых неавторизованными для этого лицами может стать причиной серьезного ущерба для владельцев или пользователей этой информации); примеры угроз: хищение (копирование) информации и средств ее обработки, утрата (неумышленная потеря, утечка) информации и средств ее обработки.
2.	Угрозы целостности (целостность - состояние, при котором данные, представленные в компьютере, в точности соответствуют данным в исходных документах и при этом не могут быть подвержены неумышленным или умышленным искажениям или разрушениям; информация может пострадать от сознательных действий злоумышленника, от ошибок персонала, от пожара, аварий и др.); примеры угроз: модификация (искажение) информации, отрицание ее подлинности, навязывание ложной информации.
3.	Угрозы доступности (доступность - возможность за приемлемое время получить требуемую информационную услугу, причем наличие системы безопасности не должно создавать помех нормальной работе системы); примеры угроз: блокирование информации; уничтожение информации и средств ее обработки.
3. Уязвимость открытых систем на примере интранета	139
Общую классификацию угроз интранету можно представить следующим образом.
1.	Угрозы конфиденциальности данных и программ. Реализуются при несанкционированном доступе (НСД) к данным, программам или каналам связи. Полезная информация также может быть получена и при перехвате электромагнитного излучения, создаваемого аппаратурой системы. Определенные сведения о работе системы дает и наблюдение за характером процесса обмена сообщениями (трафиком) без доступа к их содержанию.
2.	Угрозы целостности данных, программ, аппаратуры. Целостность данных и программ нарушается при несанкционированном уничтожении, добавлении лишних элементов и модификации данных, изменении порядка расположения данных, формировании фальсифицированных платежных документов в ответ на законные запросы, активной ретрансляции сообщений с их задержкой. Повреждение, похищение или незаконное изменение алгоритмов работы аппаратуры приводит к нарушению ее целостности.
3.	Угрозы доступности данных. В случае их реализации объект (пользователь или процесс) не получает доступа к законно выделенным ему службам или ресурсам. Происходит захват всех ресурсов, блокирование линий связи несанкционированным объектом в результате передачи по ним своей информации или стирание необходимой системной информации. Возникает ненадежность или плохое качество обслуживания в системе, и, следовательно, падает достоверность и своевременность доставки платежных документов.
4.	Угрозы отказа от выполнения транзакций. Если легальный пользователь выполняет в системе транзакции (передает или принимает платежные документы), а затем отрицает свое участие в них, чтобы снять с себя ответственность, тогда и реализуется данный вид угроз.
Перечислим некоторые наиболее распространенные проявления угроз ИБ.
Несанкционированный доступ - получение пользователем или другим субъектом (например, процессом) доступа к объекту, на который у него нет разрешения в соответствии с принятой в организации ПБ.
Незаконное использование привилегий. Злоумышленники, применяющие данный способ атаки, обычно используют штатное ПО, заставляя его функционировать в нештатном режиме. Незаконный захват привилегий возможен либо при наличии ошибок в самой системе защиты или платформах вычислительных средств, либо в случае халатности при управлении системой и привилегиями или неправильном конфигурировании ПО и аппаратных средств.
Атаки-"салями" (salami attack) более всего характерны для систем, обрабатывающих денежные счета, в том числе для банков. Принцип атак построен на том, что при обработке счетов используются целые единицы (рубли, копейки, центы), а при исчислении процентов получаются дробные суммы. Результаты округления после арифметических операций прибавляются к значению некоторого элемента БД (например, к сумме, хранящейся на личном счету злоумышленника).
Скрытые каналы - пути передачи информации между процессами системы, нарушающие системную ПБ. В среде с разделением доступа к информации пользователь может не получить разрешение на обработку интересующих его данных, однако может придумать для этого обходные пути. Скрытые каналы можно реализовать раз
140
Информационная безопасность открытых систем
личными путями, в частности при помощи программных закладок ("троянских коней") или используя современные технологии программирования типа Java.
"Маскарад" - выполнение каких-либо действий одним пользователем интранета от имени другого пользователя с последующим присвоением его прав и привилегий. Такая атака в банковских системах электронных платежей при неправильной идентификации клиента может привести к серьезным последствиям. Особенно это касается платежей с помощью пластиковых карт. Сам по себе метод идентификации с помощью персонального идентификатора (ПИН-кода) достаточно надежен, нарушения могут происходить вследствие ошибок его применения, например в случае утери пластиковой карты, при использовании очевидного идентификатора (своего имени, ключевого слова и т. д.).
"Сборка мусора" (garbage collection). "Мусор" - это память, более не используемая программой, т. е. та, на которую в программе нет ссылок. В процессе сборки мусора выделенная ранее память пересматривается с целью обнаружения неиспользуемых фрагментов, а высвобожденная память передается для повторного использования. В результате этой проблемы управления памятью после окончания работы некоторых программ обрабатываемая информация не всегда полностью удаляется из памяти ПК. Данные хранятся на носителе до перезаписи или уничтожения; при выполнении этих действий на освободившемся пространстве диска находятся их остатки. С помощью специальных программ и оборудования и осуществляется так называемая сборка мусора. Для защиты используются специальные механизмы, примером которых является стирающий образец. Или при наличии соответствующих технических возможностей может применяться "принудительная очистка" (перезапись произвольной константой) освобождаемых областей памяти на магнитных и иных носителях, ранее использованных для хранения защищаемых информационных ресурсов.
Взлом системы - умышленное проникновение в систему с несанкционированными параметрами входа, т. е. именем пользователя и его паролем, иногда даже обходя такое средство защиты, как программа входа. Алгоритм ввода имени и пароля, их шифрование, правила хранения и смены паролей не должны содержать ошибок.
"Люки" - скрытые, ^задокументированные точки входа в ПО. "Люки" относятся к категории угроз, связанных с ошибками реализации какого-либо проекта (системы в целом, комплекса программ и т. д.). Злоумышленник может разыскать их во время случайного поиска.
Вредоносные программы - специально созданные программы для воздействия на вычислительную систему. Они прямо или косвенно дезорганизуют процесс обработки информации или способствуют утечке или искажению информации. Назовем некоторые конкретные реализации подобных программ.
	Вирус (viruses) - программа, способная заражать другие программы, модифицируя их так, чтобы они включали в себя копию вируса. Вирус создает свои дубликаты, не обязательно совпадающие с оригиналом. Дубликаты сохраняют способность к дальнейшему распространению.
	"Троянский конь" (Trojan horses) - программа, которая приводит к неожиданным (и обычно нежелательным) результатам. Она способна раскрыть, изменить или уничтожить данные или файлы. Обычно такие программы встраивают в программы широкого пользования, например в программы обслуживания сети, электронной почты. Их обнаруживают антивирусные средства и специальные системы
3. Уязвимость открытых систем на примере интранета
141
управления доступом. В "Оранжевой книге" ведется постоянно обновляемый список известных программ этого рода.
	"Червь" (worm) - программа, распространяемая в системах и сетях по линиям связи. По способу распространения выделяют почтовые черви (для рассылки своих копий используют на инфицированном компьютере почтовый клиент и адресную книгу или прямые соединения с SMTP-сервером, а также уязвимости в почтовых клиентах или в их общих с браузером компонетах), LAN-черви (распространяются через общие ресурсы локальных сетей), Peer-to-Peer-черви (распространяются через общедоступные каталоги пользователей этих сетей), IntemetRelayChat (или кратко IRQ-черви со смешанным механизмом проникновения, exploit-черви (распространяющиеся из-за различных уязвимостей в системах) и т. д.
	"Жадная" программа (greedy program) - программа, которая захватывает (монополизирует) отдельные ресурсы вычислительной системы, не давая другим процессам возможности их использовать.
	"Захватчик паролей" (password grabber) - программа, предназначенная для распознавания паролей. Например, она выводит на экран терминала специальные заставки типа пустого экрана или экрана, появляющегося после крушения системы. А далее при попытке повторного запуска системы имитируется запрос на ввод имени и пароля, которые запоминаются в соответствующем файле.
	"Бактерия" (bacteria) - программа, порождающая свои копии и перегружающая память ПК и процессор.
	"Логическая бомба" (logic bomb) - программа, приводящая к повреждению файлов или компьютеров (от искажения данных до полного их уничтожения). Логическую бомбу вставляют, как правило, во время разработки программы, а срабатывает она при выполнении некоторого условия (время, дата, кодовое слово).
	"Лазейки" (trapdoors) - точки входа в программу, открывающие доступ к некоторым системным функциям. Обнаруживаются они при анализе работы программы.
Анализ всего комплекса угроз и оценка последствий их реализации составляет одну из первых задач сотрудников, ответственных за безопасность. Оценка уязвимости интранета предполагает изучение всех комбинаций реализации перечисленных угроз и последствий, к которым они приводят. По мере совершенствования средств и методов защиты компьютерных систем злоумышленниками создаются новые, весьма изощренные способы их преодоления. Приведем здесь перечень наиболее вероятных случайных происшествий и злоумышленных действий, которые важны при оценке степени уязвимости любого интранета.
1.	Происшествия, связанные с техническими причинами:
	выход из строя дискового накопителя с повреждением диска;
	отказы, вызванные ошибками в ПО;
	повреждение магнитных носителей;
	отказы электронных схем компьютеров и периферийного оборудования;
	нарушения в сети электропитания: перенапряжение, импульсные выбросы, аварийное отключение электропитания;
	воздействие статического электричества;
	ошибки при передаче данных по каналам связи;
	повреждения кабелей связи при строительных работах.
142
Информационная безопасность открытых систем
2.	Происшествия, связанные со стихийными бедствиями:
	пожар;
	затопление при аварии водопровода, отопления или канализации;
	разрушение ветхих элементов конструкции здания;
	прямое попадание молнии или наводка импульсных токов во время грозы.
3.	Происшествия, связанные с ненамеренными действиями людей:
	случайное заражение компьютера вирусом при использовании посторонней программы - игры, учебного пакета и т. п.;
	ошибочные действия малоквалифицированного персонала при профилактике, техническом обслуживании или ремонте;
	ненамеренное повреждение аппаратуры в результате случайных действий безответственных лиц, например обрыв соединительного кабеля или повреждение аппаратуры при неосторожном поведении в помещении, где установлена система;
	ошибочные действия оператора при работе, приводящие к разрушению данных;
	неправильное обращение с гибкими дисками или другими магнитными носителями при их использовании или хранении.
4.	Злоумышленные действия людей:
	проникновение в систему через внешний (например, телефонный) канал связи с присвоением полномочий одного из легальных пользователей с целью подделки, копирования или уничтожения данных (реализуется угадыванием либо подбором паролей, выявлением паролей и протоколов через агентуру в организации, перехватом паролей при негласном подключении к каналу во время сеанса связи, дистанционным перехватом паролей в результате приема электромагнитного излучения);
	проникновение в систему через телефонную сеть при перекоммутации канала на модем злоумышленника после вхождения легального пользователя в связь и предъявления им своих полномочий с целью присвоения прав этого пользователя на доступ к данным;
	копирование информации и паролей при негласном пассивном подключении к кабелю интранета или при приеме электромагнитного излучения сетевого адаптера;
	выявление паролей легальных пользователей при негласном активном подключении к коммуникационной сети при имитации запроса сетевой ОС;
	анализ трафика при пассивном подключении к каналу связи (с помощью так называемых снифферов, перехватчиков, от англ, snffer) или при перехвате электромагнитного излучения аппаратуры для выявления протоколов обмена;
	подключение к каналу связи в качестве активного ретранслятора для фальсификации документов, изменения их содержания, порядка следования, повторной передачи, доставки с задержкой или упреждением;
	блокировка канала связи собственными сообщениями, вызывающая отказ в обслуживании легальных пользователей;
	отказ абонента от факта приема (передачи) документов или формирование ложных сведений о времени приема (передачи) сообщений для снятия с себя ответственности за выполнение этих операций;
	формирование ложных утверждений о полученных (переданных) документах;
	скрытая несанкционированная передача конфиденциальной информации в составе легального сообщения для выявления паролей, ключей и протоколов доступа;
3. Уязвимость открытых систем на примере интранета
143
	незаконное объявление пользователем себя другим пользователем (маскировка) для нарушения адресации сообщений или возникновения отказа в законном обслуживании;
	сбор и анализ использованных распечаток, документации и других материалов для копирования информации или выявления паролей, идентификаторов, процедур доступа и ключей;
	визуальный перехват информации, выводимой на экран дисплеев или вводимой с клавиатуры для выявления паролей, идентификаторов и процедур доступа;
	негласная переработка оборудования или ПО на фирме-изготовителе, фирме-поставщике, в месте складирования или в пути следования к заказчику с целью внедрения средств НСД к информации извне (программ-перехватчиков и "троянских коней", аппаратуры вывода информации и т. п.), а также уничтожение информации или оборудования (например, с помощью вирусов, ликвидаторов с дистанционным управлением или замедленного действия и т. п.);
	разрушение информации или создание сбоев в интранете с помощью вирусов для дезорганизации деятельности организации (реализуется загрузкой вирусов в нерабочее время, подменой игровых программ, используемых сотрудниками в рабочих помещениях, или вручением сотруднику "подарка" в виде новой компьютерной игры или другой занимательной программы);
	похищение оборудования, в том числе отдельных плат, дисководов, дорогостоящих микросхем, кабелей, дисков, лент, с целью продажи, что влечет за собой потерю работоспособности системы, а иногда и уничтожение данных;
	похищение магнитных носителей с целью получения доступа к данным и программам;
	разрушение оборудования, магнитных носителей или дистанционное стирание информации (например, с помощью магнитов);
	считывание информации с жестких и гибких дисков (в том числе и остатков "стертых" файлов), магнитных лент при копировании данных с оборудования на рабочих местах в нерабочее время, при копировании данных с использованием терминалов, оставленных без присмотра в рабочее время;
	копирование данных с магнитных носителей, оставленных на столах или в компьютерах; копирование данных с оборудования и магнитных носителей, убранных в специальные хранилища, при их вскрытии или взломе;
	внесение изменений в данные и программы для подделки и фальсификации документов при включении системы во время негласного посещения в нерабочее время; использование оставленного без присмотра оборудования в рабочее время; внесение изменений в данные, записанные на оставленных без присмотра магнитных носителях;
	установка скрытых передатчиков для вывода паролей с целью копирования данных или доступа к ним по легальным каналам связи с интранетом в результате негласного посещения в нерабочее время, посещения с целью ремонта, настройки, профилактики оборудования или отладки ПО, скрытой подмены элементов оборудования при оставлении их без присмотра в рабочее время;
	установка ликвидаторов замедленного действия или с дистанционным управлением (программных, аппаратных или аппаратно-программных с исполнительным
144
Информационная безопасность открытых систем
механизмом взрывного, химического, электрического или вирусного действия) с целью уничтожения информации или оборудования;
	несанкционированное изменение своих полномочий на доступ или полномочий других пользователей в обход механизмов защиты;
	внесение изменений в базу данных или в отдельные файлы в пределах выделенных полномочий для подделки или уничтожения информации.
Анализ угроз должен включать в себя:
	оценку характера и ценности информации, хранящейся в системе;
	построение модели злоумышленника, т. е. оценку того, от кого нужно защищаться - от постороннего лица, пользователя системы, администратора и т. д.;
	выделение наиболее опасных угроз для хранящейся в системе информации (несанкционированное чтение или изменение и т. д.);
	оценку затрат времени и средств на вскрытие системы, допустимых для злоумышленников;
	оценку допустимых затрат времени, средств и ресурсов системы на организацию ее защиты.
При анализе угроз, вызванных злоумышленными действиями, целесообразно выяснить их мотивы, цели и последствия, а также определить круг потенциальных инициаторов (субъектов) таких действий. Основными нарушителями могут быть сотрудники (нынешние и бывшие) и клиенты организаци, конкуренты и конкуренты клиентов. Согласно статистике компьютерных преступлений основным их мотивом оказывается незаконное обогащение, а чаще всего в качестве субъектов преступлений выступают сотрудники (бывшие сотрудники). Значительно реже встречаются такие причины, как месть обиженных сотрудников или завоевание престижа среди определенной группы лиц.
При анализе способов осуществления злоумышленных действий следует различать субъекта действий и конкретных исполнителей. Так, для шпионажа или диверсии в роли агентов выступают сотрудники банка, его клиенты, обслуживающий персонал из внешних организаций, просто посторонние, т. е. все те лица, которые могут получить доступ к интранету или его элементам.
По характеру исполнения злоумышленные действия делятся на три вида:
1)	действия, не связанные с проникновением исполнителей в помещения, где расположены компоненты интранета;
2)	действия с единичными проникновениями исполнителей в помещения:
•	открытые - под видом посетителей, сотрудников коммунальных служб (уборщики, водопроводчики, телефонисты, электрики) и т. п.;
•	негласные - в выходные дни или ночью;
3)	действия, которые предусматривают наличие исполнителей в среде сотрудников, клиентов или поставщиков оборудования, постоянно работающих в помещениях, а также постоянного обслуживающего персонала.
Некоторые компьютерные преступления сочетают сразу несколько видов злоумышленных действий. Например, агент из постоянного обслуживающего персонала проводит разведку и добывает дубликаты ключей или кодовых комбинаций замков помещений, документацию, информацию о системе защиты; негласное посещение специалистов позволяет получить пароли доступа к интранету, а само злоумышлен
3. Уязвимость открытых систем на примере интранета
145
ное действие по уничтожению, искажению или копированию информации выполняется извне.
Причин, позволяющих злоумышленникам реализовывать свои нападения на открытые сети, существует очень много. Программное и аппаратное обеспечение, создаваемое людьми, всегда имеет ошибки и уязвимости. Системные администраторы и программисты никогда не могут отследить и исключить все возможные сетевые проблемы. Нарушителю же для осуществления атаки часто достаточно найти хотя бы одну лазейку, позволяющую ему проникнуть внутрь сети, а далее с помощью специальных средств расширить эту зону проникновения для доступа к интересующим его информационным или сетевым ресурсам.
Действия злоумышленников часто достигают цели в связи с тем, что в подавляющем большинстве организаций эксплуатируются однотипные стандартные вычислительные средства (IBM-совместимые компьютеры, локальные сети с одним и тем же ПО, программы автоматизации деятельности, написанные на стандартных языках программирования), которые хорошо документированны, а обнаруженные в них лазейки подробно описаны в Интернете. Простейшие механизмы защиты практически всего ПО легко обходятся. Проблемы создает также и возросшая компьютерная грамотность сотрудников, клиентов и партнеров. И еще одно важное обстоятельство. Безопасность современных сетей - это не только защита от хищений. Отказ от обслуживания клиента или несвоевременное предоставление ему важной информации из-за неработоспособности хранящей ее системы по своим последствиям равноценны потере информации (несанкционированному ее уничтожению).
Опросы, проводимые в организациях, выявили ряд общих проблем, устранение которых позволит повысить защищенность открытых систем. Их можно сгруппировать по основным категориям обслуживающего работу сетей персонала и пользователей этих сетей.
Ошибки, которые чаще всего допускают конечные пользователи:
	открывают приложения к электронным письмам, не проверяя предварительно их содержание или код;
	не устанавливают "заплатки" (patches) - особенно это касается продуктов Microsoft Office, Microsoft Internet Explorer и Netscape;
	устанавливают защиту экранов (screen savers) или компьютерные игры без проверки их защищенности;
	не делают резервные копии и не проверяют их;
	соединяются через модем с телефоном с компьютера, который также подключен к локальной сети.
Ошибки, которые чаще всего допускает руководство организации низшего звена:
	не оценивает стоимости информационных активов и забывает о репутации своей организации;
	разрешает специально не обученным людям поддерживать защиту, не повышает их квалификацию или не создает им условия для самообразования;
	не понимает взаимозависимости защиты информации и проблем бизнеса - оно осознает необходимость лишь физической защиты, но не предвидит последствий нарушения ИБ;
146
Информационная безопасность открытых систем
	не замечает функциональных аспектов защиты - ставит лишь часть "заплат" и думает, что таким образом все проблемы снимаются;
	полагается в основном только на МЭ;
	реагирует на происшествия не оперативно, применяет только краткосрочные меры защиты, в результате чего проблемы через некоторое время возникают снова;
	полагает, что проблема исчезнет сама собой, если ее просто проигнорировать.
Ошибки, которые чаще всего допускают информационные работники:
	соединяются с другими сетями без предварительной подготовительной работы по ее защите и устранению ненужных сервисов и установке "заплаток" для нужных сервисов, где могут существовать лазейки для злоумышленников;
	подключают тестовые системы к другим сетям с паролями и учетными записями по умолчанию;
	не обновляют системы при выявлении в них уязвимостей или выпуске новых версий;
	используют Telnet и другие протоколы без встроенного шифрования для управления системами, маршрутизаторами, МЭ и инфраструктурой открытых ключей;
	раздают пользователям пароли по телефону или заменяют пароли по телефонному звонку или личной просьбе, когда это официально не разрешено;
	не создают или не тестируют резервные копии;
	используют сервисы типа ftpd, telnetd, finger, rpc, mail, rservices, которыми могут воспользоваться и злоумышленники;
	устанавливают МЭ с настройками, допускающими вредоносный и опасный трафик, как входящий, так и исходящий;
	не используют или не обновляют средства обнаружения компьютерных вирусов;
	не обучают пользователей, чего опасаться и что делать, когда они обнаруживают возможную угрозу ИБ интранета организации;
	позволяют необученным людям без соответствующего сертификата быть ответственными за защиту важных систем.
Систематизируем причины, способствующие атакам на открытые системы, следующим образом.
1.	Уязвимость основной архитектуры интранета (клиент-сервер), подразумевающая наличие уязвимостей во всех трех составляющих этой архитектуры - в клиентском и серверном обеспечении и в каналах связи, их соединяющих.
2.	Наличие слабостей в системных утилитах, командах и сетевых сервисах интранет, что рассматривается на примерах Telnet, FTP, NFS, DNS, NIS, World Wide Web, команды удаленного выполнения, Sendmail и электронной почты, а также ряде других утилит.
3.	Наличие слабостей в современных технологиях программирования, используемых при проектировании и функционировании интранета, его базовых механизмов и сервисов.
4.	Ошибки, возникающие при проектировании, реализации и использовании различного ПО, используемого в открытых системах (основными здесь являются, без сомнения, сами ОС и реализации сетевых прокотолов в этих ОС).
5.	Уязвимость для атак сетевыми вирусами.
Рассмотрим перечисленные уязвимости открытых систем более подробно.
3. Уязвимость открытых систем на примере интранета
147
3.3.	Уязвимость архитектуры клиент-сервер
В основе общения по открытым сетям (в том числе и в интранете) лежит технология клиент-сервер. Определений этой архитектуры очень много. Одно из них дано в гл. 1 учебника. Напомним, что в обшем случае это такой способ проектирования ИС, при котором она может быть рассмотрена как совокупность некоторого числа систем двух видов - клиентской и серверной.
Как уже отмечаловь выше, клиентская часть системы инициирует запросы, а серверная обрабатывает запросы и при необходимости генерирует ответы клиенту. В общем случае серверная часть состоит из нескольких элементов - ОС, СУБД, прикладной системы, в которой реализована общая бизнес-логика для всех клиентов. ОС предоставляет необходимые сервисные возможности и программные интерфейсы API для СУБД, которая в своей БД обрабатывает и выполняет запросы прикладной системы.
Кроме высокого быстродействия и надежности, архитектура клиент-сервер дает много преимуществ и в части технического обеспечения. Во-первых, сервер оптимизирует выполнение функций обработки данных, что избавляет от необходимости оптимизации рабочих станций. Рабочая станция может быть укомплектована не очень быстрым процессором, и тем не менее сервер позволит быстро получить результаты обработки запроса. Во-вторых, поскольку рабочие станции не обрабатывают все промежуточные данные, существенно снижается нагрузка на сеть.
В зависимости от реализации прикладного уровня принято разделять классическую (или двухзвенную) и многозвенную архитектуру клиент-сервер [42]. В первом случае имеется выделенный сервер, который полностью обрабатывает запросы некоторого числа клиентов. Типичным примером такого сервера является сервер БД. Уровень приложений отсутствует или существует, но в нем реализована минимальная логика работы. При этом бизнес-логика целиком реализуется на стороне клиента системы. Такой подход требует высоких аппаратных затрат для оборудования сервера. Также должна обеспечиваться бесперебойная работа самого сервера, что требует очень серьезного подхода к его администрированию и разработке ПО для него.
Чтобы устранить эти и некоторые другие недостатки, была создана многозвенная модель. В этом случае существует несколько серверов, которые дифференцируются по своим функциям, причем каждый из них может быть как сервером, так и клиентом. Обычно эти промежуточные серверы называются серверами приложений, так как с ними взаимодействует прикладное ПО. Эти серверы обслуживают ограниченное число различных запросов, которые определяются необходимостью работы конкретных приложений. В сложной системе серверы приложений маршрутизируют свои запросы к разным главным серверам, оптимально распределяя их загрузку. Одним из примеров многозвенной архитектуры может служить веб-сервер, который используется для доступа клиентов к БД с помощью веб-браузера. Сервером приложений является сам веб-сервер, а главным сервером служит сервер БД. Выбирать многозвенную архитектуру следует в тех случаях, когда в системе присутствует большое число клиентов, система должна легко масштабироваться, возможны частые изменения логики функционирования системы и т. п.
Самым распространенным примером многозвенной архитектуры является трехзвенная модель. Уровень приложений реализован в виде отдельного элемента, где за
148
Информационная безопасность открытых систем
ключена бизнес-логика. Ее необходимые элементы могут использовать клиенты. В ОС семейства Windows Server 2003 для оптимизации работы серверов приложений применяется динамическая балансировка сетевой нагрузки (Network Load Balancing), которая автоматически распределяет клиентские запросы по равноценным объектам на нескольких машинах, и программная кластеризация для серверов приложений со встроенным балансированием.
В современных ИС, построенных в архитектуре клиент-сервер, обычно выделяют три уровня:
	уровень представления (реализующий функции ввода и отображения данных);
	прикладной уровень (отвечающий за универсальные сервисы, а также функции, специфичные для определенной предметной области);
	уровень доступа к информационным ресурсам (выполняющий фундаментальные функции хранения и управления информационно-вычислительными ресурсами).
Связь между уровнями обеспечивает менеджер транзакций и коммуникаций. Применение технологий Интернета/интранета внесло свои изменения в эту классическую схему, расположив на уровне представления универсальный клиент - вебнавигатор (возможно, пополненный прикладными апплетами) и возложив функции информационного концентратора (которые целесообразно объединить с обязанностями менеджера транзакций и коммуникаций) на веб-сервер.
Клиентские рабочие места связываются с веб-сервером и с локальными и глобальными сетями. Аппаратной платформой клиентских систем служат как полнофункциональные компьютеры (стационарные и/или мобильные), так и более простые коммуникаторы.
Серверные системы большинства организаций разнесены по нескольким производственным площадкам, соединенным, как правило, каналами связи общего пользования. С точки зрения пользователей такая разнесенность незаметна, поскольку они взаимодействуют с веб-сервером, однако с точки зрения защиты данное обстоятельство весьма существенно. Программная конфигурация клиентских рабочих мест не является жесткой. Ее могут динамически пополнять апплеты или иные активные агенты, получаемые по сети.
Угрозы в сетевой среде можно разделить на следующие виды:
	прослушивание сети;
	изменение корпоративных потоков данных;
	воздействие на инфраструктурные сетевые сервисы;
	подделка сетевых пакетов;
	генерация и посылка аномального трафика (пакетов);
	отказ от совершенных действий.
Прослушивание сети может предприниматься злоумышленниками для достижения следующих целей:
	перехвата пересылаемых сведений;
	перехвата аутентификационной информации;
	анализа трафика.
Изменение корпоративных потоков данных влечет за собой следующие нарушения безопасности:
	кражу, переупорядочение, дублирование информации;
	изменение и вставке собственных данных (нелегальный посредник).
3. Уязвимость открытых систем на примере интранета	149
Воздействие на инфраструктурные сетевые сервисы означает:
	вмешательство в работу сервиса имен;
	изменение маршрутов корпоративных потоков информации.
Подделка сетевых пакетов может принимать следующие формы:
	подделка адресов;
	перехват соединений;
	имитация работы других серверов.
Генерация и посылка аномальных пакетов представляют собой атаки на доступность, получившие в последнее время относительно широкое распространение.
Наконец, отказ от совершенных действий - это угроза прикладного уровня, она реальна в первую очередь в силу распределенности систем клиент-сервер.
Список наиболее очевидных угроз в архитектуре клиент-сервер выглядит следующим образом:
	пассивный перехват передаваемых запросов;
	модификация (активный перехват) передаваемых запросов;
	пассивный перехват ответов клиенту;
	модификация ответов клиенту;
	выдача злоумышленником себя за определенный сервер;
	выдача злоумышленником себя за определенного клиента;
	перегрузка сервера выдачей большого числа случайных запросов, что может привести к отказу обслуживания новых клиентов;
	случайные сбои и ошибки функционирования аппаратуры и программных элементов сервера;
	злоумышленные действия зарегистрированных клиентов;
	другие виды атак на ПО сервера.
Сформулируем основные причины появления этих угроз. К ним в первую очередь можно отнести следующие:
	отсутствие гарантии конфиденциальности и целостности передаваемых данных;
	недостаточный уровень проверки участников соединения;
	недостаточная реализация или некорректная разработка политики безопасности;
	отсутствие или недостаточный уровень защиты от несанкционированного доступа (антивирусы, контроль доступа, системы обнаружения атак);
	существующие уязвимости используемых ОС, ПО, СУБД, веб-систем и сетевых протоколов;
	непрофессиональное и слабое администрирование систем;
	проблемы при построении межсетевых фильтров;
	сбои в работе компонентов системы или их низкая производительность;
	уязвимости при управлении ключами.
Защите подлежат все составляющие архитектуры клиент-сервер:
1) хосты: клиент - его аппаратная платформа, базы данных и ПО (в том числе и ОС) - и сервер - его аппаратная платформа, средства администрирования, управления передачей данных и другое ПО;
2) оборудование и линии связи, соединяющие клиентов и серверы.
Как уже отмечалось выше, хостом или узлом в компьютерной сети обычно называют устройство, выполняющее функции поддержки этой сети и имеющее свой соб
150	Информационная безопасность открытых систем
ственный адрес (в IP-сети как основы интранета имеется в виду IP-адрес). Хостом может быть сервер, клиент, маршрутизатор, устройство со средством защиты и т. п.
Выделим основные причины уязвимости хостов интранета.
	Открытость Интернета, свободный доступ к информации по организации сетевого взаимодействия, протоколам и механизмам защиты.
	Наличие ошибок в ПО, ОС и утилитах, которые открыто публикуются в сети.
	Разнородность используемых версий ПО и ОС, которые совместно не могут обеспечить хорошую защиту хоста.
	Сложность организации защиты межсетевого взаимодействия между отдельными хостами.
	Ошибки конфигурирования систем и средств защиты, устанавливаемых на хостах;
	Неправильное или ошибочное администрирование систем, установленных на хостах.
	Несвоевременное отслеживание и выполнение рекомендаций специалистов по защите и анализу случаев вторжения для ликвидации лазеек и ошибок в ПО.
	"Экономия" на средствах и системах обеспечения безопасности или полное их игнорирование.
	Умолчание о случаях нарушения безопасности своего хоста или сети.
В интранете с неопределенной ПБ при подключении к открытым сетям часто присутствуют хосты со многими интерфейсами (multi-homed hosts). Неправильно сконфигурированные МЭ и недостаточная внутренняя сегментация облегчают атаку.
Незащищенные хосты с сетевыми интерфейсами, активными для нескольких сетей, вообще не нужно даже взламывать. Злоумышленник запускает программу finger, разрешающую сбор некоторой информации в интранете. Программа собирает данные о пользователях, хостах и т. д., что помогает ему выявить уязвимые хосты. После применения finger к root@host, bin@host и daemon@host часто определяется и ОС хоста.
Для понимания дальнейшего изложения кратко поясним термин "демон”, который будет и далее часто встречаться в учебнике. Это служебные программы в Unix-системах, которые пользователь напрямую вызвать не может, но они работают всегда, "прослушивая" каждый свои порты и обслуживая входящие запросы. При открытии или активации некоторых из таких портов для установления связи демоны инициируют сеанс связи. Среди подобных программ наиболее известны демоны FTP, Telnet- и веб-служб. Например, демон веб-сервера (HTTPD) - это программа, обычно прослушивающая ТСР-порт 80 и воспринимающая запросы по протоколу HTTP. Демон веб-сервера обрабатывает каждый HTTP-запрос и возвращает в ответ вебстраницу.
Мероприятия по защите хостов проводятся для предотвращения в первую очередь атак, цель которых - перехват данных, "отказ в обслуживании" или проникновение злоумышленника в ОС. Перечислим наиболее простые и в то же время действенные меры.
	Запретить обработку ICMP Эхо-запросов, направленных на широковещательный адрес.
	Запретить обработку ICMP-сообщений Redirect, Address Mask Reply, Router Advertisement, Source Quench.
3. Уязвимость открытых систем на примере интранета
151
	Если хосты интранета конфигурируются динамически сервером DHCP, использовать на DHCP-сервере таблицу соответствия МАС- и IP-адресов и выдавать хостам заранее определенные IP-адреса.
	Отключить все ненужные сервисы TCP и UDP, кроме явно необходимых (это означает перевод соответствующего порта из состояния LISTENING в CLOSED).
	Если входящие соединения обслуживаются демоном inetd, то использовать оболочки TCP-wrappers или заменить inetd на демон типа xinetd или tcpserver, позволяющие устанавливать максимальное число одновременных соединений, список разрешенных адресов клиентов, выполнять проверку легальности адреса через DNS и регистрировать соединения в лог-файле.
	Использовать программу типа tcplogd, позволяющую отследить попытки скрытного сканирования (например, полуоткрытыми соединениями).
	Использовать статическую ARP-таблицу узлов сети.
	Применять средства зашиты для используемых на хосте прикладных сервисов.
	Использовать последние версии и обновления ПО, следить за бюллетенями по безопасности, выпускаемыми производителями и исследовательскими центрами.
Средства защиты клиент-серверных технологий - это средства, предназначенные для использования в таких системах клиент-сервер, как доступ к БД, системы банк-клиент и т. п., и имеющие в своей основе принцип раздельного функционирования систем обработки запросов и систем криптографической защиты информации. Для защиты систем клиент-сервер наиболее важными представляются следующие средства:
	аутентификация;
	разграничение доступа;
	межсетевое экранирование;
	шифрование;
	контроль целостности.
Защита в двух указанных типах архитектур клиент-сервер различается. В первом случае основные средства безопасности должны помешаться на сервере, обладать повышенной отказоустойчивостью и иметь возможность обслуживать большое число клиентов. На клиентском месте средства безопасности в основном не должны допускать проникновение защищаемой информации во внешний мир, а также обеспечивать проверку подлинности сервера. В многозвенной архитектуре средства безопасности должны быть размещены на серверах приложений, а в случае необходимости -на главных серверах (если каналы связи между различными серверами проходят по физически незащищенной зоне). Часто удобно создавать отдельно выделенный сервер безопасности как специальный тип сервера приложений (этот тип приложений будет рассмотрен далее).
Открытые системы клиент-сервер подкупают администраторов ИС исключительно простым доступом к корпоративной информации, но настораживают сложностью решения задач защиты данных в связи с разнородностью вычислительных компонентов - аппаратных платформ, ОС, СУБД и прикладного ПО [43]. Когда закрытая хост-система интегрируется с интранетом и серверами БД, ее пользователи страдают не столько от недостатка средств защиты, сколько от их избытка и несовместимости. В дополнение к собственным средствам защиты для мейнфреймов появляются системы зашиты мониторов транзакций, интрасетей и серверов БД. В таких условиях
152
Информационная безопасность открытых систем
был бы весьма эффективен продукт, выполняющий функции "зонтика безопасности” над всей компьютерной системой. К сожалению, подобного продукта на рынке пока нет.
Проблема не только в том, чтобы добиться согласованной работы средств защиты различных звеньев, но и упростить жизнь рядовых пользователей, дабы не заставлять их в поисках нужных данных пробираться через множество заградительных кордонов.
В распределенных вычислительных средах, в отличие от централизованных, решение проблемы безопасности усложняется, что обусловлено рядом факторов. РВС имеет несколько точек входа, через которые осуществляется доступ к данным. Это могут быть файл-серверы, рабочие станции и серверы БД. Чем больше в системе таких входов, тем острее проблема безопасности. Открытая архитектура систем клиент-сервер предполагает, что пользователи в пределах своих полномочий имеют возможность делать с БД все, что угодно, т. е. не только читать данные, но и модифицировать ее структуру, дописывая новые таблицы, хранимые процедуры и т. п.
Уровень защиты всей системы определяется степенью защиты ее самого уязвимого звена, которым, как правило, являются включенные в сеть персональные компьютеры. Многие производители СУБД, стараясь облегчить жизнь конечных пользователей, перекладывают функции контроля доступа к данным на ОС. Основная идея сводится к минимизации средств защиты в случае доступа к данным с Unix-машины, исходя из того, что в ОС Unix реализована надежная защита информации.
РВС нередко состоит из нескольких БД расположенных на разных серверах. БД каждого сервера, являясь составной частью одной общей БД, в то же время функционирует самостоятельно и должна иметь свой собственный механизм безопасности.
Бывает, что данные из одной таблицы хранятся на разных физических устройствах, т. е. особо важная информация может быть фрагментированна. Здесь возможны два варианта: информация хранится либо по строкам, либо по столбцам. Если злоумышленник доберется до части данных, то, во-первых, есть вероятность, что он не сможет из них извлечь полезных для себя сведений, и, во-вторых, в случае своевременного обнаружения его действий у администратора есть возможность защитить от него оставшиеся фрагменты данных. Маршрут доступа к данным программируется посредством задания связей между хранимой по фрагментам информации: указываются реквизиты пользователя (регистрационное имя и пароль), тип сетевого протокола и имя БД. К сожалению, все эти параметры приходится описывать в тексте сценариев. Чтобы засекретить указанную информацию, пароли можно хранить в словаре данных в зашифрованном виде.
Наличие нескольких внутренних БД в РВС, с одной стороны, усложняет проблему безопасности, а с другой - упрощает ее. Поскольку любая БД администрируется автономно, для каждой из них можно реализовать свой собственный способ защиты. Кроме того, в такой архитектуре легко изолировать и обслуживать конфиденциальную информацию. Когда злоумышленник взламывает защиту БД, он получает доступ к содержимому только одной БД, а не ко всей системе в целом.
Для планирования общей системы защиты в распределенной среде полезно наметить уровни обороны. Чтобы добраться до данных, например, с помощью штатных программ администрирования, пользователю необходимо сначала попасть в компьютер (уровень защиты рабочей станции), потом в сеть (сетевой уровень защиты), а уж
3. Уязвимость открытых систем на примере интранета
153
затем на сервер БД. При этом оперировать конкретными данными пользователь сможет лишь при наличии соответствующих прав доступа (уровень защиты СУБД). Для работы с БД через клиентское приложение придется преодолеть еще один барьер -уровень защиты приложения.
Система защиты должна предоставлять разные уровни доступа к данным: от самого простого (и распространенного), когда всем уполномоченным пользователям предоставляется возможность чтения всех таблиц БД с неконфиденциальной информацией, до наиболее сложного, при котором доступ к данным организован на уровне отдельных строк или столбцов таблиц. Между двух полюсов лежат промежуточные уровни: выборочное чтение и выборочная модификация. В первом случае пользователи могут только просматривать, а во втором - просматривать и редактировать записи из ограниченного списка таблиц, который заранее определяется администратором системы.
Какие же средства обеспечения безопасности есть в арсенале администратора системы клиент-сервер?
Во-первых, это разнообразные коммерческие продукты третьих фирм.
Во-вторых, это встроенные возможности СУБД, которые администратор может и должен использовать в целях зашиты информации. Их ценность в том, что контроль доступа происходит постоянно, а не только в момент загрузки приложения. Контроль доступа к БД может быть полностью реализован на сервере. Клиентское приложение просто считывает пароль пользователя и отсылает его на сервер. Далее СУБД по своим внутренним таблицам пользователей проверяет, имеет ли право данный пользователь работать в БД. В случае положительного ответа формируется соединение с рабочей станцией, в противном случае выдается предупреждение и связь с сервером не устанавливается. В крупных ИС число таблиц может достигать нескольких сотен, и задавать права доступа по всем таблицам для каждого пользователя утомительно. Этот процесс упрощается за счет функций предоставления прав доступа группам пользователей с последующей корректировкой индивидуальных прав. Принадлежность пользователя к конкретной группе определяется типом выполняемых им функций, или ролей, в системе (например, группа разработчиков, менеджеров, операторов, участников тестирования). К сожалению, во многих СУБД минимальным элементом данных, для которого возможен контроль доступа, является таблица. На практике же часто требуется контролировать доступ по отдельным записям или полям. В этом случае проблему приходится решать либо на уровне приложения, например с помощью табличных фильтров, либо за счет модификации структуры БД путем нормализации таблиц, либо комбинируя оба способа.
Третье решение - применение средств защиты на уровне приложений - наиболее сложный и дорогой вариант, так как реализовать его может только сам разработчик приложения. Этот метод дает более строгий контроль доступа к данным, поскольку позволяет заложить в систему хитроумные алгоритмы всевозможных проверок, отличные от стандартных, хорошо известных злоумышленникам.
Некоторые разработчики коммерческих приложений вместе с основными продуктами поставляют собственные программы администрирования своих же приложений. При этом администратору системы не нужны внешние программы администрирования, так как вся необходимая информация (списки пользователей, их пароли и права доступа) контролируется упомянутыми утилитами. Средствами утилиты админист
154
Информационная безопасность открытых систем
рирования, которой известна структура меню курируемого приложения, можно открыть или закрыть для его пользователей в соответствии с их ролями соответствующие пункты меню. На уровне интерфейса запрещенные пункты меню отмечаются другим цветом или вообще отсутствуют.
Если с помощью встроенных средств администрирования СУБД контроль доступа на уровне отдельных записей или полей таблиц обеспечить не удается, то это можно сделать на уровне административной утилиты, настроив фильтры типа пользова-тель/табличный параметр, которые будут накладываться на таблицы во время их индикации в основном приложении.
Чтобы обеспечить контроль целостности структуры БД, прикладная система или утилита администрирования может проверить текущее состояние БД и сравнить его с эталоном (аналогом контрольной суммы), характеристика которого жестко "зашита" в код приложения. При обнаружении несовпадения в аудиторском журнале будет сделана соответствующая запись или приложение само перестанет работать. Например, легко подменить стандартную процедуру одноименной новой, которая будет делать то же, что и старая, плюс дополнительные функции, полезные хакеру.
На прикладном уровне удобно отслеживать также и те ограничения, которые накладывает поставщик ПО, продавая конкретную конфигурацию системы. Типичный вариант: число одновременно работающих пользователей не должно превышать указанного в лицензии.
Особую роль играют аудиторские журналы, но не те, которые ведутся самой СУБД, а собственные журналы приложения, где фиксируются ошибки и сообщения прикладной системы, а также информация обо всех действиях пользователей. Анализ этих журналов позволяет произвести статистический учет ошибок, установить, какие функции системы пользуются наибольшей популярностью, составить профиль активности пользователей (с какими данными они работают, сколько времени на это тратят и т. д.).
Наконец, на прикладном уровне можно реализовать традиционные защитные мероприятия, касающиеся процедуры регистрации пользователей, работы экранных заставок и блокираторов клавиатуры.
И четвертый подход - реализация централизованных систем защиты. Программы управления безопасностью в РВС - мониторы безопасности - используют глобальные таблицы безопасности (ГТБ), в которых хранятся пользовательские пароли для доступа ко всем узлам системы. Если пользователь правильно вводит первый пароль, от ввода остальных он освобождается. Всю работу за него выполняет монитор, который следит за тем, к какой подсистеме обращается пользователь, выбирает нужный пароль из таблицы и передает его на вход соответствующей подсистемы. В сложных сетевых средах для реализации процедур однократной регистрации применяются также доверительные отношения между серверами разных доменов.
Самый простой и распространенный способ - это централизованный контроль средств безопасности, впервые реализованный в продуктах RACF и ACF2 и позднее заимствованный другими программами. Суть его в том, что для всех элементов РВС используется единый пароль, который после ввода или замены тиражируется по всем узлам системы. Недостаток этой схемы в следующем: при "зависании" процессора, на котором работает процедура тиражирования, блокируется работа всей системы.
3. Уязвимость открытых систем на примере интранета
155
Кроме того, если кто-то сумеет перехватить (дешифровать, угадать) пароль на одном узле, то получит свободный доступ к системе в целом.
Другой, более надежный, но и более сложный в реализации способ заключается в том, что ГТБ доступны всем подчиненным системам. В результате можно отказаться от унификаций паролей на всех подсистемах и контролировать доступ ко всем ресурсам из любого узла. При таком подходе администратор только раз настраивает пароли пользователей для всех уровней (сетевого, ОС и сервера БД). Эти первичные пароли запоминаются в ГТБ и затем употребляются монитором безопасности, сопровождающим пользователя в его перемещении по узлам РВС. В дальнейшем пароли каждого уровня не требуется менять вручную, поскольку они автоматически генерируются имеющимися на более низких уровнях подсистемами защиты. Обновленные пароли снова передаются "наверх" в ГТБ. Таким образом, на всех узлах системы действуют уникальные пароли, которые сгенерированы машинным способом и с трудом поддаются подбору. Несмотря на то что машинные пароли на практике никто не вводит вручную, системы защиты каждого уровня все же могут администрироваться индивидуально, а не только из центрального пункта. Недостаток описанной схемы заключается в том, что сбой централизованной системы зашиты, работающей на выделенном процессоре, блокирует доступ всех пользователей к системе в целом. Для борьбы с этой проблемой приходится прибегать к "горячему" резервированию, т. е. хранить копии таблиц безопасности на резервной машине. В этом случае отказ одного процессора будет активизировать работу другого.
3.3.1.	Конфигурация системы
Ошибки в конфигурации системы, также очень часто являющиеся причинами успешности атак на открытые системы, можно классифицировать следующим образом [39].
1.	Конфигурации по умолчанию. Большинство систем поставляется покупателям с конфигурациями, установленными по умолчанию и облегчающими использование систем. К сожалению, "облегчающие использование" одновременно означает и "легко взламываемые". Практически любой компьютер, поставляемый с ОС Unix или Windows, может быть легко взломан за счет установок по умолчанию. Если после установки системы эти значения не менялись, то система с большей долей вероятности окажется взломанной.
Во многих ОС имеются специфические имена пользователей. Например, в Unix-системах всегда имеется пользователь root, на VMS - system, в Netware - supervisor. Эти пользователи создаются во время инсталляции системы и являются пользователями по умолчанию. Они могут также быть созданы без пароля или с одним и тем же паролем для каждой инсталляции. Поэтому важно, чтобы их пароли были впоследствии изменены.
Еще пример имени пользователя, задаваемого при установке системы -Administrator для Windows NT и bin для некоторых ОС Unix. Хотя при обычных условиях в случае попытки войти в систему с использованием такого имени можно получить лишь информацию о версии ОС, некоторые реализации FTP позволяют пользователю с именем bin прочитать файл паролей.
Злоумышленник может также попробовать войти в систему с гостевым паролем: quest, demo, visitor и т. п.
156
Информационная безопасность открытых систем
2.	Ленивые администраторы. Огромное количество компьютеров сконфигурировано с пустым паролем root/administrator. Причина в том, что администраторы слишком ленивы для того, чтобы сразу сконфигурировать компьютер. Они хотят быстрее включить и запустить его с минимумом действий. К сожалению, позднее они устраняют эту проблему с паролем, позволяя нарушителям легко получать несанкционированный доступ к компьютеру. Одна из первых вещей, которую сделает нарушитель при проникновении в сеть, заключается в том, что он просканирует все компьютеры на наличие пустых паролей.
3.	Создание лазейки. Фактически все программы можно сконфигурировать для запуска в незащищенном режиме. Временами администраторы неумышленно открывают уязвимости в компьютере. Многие руководители рекомендуют администраторам выключить все, в чем нет необходимости на компьютере. Отметим, что системы анализа защищенности могут, как правило, находить эти "дыры" и уведомлять администратора.
4.	Доверенные связи. Нарушители часто "прыгают по островкам" по всей сети, используя доверенные связи. Доверенным по отношению к какому-либо хосту называется сетевой компьютер, доступ на который пользователю с данного хоста разрешен без его аутентификации и идентификации с помощью сервисов удаленного доступа. Введение доверенных отношений, например в Unix, реализуется в файлах —user/.rhosts, /etc/host.equiv, ~user/.shosts (при установленном SSH). К этим файлам обращаются демоны in.rlogind, in.rshd, sshd и т. д. В файлах оговорены пары "компьютер - пользователь", которые могут входить в систему минуя схему аутенфикации. Пара '+ +' позволяет вход любого пользователя с любого компьютера без пароля. Наличие файла /.rhosts {+ +} предоставляет возможность войти в систему как root или smtp (uid=0, gid=O). Ограничение на вход пользователя root только с консоли не запрещает удаленный вход пользователя smtp, a /usr/bin/.rhosts дает вход для пользователя bin. Даже специальные программы - оболочки сервисов TCP-wrappers и файлы hosts.equiv, .rhosts и .shosts не уберегут сеть от атак на основе злоупотребления доверием между хостами. Например, если атакующий использует "дыры" скриптов CGI для просмотра файла hosts.allow, то он может установить, с какого узла *.trusted.com разрешены все соединения с портами ftp и telnet. После этого он пытается получить доступ к любому хосту trusted.com.
Доверенные отношения могут быть конфигурированы и между доменами, управляемыми, например, Microsoft Windows NT/2000/Server 2003. Эти доверенные отношения позволяют доверяемому домену (trusted domain) обращаться к ресурсам на доверяющем домене (trusting domain). Windows 2000 и NT содержат уязвимость в этой особенности, которая позволяет нападающему с административными привилегиями на доверяемом домене поднять привилегии на любом доверяющем домене. Уязвимость позволяет для доверенного домена связать любой идентификатор защиты с любой группой защиты в доверяющем домене. Злонамеренный администратор или нападающий, получивший административные привилегии на доверенном домене, может эксплуатировать эту уязвимость, чтобы получить управление над доверяемым доменом. Например, доверенный домен может связывать местного (в пределах доверенного домена) пользователя с группой администратора на доверяемом домене. Пользователь тогда будет иметь привилегии группы администратора в пределах доверяющего домена.
3. Уязвимость открытых систем на примере интранета
157
3.3.2.	Уязвимость операционных систем
Внутренняя структура современных ОС чрезвычайно сложна, поэтому проводить адекватную политику безопасности и защищать ее гораздо труднее, чем в случае СУБД. Это обусловлено большим числом различных типов защищаемых объектов и информационных потоков в современных ОС. Операционная система имеет сложную внутреннюю структуру и поэтому задача построения адекватной политики безопасности для ОС решается сложнее, чем для СУБД.
Наилучшие результаты атак достигаются при использовании самых простых методов взлома через выявленные лазейки в защите ОС - чем проще алгоритм атаки, тем больше вероятность того, что атака пройдет успешно. Возможность практической реализации той или иной атаки на ОС в значительной мере определяется архитектурой и конфигурацией ОС. Но есть атаки, которые могут быть применены практически к любой ОС.
1.	Кража пароля:
	подглядывание за легальным пользователем, когда тот вводит пароль (даже если во время ввода пароль не высвечивается на экране, его можно легко узнать, следя за перемещением пальцев пользователя по клавиатуре);
	получение пароля из файла, в котором он был сохранен "ленивым" пользователем, не желающим каждый раз затруднять себя вводом пароля при сетевом подключении (как правило, такой пароль хранится в незашифрованном виде);
	поиск пароля, записанного на календаре, в записной книжке или на оборотной стороне компьютерной клавиатуры (особенно часто подобная ситуация встречается, когда администратор заставляет пользователей применять длинные, трудно запоминаемые пароли);
	кража внешнего носителя парольной информации (дискеты или электронного ключа, на которых хранится пароль пользователя для входа в ОС);
	перехват пароля программной закладкой.
2.	Подбор пароля:
	полный перебор всех возможных вариантов пароля (метод "грубой силы");
	оптимизированный перебор вариантов пароля: по частоте встречаемости символов, с помощью словарей наиболее часто встречающихся паролей, с привлечением знаний о конкретном пользователе, с использованием сведений о существовании эквивалентных паролей - тогда из каждого класса эквивалентности опробуется всего один пароль, что значительно сокращает время перебора.
3.	Сканирование "жестких" дисков компьютера: злоумышленник последовательно пытается обратиться к каждому файлу, хранимому на "жестких" дисках интранета (если объем дискового пространства достаточно велик, можно быть вполне уверенным, что при описании доступа к файлам и каталогам администратор допустил хотя бы одну ошибку, в результате чего все такие каталоги и файлы будут прочитаны взломщиком); чтобы скрыть следы, злоумышленник может выступать под чужим именем - например, под именем легального пользователя, чей пароль ему известен.
4.	Сборка "мусора" с дисков компьютера и в оперативной памяти: если средства ОС позволяют восстанавливать ранее удаленные объекты, злоумышленник может получить доступ к объектам, удаленным другими пользователями, просмотрев содержимое их "мусорных корзин".
158
Информационная безопасность открытых систем
5.	Превышение полномочий, т. е. используя ошибки в ПО или в администрировании ОС, злоумышленник получает полномочия, превышающие те, которые предоставлены ему согласно действующей ПБ:
	запуск программы от имени пользователя, имеющего необходимые полномочия, или в качестве системной программы (драйвера, сервиса, демона и т. д.), выполняющейся от имени ОС;
	подмена динамически загружаемой библиотеки, используемой системными программами, или изменение переменных среды, описывающих путь к таким библиотекам;
	модификация кода или данных подсистемы защиты ОС.
6.	Отказ в обслуживании (целью этой атаки является частичный или полный вывод ОС из строя):
	захват ресурсов, т. е. программа злоумышленника производит захват всех имеющихся в ОС ресурсов, а затем входит в бесконечный цикл;
	бомбардировка запросами - программа злоумышленника постоянно направляет ОС запросы, реакция на которые требует привлечения значительных ресурсов интранет;
	использование ошибок в ПО или администрировании.
Успех реализации того или иного алгоритма атаки на практике в значительной степени зависит от архитектуры и конфигурации конкретной ОС - объекта атаки.
Если ПО интранета не содержит ошибок и если ее администратор строго соблюдает адекватную политику безопасности, рекомендованную разработчиками ОС, то все перечисленные виды атак являются малоэффективными. Дополнительные меры, которые следует предпринять для повышения степени безопасности функционирования интранета, в значительной степени зависят от конкретной ОС, под управлением которой работает данный интранет. Однако приходится признать, что независимо от принятых мер полностью устранить угрозу взлома интранета на уровне ОС невозможно. Поэтому ПБ нужно строить так, чтобы преодоление рубежа защиты, создаваемого средствами ОС, не позволило злоумышленнику нанести серьезный ущерб интранету.
Средства защиты, встроенные в ОС, занимают особое место. Их основной задачей является зашита информации, определяющей конфигурацию системы. Так как эти ресурсы находятся на системном уровне, то здесь и будут собраны основные встроенные средства защиты информации. В случае некоторых ОС, например Unix и Solaris, встроенные средства защиты продвинуты на сетевой уровень, а в общем наборе решений, предоставляемых для интранета, присутствуют также инструменты безопасности внешнего уровня. Кроме того, некоторые компоненты в составе ОС, не являясь средствами защиты в классическом смысле, тем не менее существенны. С точки зрения защиты ресурсов самой ОС Solaris, например, предоставляет полный набор средств, решающих задачи защиты. Отличительная особенность ОС Solaris -наличие встроенных средств контроля системных ресурсов (ASET) и средств системного аудита. Кроме того, некоторые сетевые ресурсы, управляемые ОС Solaris, наряду с функционально полезными сервисами, также имеют встроенные средства защиты. В то же время при построении реальной ИС встроенных средств может оказаться недостаточно вследствие, например, неоднородности конфигурации или использования небезопасных сервисов, особенно сетевых.
3. Уязвимость открытых систем на примере интранета
159
Для защиты информационных ресурсов ОС предусмотрено использование следующих основных средств:
	механизмов аутентификации/авторизации;
	механизмов разграничения доступа;
	механизмов мониторинга и аудита;
	криптографических компонентов.
При сравнении этих средств защиты, например, с СУБД, видно, что первые три одинаковы для этих систем и лишь четвертое средство характерно только для ОС, так как оно предназначено для шифрования особо важной системной информации о ее конфигурации.
Специфические риски для ОС можно подразделить на две группы:
1) риски, связанные с неправильной конфигурацией системы и чаще всего возникающие вследствие ошибок или недостаточных навыков ее администратора;
2) риски, связанные с ошибками в ПО (особенно характерно при установке в систему несколько устаревших версий ПО, в которых уже были обнаружены определенные ошибки и о которых публично сообщалось в различных специализированных компьютерных изданиях и на хакерских узлах).
Фирма mi2g [http://www.mi2g.com] провела исследование подверженности ОС общеизвестным уязвимостям и хакерским атакам. Выяснилось, что лидирует здесь Microsoft Windows (подвержена 44 % известных уязвимостей), далее следуют Linux (19 %), BSD (9 %), Sun Solaris (7 %). Compaq Tru64 и Mac OS набрали no 1,9 %, SCO Unix - всего 0,5 %. Из проанализированных mi2g 57 977 хакерских атак 54 % пришлись на Windows, 30 - на Linux, 6 - на BSD и 5 % - на Solaris. Надо отметить, что такое процентное соотношение отражает и распространенность этих ОС.
Еще один интересный факт: по данным исследователей университета Carnegie-Mellon, на 1000 строк кода приходится от 5 до 15 ошибок. Таким образом, можно подсчитать, сколько ошибок потенциально содержит ОС: Windows 2000 - 35-60 млн. строк кода, Windows ХР - 45 млн., Debian GNU/Linux 2.2 - 55 млн. и Linux Red Hat -30 млн.
Хотя все ОС и имеют свои собственные уязвимости, эксперты в области информационной безопасности (институт SANS [http://www.sans.org]) выделяют семь типичных уязвимостей любой ОС. Кратко охарактеризуем их.
I. Установки по умолчанию ОС и приложений. При типовой установке появляется больше сервисов, чем их нужно рядовым пользователям. При этом для ОС происходит установка по умолчанию дополнительных сервисов и соответствующих им открытых портов, через которые атакующий может попасть в систему, а для приложений - установка по умолчанию ненужных программных модулей и скриптов. За этими сервисами и модулями пользователи обычно не следят, и соответственно, не устанавливают для них "заплаток" (patches, патчей), устраняющих уязвимости.
Выявление. Сканеры портов и уязвимостей.
Защита. Удалить все ненужное ПО, отключить ненужные сервисы и закрыть соответствующие порты.
П. Учетные записи без паролей или со слабыми паролями. В системе есть легко подбираемые пароли, встроенные пароли, пароли по умолчанию или учетные записи без паролей.
160
Информационная безопасность открытых систем
Выявление.
1.	Аудит учетных записей (УЗ) и ведение мастер-листа. Проверка паролей на маршрутизаторах, подключенных к Интернету принтерах, копирах и контроллерах.
2.	Разработка процедур добавления-удаления авторизированных УЗ в мастер-лист.
3.	Регулярные проверки мастер-листа.
4.	Запуск средств для взлома паролей типа LC4 (или более современная программа LC5) & Microsoft Personal Security Advisor - Microsoft Windows NT/2000, John the Ripper - Unix, Pandora - Novell.
John the Ripper ("Джек Потрошитель"), возможно, наиболее универсальный из доступных инструментов, предназначенных для взлома паролей. Программа поддерживает шесть разных схем хеширования паролей для Unix и Windows LanMan (используется в NT, 2000 и ХР). Она может использовать специализированный список слов или правил для паролей, основанных на типах символов и их местоположении. Программа работает под управлением 13 различных ОС и поддерживает разные процессоры, включая специальные ускорители для Pentium и RISC-процессоров (для примера можно привести следующее сравнение: FreeBSD MD5 и NT LM DES - количество взломов в секунду отличается для этих двух методов в 200 раз). Воспринимается три различных формата паролей. На самом деле можно взломать любой пароль, описанный в справке (выводится по параметру test), - для этого потребуется переформатировать пароль в вид, обрабатываемый программой. Все вскрытые пароли сохраняются в файле john.pot, представляющем собой текстовый файл, который может пополняться в соответствии с увеличением количества взломанных паролей. Слабые пароли, независимо от схемы шифрования, могут быть вскрыты за время от нескольких минут до одного дня. Сложные пароли могут потребовать недели или месяцы (для ускорения используются подробные файлы словарей с иностранными словами, именами, названиями спортивных команд, научно-фантастическими символами, специфические комбинации из двух и более символов для пароля или распределенная обработка на нескольких компьютерах). Словарь по умолчанию с наиболее часто встречающимися паролями содержится в файле password. 1st. Также можно делать некоторые перестановки в словаре, используя параметр "rules" (правила - это хороший способ повысить производительность подбора паролей). Программа также реализует подбор пароля методом полного перебора (метод "грубой силы"). Переключение в этот режим осуществляется по умолчанию, если в командной строке не задано никаких параметров.
Одно время ОС Windows казалась более привлекательной с точки зрения безопасности паролей, чем Unix. В ней хранится две версии пользовательского пароля. Первая версия называется LanMan (LM), хеш. Вторая версия - это NT-хеш, шифруемый с использованием односторонней функции MD5. Строка LanMan также шифруется, но перед этим пароль разбивается на две части. Пароли в LanMan представлены в шестнадцатеричной записи и содержат 16 байт данных. Последние 8 байт одинаковы для всех паролей длиной более восьми символов. Эта ошибка возникает вследствие того, что содержимое пароля составляет более восьми символов и показывает, что при генерации второй половины шифрованной строки не используется никакой информации о первой половине. Можно сказать, что пароль шифруется на основе двух независимых наборов символов (по 7 каждый). В результате большой пароль из 14 сим
3. Уязвимость открытых систем на примере интранета	161
волов превращается в два коротких по 7 символов. Также LanMan при шифровании игнорирует регистр символов, что резко сокращает время, затрачиваемое на взлом пароля перебором.
LOphtCrack (кратко LC) - это инструмент для взлома паролей с развитым графическим интерфейсом для Windows NT/2000/XP. Попытка "стащить" пароль у Unix-системы обычно требует доступа к файлам /etc/passwd и /etc/shadow (так называемый теневой файл паролей). И тот и другой представляют собой легко читаемый текст. Windows хранит пароли в Security Accounts Manager (SAM) - двоичном файле, который тяжело прочитать без специальных ухищрений. LC не только подбирает пароли: он может извлекать шифрованные строки паролей из SAM-файла локальной или удаленной системы и перехватывать пароли, когда они передаются по сети. Скорость взлома пароля у LC удовлетворительная, но не сравнится с John the Ripper. При этом программа не имеет возможности гибкого изменения правил.
5.	Наличие корректных процедур удаления УЗ.
Защита.
1.	Всем УЗ без паролей дается пароль, или они удаляются, слабые пароли пересматриваются.
2.	Проверка паролей пользователей после замены, например программами, которые запрещают пароли, не соответствующие ПБ:
	Unix: Npasswd (http://www.utexas.edu/cc/unix/software/npasswd/) (SunOS 4/5, Digital Unix, HP/UX, AIX);
	Linux: Cracklib (http://www.users.dircon.co.uk/~crypto/download/) и РАМ-модули;
	Windows NT: Passfilt;
	Windows 2000 c Group Policy;
	Secure Remote Password - механизм для выполнения безопасной аутентификации с помощью пароля и обмена ключами в сети любого типа (http://www-cs-students. Stanford, edu/ ~tj w/ srp/);
	OpenSSH (http: //www.openssh.org/).
3.	Обучение пользователей.
4.	Альтернативные формы аутентификации (например, смарт-карты, биометрия).
III.	Незаконченные или устаревшие копии (Backups). В системе есть неактуальные, непроверенные копии. Отсутствуют политики и процедуры восстановления. Недолжным образом осуществляется физическое хранение копий.
Выявление. Инвентаризация всех важных копий. Анализ рисков и соответствующих угроз для важных копий.
Защита. Еженедельное полное копирование и ежедневное частичное копирование. Хотя бы раз в месяц проверка возможности восстановления информации с копий на специальный тестовый сервер.
IV.	Большое число открытых портов. Порты протоколов ТРС и UDP определены в RFC793 и RFC768 соответственно.
Открытыми должны быть только необходимые порты. Все остальные порты должны быть закрыты.
Выявление. Сканирование всех портов TCP и UDP во всем диапазоне 1-65535. Запуск локально netstat. Запуск внешних сканеров портов типа nmap (для Unix -http://www.insecure.org/nmap/, для NT — http://www.eeye.com/html/Research/Tools/ nmapnt.html), который подробно рассмотрен в гл. 4.
6—2368
162
Информационная безопасность открытых систем
Защита. Определить минимальный набор открытых портов. Закрыть остальные. Отключить/удалить соответствующие сервисы.
Unix - inetd; Isof.
Windows NT/2000 - fport.
Windows XP — netstat с параметром -о.
Для зашиты периметра закрыть следующие порты:
Login-сервисы - telnet (23/tcp), SSH (22/tcp), FTP (21/tcp), NetBIOS (139/tcp), rlogin и т. д. (512—514/tcp).
RPC и NFS - Portmap/rpcbind (111/tcp и udp), NFS (2049/tcp и udp), lockd (4045/tcp и udp).
NetBIOS в Windows NT - 135 (tcp и udp), 137-139 (udp), Windows 2000 - предшествующие порты + 445 (tcp и udp).
X Window - 6000-6255/tcp.
Naming services — DNS (53/udp) для всех компьютеров, которые не являются DNS-серверами, DNS zone transfers (53/tcp), кроме внешних secondaries, LDAP (389/tcp и udp).
Mail - SMTP (25/tcp) для всех компьютеров, которые не являются внешними mail relays, POP (109 и 110/tcp), IMAP (143/tcp).
Веб - HTTP (80/tcp) и SSL (443/tcp) кроме внешних веб-серверов, можно закрыть и НТТР-порты 8000, 8080, 8888/tcp, и т. п.
"Small Services''-порты ниже 20/tcp и udp, time (37/tcp и udp).
TFTP (69/udp), finger (79/tcp), NNTP (119/tcp), NTP (123/udp), LPD (515/tcp), syslog (514/udp), SNMP (161 /tcp и udp, 162/tcp и udp), BGP (179/tcp), SOCKS (1080/tcp).
ICMP - блокировать входящие эхо-запросы (ping и Windows traceroute), исходящие эхо-ответы, сообщения time exceeded и destination unreachable, кроме "packet too big".
Блокировать адреса, типичные для спуффинга (от англ, spoofing).
Блокировать пакеты с набором опций для IP.
Использовать TCP-оболочку (tcpd) и xinetd [http://www.synack.net/xinetd/] для избирательного применения списков управления доступом на уровне служб (для кото-роых это возможно) и регистрировать все события.
V.	Нет фильтрации пакетов на корректность входящего и исходящего адресов. Вследствие этого злоумышленник может применить спуффинг как средство скрытия своего настоящего IP-адреса.
Выявление. Послать спуффинг-пакет и посмотреть, блокирует ли их МЭ или маршрутизатор. Устройство должно создать запись в журнале регистрации с указанием, что такой пакет был блокирован. Проверить работу системы при большом трафике, иначе возможны DoS-атаки. Использовать программы типа nmap для проверки работы системы. Часто проверять систему.
Защита. Правила фильтрации на внешнем маршрутизаторе/МЭ.
1.	Любой входящий пакет не должен иметь адрес источника из списка внутренних адресов и должен иметь адрес назначения внутренней сети.
2.	Любой исходящий пакет должен иметь внутренний адрес как адрес источника и не должен иметь его адресом назначения.
3. Уязвимость открытых систем на примере интранета
163
3.	Любой исходящий или входящий пакет не должен иметь адресом источника или назначения частный адрес или адрес из зарезервированного списка RFC1918 (Ю.х.х.х/8, 172.16.х.х/12 или 192.168.х.х/16 и 127.0.0.0/8).
4.	Блокировать пакеты с набором опций для IP.
5.	Блокировать 0.0.0.0/8; 169.254.0.0/16; 192.0.2.0/24; 224.0.0.0/4; 240.0.0.0/4.
Кроме того, рекомендуется использовать фильтрацию пакетов на уровне ядра, поддержка которой уже стала стандартной для большинства бесплатных ОС Unix (например, ipchains или netfilter для Linux, ipf для BSD).
VI.	Несуществующий или неполный вход в систему. В журналах регистрации (лог-файлах) отражаются не все события в системе. Приходится выбирать между полной переустановкой ОС или риском работать в системе, полностью контролируемой атакуемым.
Выявление. Анализ лог-файлов для всех важных систем.
Защита. Анализ лог-файлов на регулярной основе для всех ключевых систем, а логи должны архивироваться и копироваться. Отправка логов на центральный лог-сервер с неперезаписываемой средой (только так атакующий не подменит лог-файлы и не избежит обнаружения).
VII.	Уязвимость CGI-скриптов. Многие веб-серверы поддерживают скрипты Common Gateway Interface (CGI), обеспечивающие интерактивность на веб-страницах и позволяющие собирать данные и проверять их.
Выявление. Уязвимые скрипты CG1 очень легко выявить и далее получить соответствующие привилегии при работе с веб-сервером.
Защита. Запуск сканера уязвимостей в отношении узла типа CGI scanner Whisker [http://www.wiretrip.net/rfp/] или XSpider.
1.	Удалить все ненужные CGI-скрипты с важных веб-серверов.
2.	Аудит остальных и удаление незащищенных CGI скриптов с других вебсерверов.
3.	Убедиться, что программисты CG1 придерживаются политики безопасности и проверяют длину входящих буферов в CGI-скриптах.
4.	Применять патчи ("заплатки") для известных уязвимостей тех скриптов, которые нельзя удалить.
5.	Проверить, не включает ли CGI-директория любые компиляторы или интерпретаторы.
6.	Удалить скрипт view-source из cgi-bin-директории.
7.	Не запускать веб-серверы с привилегиями администратора или root.
8.	Не конфигурировать поддержку CG1 на веб-серверах, где она не нужна.
После описания типичных уязвимостей можно было бы остановиться на уязвимостях отдельных ОС. Ограничимся лишь недостатками ОС Unix, покольку до сих пор системные администраторы предпочитают ее различным платформам.
Имеется ряд свойственных ОС Unix недостатков, которые часто способствуют атакам. Главная проблема связана с уязвимостью системы управления доступом, где пользователь root наделен административными правами, которые и пытается получить злоумышленник.
Укажем четыре основные причины, которые характеризуют уязвимость ОС Unix (рис. 29) [44]. Во-первых, это демоны, содержащие ошибки. Во-вторых, уязвимости
164	Информационная безопасность открытых систем
SUID/SGID-процессов. В-третьих, излишнее доверие некоторым пользователям. И наконец, в-четвертых, проблемы, связанные с человеческим фактором и выражающиеся в использовании легкоподбираемых паролей и ошибках администрирования системы.
Рис. 29. Причины уязвимости ОС Unix
Для первых двух причин можно выделить три подкатегории:
I)	возникновение различных непредусмотренных ситуаций типа переполнения буфера, неверной обработки сигналов или прерываний, ввода непредусмотренных сходных данных;
2)	наличие "люков" (незадокументированных возможностей) в демонах и процессах;
3)	подмена данных или файлов программами, специальных управляющих переменных или файлов через ссылки и относительные пути.
Также кратко охарактеризуем и семь типичных уязвимостей Unix (в соответствии с видением института SANS). Оговоримся, что ряд из них будет подробнее рассмотрен далее в данной главе учебника.
I. Переполнение буфера в сервисах RPC. Удаленный вызов процедур позволяет выполнять программы с одного компьютера на другом компьютере. Используются для доступа к сетевым сервисам типа NFS и NIS. Выявлено множество уязвимостей.
Выявление. Проверьте, не используется ли три самых уязвимых сервиса RPC: rpc.ttdbserverd; rpc.cmsd; rpc.statd. Чаще всего проблемы связаны с переполнением буфера.
Защита.
1.	Где возможно отключить/удалить эти сервисы для компьютеров, непосредственно подсоединенных к Интернету.
2.	Не забывать о патчах для ОС.
3.	Блокировать RPC-порт (111) на пограничном маршрутизаторе или МЭ.
3. Уязвимость открытых систем на примере интранета
165
4.	Блокировать порты RPC "loopback" 32770-32789 (TCP & UDP).
II. Уязвимость sendmail. Sendmail - это программа, посылающая, получающая и перенаправляющая почту. Атакующий может на свой компьютер получить в ответ на соответствующий запрос файл с паролями и взломать его.
Выявление. Проверка версии sendmail.
Защита.
1. Sendmail регулярно обновлять и ставить "заплатки".
2. Не запускать sendmail в режиме демона (отключить параметр -bd) на компьютерах, которые не являются mail-серверами или mail relays.
III. Слабости BIND. Пакет Berkeley Internet Name Domain (BIND) - распространенный сервис Domain Name System (DNS). Атакующий уничтожает лог и устанавливает средства, обеспечивающие ему административные права. Далее ставятся сканеры и утилиты для удаленного управления. Потом система может стать промежуточным звеном в следующих атаках. Также возможны проблемы с переполнением буфера.
Выявление. Запуск сканера уязвимостей, проверка версии BIND или ручная проверка файлов.
Защита.
1.	Запретить BIND name daemon ("named") на неавторизированных DNS-серверах.
2.	Авторизированные DNS-серверы обновлять до последних версий и устанавливать патчи.
3.	Запускать BIND в режиме непривилегированного пользователя. (Переконфигурировать BIND для смены user-id после связи с портом.)
4.	Запускать BIND в chroot-режиме, т. е. в изолированном собственном окружении с определенными серверными подсистемами, известными как chroot jails.
5.	Запретить замену зон, кроме замены с авторизированных хостов.
6.	Запретить рекурсии и склейку (против атак на DNS cache).
7.	Спрятать строку с версией.
IV. R-команды. Эти команды позволяют получать УД доверяющим друг другу компьютерам без пароля. Основа - доверенные IP-адреса. Если атакующий получит доступ к любому компьютеру из доверенной сети, он получит доступ ко всем машинам, доверенным по отношению к взломанной.
Выявление. Доверенные отношения устанавливаются конфигурированием файлов /etc/hosts.equiv и —/.rhosts. Их нужно проверять.
Защита. Не разрешать доверенные отношения на основе IP. Аутентификация на основе токенов или хотя бы паролей. Ограничивать доступ. Никогда не разрешать файл .rhosts в УЗ root. Использовать команду find регулярно для обнаружения .rhosts, которые могут появиться в других УЗ.
V. LPD (remote print protocol daemon). Демон in.lpd поддерживает сервис обращения пользователей к локальному принтеру. Была ошибка, позволяющая передавать печать с одной машины на другую. И проблема переполнения буфера.
Выявление. Запуск сканера уязвимостей или ручная проверка используемого LPD и его версии.
Защита.
1.	Запретить сервис в /etc/inetd.conf, если не обязательна.
2.	Разрешить noexec user stack, настраиваемый добавлением следующих строк в файл /etc/system и перезагрузиться:
set noexec_user_stack = 1
166
Информационная безопасность открытых систем
set noexec_user_stack_log = 1
3.	Блокировать доступ к сети через порт 515/tcp.
4.	Применить патч.
5.	Использовать TCP-tcpwrappers [http://www.sun.eom/solaris/freeware.html#cd].
VI	. Утилиты sadmind и mountd. Sadmind дает удаленный административный доступ к Solaris-системам. Mountd контролирует доступ к NFS на Unix-хостах. Переполнение буфера позволит атакующим получить права root.
Выявление. Запуск сканеров уязвимостей.
Защита.
1.	Где возможно отключить/удалить sadmind и mountd на компьютерах, подключенных непосредственно к Интернету.
2.	Установить патчи для ОС.
3.	Использовать экспортные связи на основе host/ip.
4.	Установить системы экспорта файлов в режим read-only/no suid, где возможно.
5.	Использовать nfsbug для поиска уязвимостей [http://www.cert.org/ advisories/CA-99-16-sadmind.html, http://www.cert.org/advisories/CA-98.12. mountd.html].
VII. Строки SNMP по умолчанию. Протокол Simple Network Management Protocol (SNMP) используется для мониторинга и администрирования всех сетевых устройств. Основные уязвимости третьей версии этого протокола и методы их устранения перечислены ниже.
1.	Раскрытие информации через отслеживание обмена данными между агентами и управляющей станцией с целью сбора данных устраняется применением шифрования.
2.	"Маскарад" устраняется проверкой происхождения пакетов.
3.	Модификации посредством посылки сообщений для фиктивных операций и в потоке сообщений устраняются проверкой целостности при помощи MD5.
4.	Анализ сетевого трафика - пока не устранен.
5.	Отказ в обслуживании - пока не устранен.
SNMP использует незашифрованную строку "community string" для аутентификации (по умолчанию "public" или "private"). Это позволяет реконфигуриро-вать/отключать устройства удаленно и слушать SNMP-трафик. При работе SNMP используются статистические данные о работе сети и другая информация, включая маршрутизацию. Стандарты (типа RFC 1352, 1446, 1472, 1910) определяют сервисы и механизмы безопасности при передаче управляющей информации, доступе к БД управляющей информации и управляющим обьектам. Сервисами безопасности для SNMP на прикладном уровне являются средства обеспечения конфиденциальности и целостности без установления соединения, аутентификация происхождения данных и контроль доступа. Частично приложения Интернета ориентируются на протоколы управления телекоммуникационными сетями Х.700 с хорошо определенными сервисами безопасности и мерами защиты.
Выявление. Проверить конфигурационный файл на уязвимости: по умолча-нию/пусто/легко подбираемая/скрытая строка.
Защита.
1.	Если SNMP не нужен, запретить его.
2.	Разработать политику для строк как для паролей.
3.	Провести проверку на основе средств snmpwalk и snmpsniff.
3. Уязвимость открытых систем на примере интранета
167
4.	Осуществлять фильтрацию SNMP (порт 161/UDP) на пограничных маршрутизаторах и МЭ.
5.	Где возможно, сделать базы управления информацией (Management Information Base, MIB) открытыми только на чтение.
Для ОС требуется регулярная проверка с целью обнаружения всех несанкционированных изменений и наличия уязвимостей. Это можно осуществлять вручную или с помощью автоматизированных систем анализа защищенности, такие, как широко известный сканер компании Internet Security Systems [http://www.iss.net]. В зависимости от ОС, применяемых в интранете, нужно подобрать соответствующие хорошо зарекомендовавшие себя системы, способные реально помочь администраторам сетей в их сложной повседневной работе.
Согласно исследованиям организации SANS десятью самыми типичными уязвимостями 2003—2004 гг., упорядоченными по снижению частоты их встречаемости в действующих интранетах, для ОС Unix были следующие:
2003 г.
	BIND Domain Name System;
	Remote Procedure Calls (RPC);
•	Apache Web Server;
	General Unix Authentication Accounts with No Passwords or Weak Passwords;
•	Clear Text Services;
	Sendmail;
	Simple Network Management Protocol (SNMP);
•	Secure Shell (SSH);
•	Misconfiguration of Enterprise Services NIS/NFS;
	Open Secure Sockets Layer (SSL)
2004 r.
•	BIND Domain Name System;
	Web Server;
•	Authentication;
	Version Control Systems;
	Mail Transport Service;
•	Simple Network Management Protocol (SNMP);
	Open Secure Sockets Layer (SSL);
	Misconfiguration of Enterprise Services NIS/NFS;
	Databases;
	Kernel
Аналогично для ОС Windows SANS выделяет несколько иные типичные уязвимо-
сти, основанные на особенностях этой системы:
	Internet Information Services (IIS);
	Microsoft SQL Server (MSSQL);
	Windows Authentication;
	Internet Explorer (IE);
•	Windows Remote Access Services;
	Microsoft Data Access Components (MDAC);
•	Windows Scripting Host (WSH);
	Microsoft Outlook and Outlook Express;
•	Windows Peer to Peer File Sharing (P2P);
•	Simple Network Management Protocol (SNMP)
Web Servers & Services;
Workstation Service;
Windows Remote Access Services;
Microsoft SQL Server (MSSQL);
Windows Authentication;
Web Browsers;
File-Sharing Applications;
LSAS Exposures;
Mail Client;
Instant Messaging
168	Информационная безопасность открытых систем
Сознавая потребность в более защищенных ОС, производители систем стали предлагать так называемые доверенные версии ОС (Trusted OS). В настоящее время существует ряд коммерческих производителей таких систем. Argus Systems Group, Inc. производит PitBull.comPack suite для Solaris 7. Готовятся версии для Solaris 8, AIX, UnixWare и Linux для 32- и 64-битовых архитектур. Hewlett Packard, занимающая лидирующую позицию на рынке доверенных ОС, предлагает VVOS (Virtual Vault OS), которая функционирует на аппаратном обеспечении HP [http://www. jetinfo.ru/2001/7/1/ articlel.7.200156.html]. Эта ОС является специальной версией ОС HP UX, соответствующей максимально возможному для коммерческих продуктов уровню безопасности В1 "Оранжевой книги".
Компьютеры Macintosh фирмы Apple [http://www.apple.com] имеют построенную на открытых стандартах базовую ОС и содержат встроенный Х-сервер. ОС этих компьютеров обеспечивает высочайшую производительность и надежность, необходимую для работы в Интернете, издательской деятельности и критически важных серверных приложений. Macintosh используются в качестве мощных Интернет-серверов, серверов рабочих групп и систем для конечных пользователей. Считается, что MacOS является более защищенной, чем Windows и Unix, поскольку поддерживает лишь небольшое число сервисов, которые могут быть использованы нарушителями. Как результат, MacOS занимает последние места в списке потенциально уязвимых ОС и в Интернете представлено крайне мало информации о ее взломам. Но все же в уже названном журнале Bugtrag присутствуют описания отдельных ее проблем. Например, используя недостатки защиты, можно осуществить удаленную DoS-атаку на все версии ОС. Атака использует веб-функции компьютеров Macintosh, в результате чего злоумышленник получает управление конфигурацией. Это можно реализовать отправкой сообщения "GET аааа[...х4000...]аааа НТТР/1.0" на порт 80, завершаемого двойным нажатием клавиши Enter. Еще одну УА можно осуществить с использованием SYN-пакетов, что приводит к полной блокировке всех соединений до тех пор, пока не будет произведен их внутренний сброс.
3.3.3. Уязвимость серверов
В архитектуре клиент-сервер для совместного использования информации рабочие станции служащих связываются с серверами.
Основная функция веб-сервера (обязательного сервера для интранета) это предоставление запрошенного браузером файла с сервера по сети с помощью протокола HTTP, при этом для корректного отображения клиентом документа сервер должен быть в состоянии выполнить дополнительные программы, установленные на нем самом и, проанализировав содержимое посылаемого файла, изменить его в соответствии с определенными правилами. Клиентское интерфейсное ПО представляет собой совокупность гипертекста и средств навигации по нему. Наиболее часто применяется язык разметки гипертекста HTML, который представляет собой высокоэффективное наращиваемое средство создания интерактивных документов, содержащих в себе как информацию, так и средства ее обновления. Серверное ПО предназначено для динамической генерации клиентского ПО на основании информации из БД, конфигурационных файлов, результатов выполнения программ на сервере. Создание ПО такого рода позволяет без повторных затрат на разработку всего комплекса поддерживать веб-сайты в состоянии up to date.
3. Уязвимость открытых систем на примере интранета
169
Первой мишенью злоумышленника становится именно веб-сервер, который часто ассоциируется с "концентратором" всей хранимой в сети информации. Если ему удается получить НСД к такому серверу, то реализовать остальное для него не представляет особого труда. Публичные веб-серверы продолжают оставаться объектами атак хакеров, которые хотят с помощью этих атак нанести урон репутации организации или добиться каких-либо политических целей. От атак подобного рода возможен различный ущерб - от простого блокирования работы сервера до замены его содержимого порнографическим материалом, политическими лозунгами или удаления групп файлов, а также размещения на сервере программ-"троянских коней". Из-за уязвимостей веб-серверов злоумышленники могут получить над ними полный контроль, как локально, так и удаленно. Очень часто уязвимости веб-серверов могут быть задействованы для проведения атак "отказ в обслуживании" путем отправки некорректного запроса серверу. Специально составленный запрос может привести к сбою дочернего процесса сервера. В лучшем (для владельца веб-сервера) случае, родительский процесс заменит прекративший работу процесс, а создание новых дочерних процессов потребует всех ресурсов системы. Сбой и замена дочернего процесса приведет к довольно длительному перебою в работе веб-сервера.
В качестве платформ для веб-серверов используются различные ОС. Как показывает практика, все они уязвимы для атак. По статистике 2001 г. о взломанных вебсерверах, собранной группой энтузиастов Интернета, число атак на Windows существенно превышает атаки на другие ОС (табл. 2).
Таблица 2. Операционные системы взломанных веб-серверов
Операционная система	Число взломанных веб-серверов, %
Windows	65,66
Linux	16,27
Solaris	3,29
FreeBSD	1,94
IRIX	1,43
BSDI	1,07
SCO	0,39
AIX	0,36
NetBSD	0,11
Tru64 Unix	0,05
HP ux	0,04
Digital Unix	0,04
MacOS	0,03
OpenBSD	0,03
Novell	0,01
Ultrix	0,001
Веб-серверы обычно подвергаются атакам нарушителей, желающих получить доступ к интранету. МЭ, защищающие эти серверы, могут быть неправильно сконфигурированы, что позволит атакующему войти в интранет через взломанный вебсервер. Для разрешения связи с портами telnet и ftp только доверенным пользователям хорошо зарекомендовала себя практика защиты веб-серверов и установка программ-оболочек сервисов TCP-wrappers (чаще для Unix-платформ, но есть версии и под Windows). Принцип действия оболочек следующий: при поступлении запроса на соединение с каким-либо сетевым сервисом на хосте запускается не демон, обслужи
170
Информационная безопасность открытых систем
вающий этот сервис, а программа-оболочка, которая проверяет, разрешен ли сеанс с удаленным хостом, запросившим соединение, и в случае положительного результата запускает сам требуемый демон. Для запуска оболочек сервисов следует модифицировать файл inetd.conf так, чтобы при обращении на порты указанных сервисов вместо стандартного демона запускался демон оболочки, а в качестве параметра ему передавался путь к стандартному демону. Например, пусть демон оболочки /usr/sbin /tcpd контролирует доступ к сервису finger. Соответствующая строка в /etc/inetd.conf выглядит так:
finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd
Списки доступа, которыми пользуется демон оболочки, содержатся в файлах /etc/hosts.allow, /etc/hosts.deny. При попытке соединения адрес хоста ищется сначала в файле hosts.allow. Если он найден, то соединение разрешается, иначе производится поиск в hosts.deny. В случае успешного поиска соединение запрещается, в противном случае оно разрешается. Формат файлов hosts.allow и hosts.deny одинаков, строка в файле имеет такой вид: services:hosts[:action], где action - действие, выполняемое в случае совпадения адреса хоста и требуемого сервиса с данной строкой (например, послать сообщение администратору). Поле action может отсутствовать. Допускается выражение операторы ALL и EXCEPT. Пример: hosts.allow
telnetd:194.84.124.0/255.255.255.0,193.124.169.58
ftpd:ALL EXCEPT 1.0.0.0/255.0.0.0 hosts.deny
ALLALL [перекрыть доступ снаружи на узловую машину].
Открыть доступ на узловую машину с машин интранета можно так: hosts.allow ALL: 127.0.0.1
ALL: 195.0.1.0/255.255.255.0.
Самой частой целью атакующих становится 80-й порт, отвечающий по умолчанию за сервис HTTP, и, как следствие, веб-сервер. Вторым по распространенности следует 21-й (FTP) порт. Затем следуют 25-й порт (SMTP), 53-й (DNS), 111-й (SunRPC), 113-й (auth) и 139-й (netbios-ssn) порты.
Можно сформулировать ряд полезных рекомендаций по обеспечению защиты веб-сервера (по материалам бюллетеня CIAC J-042).
1.	Разместить веб-сервер в ДМ3. Сконфигурировать МЭ таким образом, чтобы он блокировал входящие соединения с веб-сервером со всеми портами, кроме http (порт 80) или https (порт 443).
2.	Удалить все ненужные сервисы с веб-сервера, оставив FTP (но только, если он нужен на самом деле) и средство безопасного подключения в режиме удаленного терминала, такое, как SSH. Любой ненужный, но оставленный сервис может стать помощником хакера при организации им атаки.
3.	Отключить все средства удаленного администрирования, если они не используют шифрования всех данных сеансов или одноразовые пароли.
4.	Ограничить число людей, имеющих полномочия администратора или суперпользователя (root).
3. Уязвимость открытых систем на примере интранета
171
5.	Протоколировать все действия пользователей и хранить системные журналы либо в зашифрованной форме на веб-сервере, либо на другом компьютере в интранете.
6.	Производить регулярные проверки системных журналов на предмет выявления подозрительной активности. Установить несколько программ-ловушек для обнаружения фактов атак на сервер (например, ловушку для выявления PHF-атаки). Использовать программы, которые запускаются примерно каждый час и проверяют целостность файла паролей и других критических файлов. Если такая программа обнаружит изменения в контролируемых файлах, она должна послать письмо системному администратору.
7.	Удалить все ненужные файлы, такие, как phf, из директорий, откуда могут запускаться скрипты (например, из /cgi-bin).
8.	Удалить все стандартные директории с документами, которые поставляются с веб-серверами, такими, как IIS и ExAir.
9.	Устанавливать все необходимые исправления программ на веб-сервере, касающиеся безопасности, как только о них становится известно.
10.	Если используется графический интерфейс на консоли администратора вебсервера, удалить команды, которые автоматически запускают его с помощью информации в RC-поддиректориях, и вместо этого создать команду для его ручного запуска. Затем можно при необходимости использовать графический интерфейс, но закрывать его сразу же после того, как произведены необходимые действия. Не оставлять графический интерфейс работающим продолжительный период времени.
11.	Если компьютер должен администрироваться удаленно, использовать программы, устанавливающие защищенное соединение с веб-сервером (например, SSH). Не позволять устанавливать с веб-сервером Telnet-соединения или неанонимные ftp-соединения (т. е. те, которые требуют ввода имени и пароля) с недоверенных машин. Лучше предоставить возможность установления таких соединений лишь небольшому числу защищенных машин, которые находятся в интранете.
12.	Запускать веб-сервер в chroot-режиме или в режиме изолированной директории (в этом режиме эта директория кажется корневой директорией файловой системы, и доступ к директориям файловой системы вне ее невозможен), чтобы нельзя было получить доступ к системным файлам.
13.	Использовать анонимный FTP-сервер при необходимости в режиме изолированной директории, отличной от корневой для файлов веб-сервера.
14.	Производить все обновления документов на публичном сервере из интранета. Хранить оригиналы веб-страниц на веб-сервере в интранете и сначала обновлять их на этом внутреннем сервере; потом копировать обновленные веб-страницы на публичный сервер с помощью SSL-соединения.
15.	Периодически сканировать веб-сервер такими средствами, как ISS или nmap, для проверки отсутствия на нем известных уязвимых мест.
16.	Организовать наблюдение за соединениями с сервером с помощью систем обнаружения вторжений. Сконфигурировать эту программу так, чтобы она подавала сигналы тревоги при обнаружении попыток применить известные атаки или любых подозрительных действиях с веб-сервером, а также протоколировала такие соединения для детального анализа. Эта информация сможет впоследствии помочь устранить уязвимые места и усилить систему защиты.
172
Информационная безопасность открытых систем
Много проблем связано с DNS-серверами. Как известно, для обращения к хостам в интранете используются 32-разрядные IP-адреса, уникально идентифицирующие каждый компьютер. Однако для пользователей применение IP-адресов при обращении к хостам является не слишком удобным и далеко не самым наглядным. Использование мнемонически понятных для пользователей имен породило проблему преобразования имен в IP-адреса. Такое преобразование необходимо, так как на сетевом уровне адресация пакетов идет не по именам, а по IP-адресам, следовательно, для непосредственной адресации сообщений интранету имена не годятся. На этапе раннего развития Интернета, когда в сеть было объединено небольшое количество компьютеров, NIC (Network Information Center) для решения проблемы преобразования имен в адреса создал специальный файл (hosts file), в который вносились имена и соответствующие им IP-адреса всех хостов в сети. Данный файл регулярно обновлялся и распространялся по всей сети. Но по мере развития Интернета число объединенных в сеть хостов увеличивалось и данная схема становилась все менее и менее работоспособной; поэтому была создана новая система преобразования имен, дающая возможность пользователю в случае отсутствия у него информации о соответствии имен и IP-адресов получить необходимые сведения от ближайшего информационнопоискового сервера (DNS-сервера). Эта система получила название доменной системы имен (DNS). Для реализации системы DNS был создан специальный сетевой протокол DNS. Хост при обращении к удаленному серверу обычно имеет информацию только о его имени и не знает его IP-адреса, который и необходим для непосредственной адресации. Следовательно, перед хостом возникает стандартная проблема удаленного поиска: по имени удаленного хоста найти его IP-адрес. Решением этой проблемы и занимается сервис DNS на базе протокола DNS.
Если неправильно сконфигурирован внешний DNS-сервер, то можно выяснить внутреннюю структуру сети. Поэтому очень важно, чтобы между хостами интранета и внешними хостами не существовал DNS-сервер. Для соединения внешних компьютеров с интранетом лучше просто использовать IP-адреса. Остальные проблемы уязвимости DNS рассмотрены в п. 3.5.4.
Нарушители, стремящиеся получить доступ к интранету, также атакуют и почтовые серверы. Причина в том, что почтовые серверы имеют доступ к почтовым серверам внутри интранета для распределения и обмена почтовыми сообщениями между открытыми сетями и интранетом. И опять, в зависимости от используемой в сети фильтрации, эта тактика может быть, а может и не быть эффективной для осуществления намерений злоумышленника. Кроме того, почтовые серверы намеренно заражают сетевыми вирусами, что на длительное время выводит их из строя (проблемам электронной почты посвящен п. 3.5.8). Последствия от взлома почтового сервера могут быть разнообразными - от перехвата сообщений до реализации атак "отказ в обслуживании" в отношении клиентов и серверов.
Если найден и взломан терминальный сервер (разновидность сервера удаленного доступа), то злоумышленник получит некоторый доступ к интранету даже минуя МЭ или фильтры, разделяющие интранет и другие открытые сети. Так, известны некоторые проблемы терминального сервера Windows 2000, применяемого для удаленного управления и распределенной обработки данных. С его появлением связано широкое распространение интерактивных учетных записей. Если взломщик сможет получить
3. Уязвимость открытых систем на примере интранета
173
данные такой записи, то предотвратить дальнейшее расширение его привилегий будет сложно.
Поэтому защита терминальных серверов очень важна, а процедуры установления соединений с ними должны быть заранее хорошо продуманы.
Уязвимость систем управления базами данных
Все уязвимости в любом ПО можно условно разделить на три класса - уязвимости проектирования, реализации и конфигурации. Эти классы уязвимостей существуют и применительно к различным защитным механизмам, реализуемым в СУБД: подсистема контроля целостности, подсистема разграничения доступа, подсистема аутентификации и т. д.
Защита БД является хорошо изученной проблемой. Это обусловлено тем, что БД имеют четко определенную внутреннюю структуру и операции над элементами БД также четко определены. Чаще всего над элементами БД осуществляются операции поиска, вставки, замены и удаления. Другие операции носят вспомогательный характер и реализуются реже. Такая простая структура системы защиты упрощает ее администрирование и усложняет задачу преодоления защиты СУБД. Тем не менее в отдельных случаях преодоление защиты, реализуемой СУБД, вполне возможно, если:  используется СУБД, защита которой недостаточно надежна;
	используется недостаточно хорошо протестированная версия СУБД, содержащая ошибки в ПО;
	администраторы БД допускают грубые ошибки при определении ПБ для БД.
Кроме того, есть отдельные атаки на СУБД, для защиты от которых требуются специальные меры. К ним относятся вышеупомянутые атака-"салями" (связанная с изменением правил округления обрабатываемой информации) и статистическая идентификация (эта атака позволяет получать конкретные значения тех полей БД, для которых доступна только статистическая информация).
Для реализации атак на СУБД злоумышленник должен как минимум быть пользователем СУБД.
Большинство современных СУБД построено по рассмотренной выше технологии клиент-сервер. В качестве сетевого протокола, по которому осуществляется взаимодействие клиентской части с серверной по каналам связи, как правило, выступает протокол из стека TCP/IP. Доступ клиентов к серверу БД осуществляется путем обращения к так называемому слушающему сервису, функционирующему на порте с определенным номером (1433 - для Microsoft SQL Server, 1521 - для Oracle и, как правило, 5000 - для Sybase). НСД к учетной записи, отвечающей за старт и останов слушающего сервиса, приводит к тому, что злоумышленник может остановить данный сервис и блокировать все попытки подключения клиентов к серверу базы данных. Нарушителю не обязательно даже знать пароль. Он может просто послать на соответствующий порт специальным образом сформированные пакеты, приводящие к нарушению работоспособности сервера баз данных.
Еще одна уязвимость БД, взаимодействующих по протоколам из стека TCP/IP, связана с тем, что информация между клиентом и сервером чаше всего передается в незащищенном виде. Установив в сети анализатор протоколов или используя анализатор, встроенный в ОС (как, например, Network Monitor для Windows NT), можно перехватывать пароли и идентификаторы пользователей, а также конфиденциальные данные, хранящиеся в БД.
174
Информационная безопасность открытых систем
Есть и проблемы с учетными записями, например, уволившегося или просто находящегося в отпуске сотрудника (так называемые "мертвые души"). Такая ситуация может быть использована для попытки проникновения в БД и маскировки под другого пользователя. К сожалению, современные СУБД не имеют механизма, позволяющего обнаруживать неприменяемые учетные записи, что открывает перед злоумышленниками большой простор для несанкционированной деятельности. Здесь же стоит упомянуть о "слабых" паролях. Ранние версии Oracle, Sybase, Microsoft SQL Server не содержали никаких средств контроля таких паролей, что позволяло пользователям выбирать для них абсолютно неподходящие значения, которые подбираются злоумышленниками в течение нескольких секунд. В более современных версиях Sybase и Oracle появились такие механизмы проверки, но по умолчанию они не используются. Проблемой являются, как было отмечено выше, и установки по умолчанию. В Интернете без особого труда можно найти узлы, на которых указаны такие значения для различного программно-аппаратного обеспечения, в том числе и для СУБД.
Статистика показывает, что 70 % неприятностей с СУБД возникают в результате неправильной конфигурации. Получив тем или иным способом доступ к базе данных, злоумышленник может воспользоваться мощью систем СУБД для установления контроля над другими системными приложениями. Например, получив доступ к Microsoft SQL Server под именем зарегистрированного пользователя, с помощью расширенных хранимых процедур злоумышленник затем может создавать новые учетные записи с привилегиями администратора или изменять конфигурацию веб-сервера предприятия. К каким последствиям приведут подобные действия, говорить излишне. Например, в Microsoft SQL Server 6.5 пароль администратора (учетная запись sa) хранился в открытом виде в системном реестре (ключ HKEY_CURRENT_ USER\SOFTWARE\Microsoft\MSSQLServer\SQLEW\Registered Servers\SQL 6.5). В версиях 7 и выше пароль хранится в зашифрованном виде (ключ НКЕУ_ CURRENT- USER\SOFTWARE\Microsoft\MSSQLServer\ SQLEWXRegistered Servers X\SQL Server Group), но он легко расшифровывается с помощью утилиты LOphtCrack. Еще одна проблема SQL Server также связана с системным реестром, в котором хранятся (пусть и в зашифрованном виде) и пароли пользователей ОС. С помощью расширенных хранимых процедур, например хр regdeletevalue, xp_regwrite, xp_regread, можно манипулировать ключами системного реестра. Прочтя HKEY_LOCAL_MACHINE\SECURITY\SAM\DOMAINS\ACCOUNT\USERS\
с помощью xp_regread неизвестный зашифрованный пароль учетной записи пользователя, можно заменить его на известный пароль и войти в систему, замаскировавшись под другого пользователя. Или применить утилиту LOphtCrack для определения зашифрованного пароля.
В Oracle пароль встроенной учетной записи INTERNAL, используемой, например, для старта и останова СУБД, хранится в открытом виде в файле strXXX.cmd (XXX -это идентификатор, по умолчанию соответствующий "orci") и в файле \orant\database\ spoolmain.log, записываемый в процессе создания БД. Доступ к этим файлам по умолчанию имеют все пользователи. Кроме того, все пароли учетных записей для СУБД Oracle хранятся в файле orapwXXX (для Unix) или pwdXXX.ora (для Windows NT) в зашифрованном виде. Но они могут быть подвергнуты атаке "грубой силы", позволяющей подобрать правильное значение пароля. Или одно неизвестное зашиф
3. Уязвимость открытых систем на примере интранета
175
рованное значение пароля может быть заменено на другое зашифрованное, но известное значение.
СУБД, в особенности реляционные, стали доминирующим инструментом хранения больших массивов информации. Сколько-нибудь развитые информационные приложения полагаются не на файловые структуры ОС, а на многопользовательские СУБД, выполненные в технологии клиент-сервер. В этой связи обеспечение информационной безопасности СУБД (всех трех ее основных аспектов: конфиденциальности, целостности и доступности), и в первую очередь их серверных компонентов, приобретает решающее значение для безопасности организации в целом. Когда БД располагались на больших мейнфреймах, они разделяли средства защиты с ОС. С приходом клиент-серверных приложений пользователи получают возможность миновать процедуру загрузки в ОС и обращаться напрямую к БД, где средства зашиты не столь надежны.
Существует два специфических сценария атаки на СУБД.
1. Результаты арифметических операций над числовыми полями СУБД округляются в меньшую сторону, а разница суммируется в некоторой другой записи СУБД (как правило, эта запись представляет собой денежную сумму, которая хранится на личном счету хакера в банке, а округляемые числовые поля относятся к счетам других клиентов банка).
2. Злоумышленник получает доступ к полям записей СУБД, содержащим только накопляемую статистическую информацию. Задача взломщика - сформулировать запрос таким образом, чтобы множество записей, для которого собирается статистика, состояло только из одной записи.
Главный источник угроз, специфичных для СУБД, лежит в самой природе БД, хранящей информацию. Основным средством взаимодействия с СУБД является язык SQL - мощный непроцедурный инструмент определения и манипулирования данными. Хранимые процедуры добавляют к нему управляющие конструкции. Механизм правил дает возможность выстраивать сложные, трудные для анализа цепочки действий, позволяя попутно неявным образом передавать право на выполнение процедур, даже не имея, строго говоря, полномочий на это. В результате потенциальный злоумышленник получает в свои руки мощный и удобный инструментарий, а все развитие СУБД направлено на то, чтобы сделать этот инструментарий еще мощнее и удобнее.
Получение информации путем логических выводов. Нередко путем логического вывода можно извлечь из БД информацию, на получение которой стандартными средствами у пользователя не хватает привилегий.
Если для реализации контроля доступа используются представления и эти представления допускают модификацию, с помощью операций модификации/вставки можно получить информацию о содержимом базовых таблиц, не располагая прямым доступом к ним.
Основным средством борьбы с подобными угрозами, помимо тщательного проектирования модели данных, является механизм размножения строк. Суть его в том, что в состав первичного ключа, явно или неявно, включается метка безопасности, за счет чего появляется возможность хранить в таблице несколько экземпляров строк с одинаковыми значениями "содержательных" ключевых полей. Наиболее естественно размножение строк реализуется в СУБД, поддерживающих метки безопасности
176
Информационная безопасность открытых систем
(например, в INGRES/ Enhanced Security), однако и стандартными SQL-средствами можно получить удовлетворительное решение.
Агрегирование данных. Агрегирование — это метод получения новой информации путем комбинирования данных, добытых легальным образом из различных таблиц. Агрегированная информация может оказаться более секретной, чем каждый из компонентов, ее составляющих. Информация об отдельных частях сама по себе не является секретной (какой смысл скрывать материал, размеры и количество гаек?). В то же время анализ всей базы позволяет узнать, как сделать ракету, что может считаться государственной тайной.
Повышение уровня секретности данных при агрегировании вполне естественно -это следствие закона перехода количества в качество. Бороться с агрегированием можно за счет тщательного проектирования модели данных и максимального ограничения доступа пользователей к информации.
Покушение на высокую готовность (доступность). Если пользователю доступны все возможности SQL, он может довольно легко затруднить работу других пользователей, инициировав, например, длительную транзакцию, захватывающую большое число таблиц. Современные многопотоковые серверы СУБД отражают лишь самые прямолинейные атаки, состоящие, например, в запуске в часы пик операции массовой загрузки данных. Поэтому не рекомендуется предоставлять пользователям непосредственного SQL-доступа к базе данных, используя в качестве фильтров серверы приложений. Выбор подобной архитектуры разумен и по многим другим соображениям.
В качестве угрозы, специфичной для реляционных СУБД, упомянем ссылочные ограничения. Строго говоря, наложение такого ограничения препятствует удалению строк из таблицы, содержащей первичные ключи, хотя в современных версиях SQL можно запросить так называемое каскадное удаление. Впрочем, искажение прочих ограничений на таблицы и их столбцы по-прежнему остается опасным средством покушения на доступность данных.
Защита коммуникаций между сервером и клиентами. Эта проблема не является специфичной только для СУБД, она присуща всем распределенным системам. Вполне естественно, что и решения здесь ищутся общие, такие, например, как в распределенной вычислительной среде Distributed Computing Environment (DCE) концерна OSF. Разработчикам СУБД остается "погрузить" свои программные продукты в эту среду. Ключевым компонентом в реализации взаимодействий клиент-сервер в среде DCE является сервис безопасности. Основные функции, предоставляемые этим сервисом, - аутентификация, реализуемая средствами, например, Kerberos, авторизация (проверка полномочий) и шифрование. Например, для каждого приложения клиент-сервер администратор может задать один из пяти уровней защиты:
	защита пересылаемых данных только при установлении соединения клиента с сервером;
	защита данных только на начальном этапе выполнения удаленного вызова процедуры, когда сервер впервые получает запрос;
	подтверждение подлинности источника данных — проверяется, все ли поступающие на сервер данные получены от определенного клиента;
	подтверждение подлинности источника и целостности данных - проверяется, что отправленные данные не были изменены;
3. Уязвимость открытых систем на примере интранета	177
	подтверждение подлинности источника, целостности и конфиденциальности данных - выполняются проверки, предусмотренные на предыдущем уровне, и осуществляется шифрование всех пересылаемых данных.
Сервис аутентификации DCE существенно улучшает характеристики безопасности распределенной среды, упрощая в то же время деятельность как пользователей, так и администраторов. Достаточно иметь единое входное имя и пароль для DCE, чтобы обращаться к любой погруженной в эту среду базе данных. При запуске приложения сервер запрашивает аутентификационную информацию пользователя у DCE и подключает его к требуемой базе.
Наличие единой точки администрирования входных имен и прав доступа к базам данных и приложениям способствует упорядочению общей ситуации с безопасностью. Например, если уничтожается входное имя DCE, то администратор может быть уверен, что данный пользователь уже не сможет получить доступ ни к одному из системных ресурсов.
Общая идея защиты БД состоит в следовании рекомендациям, сформулированным для класса безопасности С2 в "Критериях оценки надежных компьютерных систем". В принципе некоторые СУБД предлагают дополнения, характерные для класса В1, однако практическое применение подобных дополнений имеет смысл, только если все компоненты информационной структуры организации соответствуют категории безопасности В.
Можно назвать следующие основные направления борьбы с потенциальными угрозами конфиденциальности и целостности данных [45]:
	идентификация и проверка подлинности (аутентификация) пользователей (применяются либо соответствующие механизмы ОС, либо SQL-оператор CONNECT);
	управление доступом к данным (владелец объекта передает права доступа к нему (чаше говорят - привилегии доступа и безопасности) по своему усмотрению);
	механизм подотчетности всех действий, влияющих на безопасность;
	защита регистрационной информации от искажений и ее анализ;
	очистка объектов перед их повторным использованием;
	защита информации, передаваемой по линиям связи.
Все эти универсальные рекомендации применимы и к СУБД. Кроме того, специфика СУБД делает потенциально возможными новые угрозы, и соответственно требует особых мер защиты (например, использования представлений — средств управления доступом в СУБД; представления позволяют сделать видимыми для субъектов определенные столбцы базовых таблиц или отобрать определенные строки).
СУБД имеют строгую внутреннюю структуру, и операции над их элементами определены довольно четко. Как правило, эти операции включают в себя четыре основных действия - поиск, вставку, удаление и замену элемента, а остальные носят вспомогательный характер и применяются довольно редко. Наличие строгой структуры и четко определенных операций упрощает решение задачи защиты СУБД. В большинстве случаев злоумышленники не удостаивают СУБД своим вниманием, предпочитая взламывать защиту интранет на уровне ОС и получать доступ к файлам СУБД средствами ОС. Но в тех случаях, когда используется СУБД с недостаточно надежными защитными механизмами или плохо протестированная версия СУБД или администратор СУБД допустил ошибки при определении политики безопасности, злоумышленник без труда преодолеет защиту, реализуемую на уровне СУБД.
178
Информационная безопасность открытых систем
Планируя защиту в СУБД, первостепенными являются ответы на следующие вопросы (рис. 30). Кто имеет доступ к информации? Как и в каком виде хранятся данные в БД? Как выполняется передача данных в сетях (локальных и глобальных) от клиента к серверу и обратно? Как выполняются процедуры выгрузки и загрузки данных, их резервного копирования и в каком виде хранятся копии данных? Как происходит реорганизация данных в БД? Как выполняются репликации данных в распределенных БД? Возможен ли перебор паролей для НСД? Можно ли испортить информацию в БД?
О - Нужна защита!!!
Рис. 30. Уязвимость СУБД
Заключительная рекомендация: для СУБД требуется регулярная проверка с целью обнаружения всех несанкционированных изменений и наличия уязвимостей. Делать это можно вручную или применяя автоматизированные системы анализа защищенности, такие, как Database Scanner компании Internet Security Systems [http://www.iss.net], SQL о Secure Policy компании BrainTree Security Software [http://www.braintree.co.uk], e-Secure компании Cyrano [http://www.cyrano.com], SFProtect компании Hewlett-Packard [http://www.hp.com]. Например, SQL Auditor DBSecure оценивает риски в базе данных Microsoft SQL Server, выявляет слабые пароли, нарушения режимов эксплуатации, загрузочные атаки и другие формы НСД. В пакете SQL Secure фирмы BrainTree управление безопасностью сосредоточено на единой консоли. Компонент Password Manager анализирует пароли на слабость, управляет процессом присвоения паролей и сроками их действия. Компонент Policy Manager помогает пользователям оценивать свои БД на соответствие корпоративным стандартам безопасности.
Уязвимость систем электронного документооборота
До принятия Государственной думой Российской Федерации Закона "Об электронном документообороте" постараемся ввести ряд определений, являющихся базовыми в данной области.
Изначально "документооборот" являлся отражением термина "делопроизводство", хорошо формализованного в традиционном управлении. Тогда средства автоматиза
3. Уязвимость открытых систем на примере интранета
179
ции документооборота сводятся к компьютеризации традиционных задач делопроизводства - к формированию дел и учету содержащихся в них документов, контролю, исполнению и формированию отчетности и т. п. Подобного термина, однозначно соответствующего "документообороту" в российском понимании, в западном компьютерном словаре нет. У специалистов в области автоматизации бухгалтерского учета, финансовой и складской деятельности под документооборотом понимается подсистема программы, обеспечивающая генерацию "бумажной" отчетности (сводных ведомостей. накладных, справок и пр.) на основе данных, порождаемых в системе. В зависимости от пристрастий и специфики описываемого ПО, реализующего электронный документооборот, есть три близких аналога: 1) DMS (Document Management Systems) - системы управления документами, в русскоязычной литературе имеющие точный перевод - "архивы документов"; 2) DocFlow-системы, или системы маршрутизации документов; 3) WorkFlow-системы - "системы автоматизации бизнес-процессов", или "системы поддержки управления".
В последнее время появились термины, близкие к теме автоматизации документооборота, - Document Warehousing (хранилища документов) и Knowledge Management (управление знаниями). Они являются дальнейшим развитием систем документооборота и необходимы для структуризации и долгосрочного хранения больших массивов накопленных в организации документов, а также оптимального поиска необходимой информации на массиве разнородных накопленных документов.
Электронное сообщение - это логически целостная совокупность структурированных данных, имеющих смысл для участников информационного взаимодействия, которая закодирована способом, позволяющим обеспечить ее обработку средствами вычислительной техники, передачу по каналам связи и хранение на машиночитаемых носителях информации.
Электронный документ - это электронное сообщение, которое соответствует установленному формату, подписано электронной цифровой подписью (ЭЦП) и может быть преобразовано в форму, пригодную для однозначного восприятия его содержания.
Электронный документооборот (ЭДО) — это обмен электронными документами.
Система электронного документооборота (СЭД) - это корпоративная организационно-техническая система, представляющая собой совокупность программного, информационного и аппаратного обеспечения, реализующая электронный документооборот. Функциональная архитектура такой системы, состоящей обычно из ряда подсистем, может быть примерно представлена так, как это показано на рис. 31.
1.	Подсистема автоматизации делопроизводства (САД). В функции этого комплекса приложений не входит хранение и перемещение документов, но входит фиксация документов в специальной БД с карточками документов. Запись в БД характеризуется набором значений атрибутов карточки. Структура документов в БД опирается на так называемую номенклатуру дел организации, а технология их учета и обработки - на Положение о делопроизводстве. Документы хранятся в бумажном виде в специальном архиве, но в БД отображается их текущее местоположение и статус, включая атрибуты контроля исполнения. Различают входящие и исходящие документы, нормативно-распорядительные документы, документы коллегиальных органов управления, справочные документы и т. п. Документы, находящиеся на контроле исполнения, подразделяются по исполнителям, статусу исполнения, срокам
180
Информационная безопасность открытых систем
исполнения и пр. Помимо учета и поиска документов в БД, система генерирует отчеты с ведомостями исполнения документов и прочей сводной информацией.
Интерактивный ввод информации
Аналитические приложения
БД, таблицы пользовательских приложений и т. п.
Система управления документами Document Server
Система автоматизации деловых процедур Work Flow
Вводи распознование образов документов
Веб-сервер
CGI-приложения (интерфейс к интранет/Интернет)
Удаленные пользователи
Интранет/
Интернет
Рис. 31. Функциональная архитектура системы электронного документооборота
Сеть подразделения
2.	Подсистема "Архивы документов" (АД) хранит либо образ документа, либо его содержание, либо и то и другое. Она обеспечивает навигацию по иерархии документов и их поиск. Если в САД поиск осуществлется по атрибутам документов, то в АД- полнотекстовый поиск по содержимому текстовых фрагментов документа. Также, в отличие от САД, в АД хранятся сами документы, для которых обеспечивается разграничение прав доступа (на уровне пользователей, групп пользователей или ролей). Пользователь идентифицируется сетевым именем или специальным именем и паролем, определенным в системе управления архивом. В АД обеспечивается групповая работа с создаваемыми документами - это функция блокировок документов или Check-In/Check-Out-контроль (если один пользователь начинает редактировать документ, то он блокируется для доступа других до окончания работы). Поддерживается контроль версий документов (либо автоматически, либо по инициативе пользователя). В случае необходимости пользователь может вернуться к одной из предыдущих версий документа. Сервисными функциями АД являются следующие: возможность создания резервных копий документов без прекращения работы системы, интеграция с системами обеспечения оптимальной стоимости хранения данных и пр.
3.	Подсистема ввода документов и системы обработки образов документов. Под вводом документов в архив понимается их перевод из бумажного вида в электронный. В простейшем случае это сводится к сканированию. Но часто простого сохранения образа документа недостаточно. Образ документа может потребовать так называемого аннотирования, наложения на образ документа дополнительных обра
3. Уязвимость открытых систем на примере интранета
181
зов, выделений, текстовых пометок и пр. Также образ документа должен быть вручную снабжен набором атрибутов, идентифицирующих его в САД и АД. Более сложной задачей является автоматическое распознавание содержимого образа документа и формирование документа, содержащего его текст (используется ПО распознавания текста). Еще сложнее распознавание содержимого форм. При этом программа определяет наличие записей, в том числе и рукописных, в определенных полях бланка документа, распознает его содержимое и автоматически заполняет значения атрибутов документа в системе. При необходимости значения определенных полей бланка могут выбираться из определенного в системе справочника.
4.	Подсистема управления стоимостью хранения документов. При сохранении в архиве образов документов объемы хранения могут быстро расти и достигать значительных размеров. При этом интенсивность обращения к документам неравномерна (документы, находящиеся в работе, требуются часто; документы, работа с которыми уже завершена, - редко). Поэтому должна обеспечиваться различная оперативность доступа к разным документам и автоматический перенос данных с более "дорогих” устройств на более "дешевые". Так как стоимость хранения документов в архиве, как правило, обратно пропорциональна скорости доступа, то можно воспользоваться отмеченной закономерностью для оптимизации стоимости содержания архива, что и делает данная система. Обычно обеспечивается работа с различными периферийными устройствами - накопителями на жестких магнитных дисках, On-line-оптичес-кими стойками, накопителями на магнитной ленте и CD-ROM-устройствами.
5.	Подсистема маршрутизации документов (СМД) пересылает документы на рабочие места исполнителей, собирает информацию о текущем статусе документов, осуществляет консолидацию документов по завершению работы с ними на отдельных этапах, обеспечивает средства доступа к информации о текущем состоянии работ с документами. СМД, как правило, содержат средства описания типовых маршрутов прохождения документов. На основании разработанных маршрутных схем могут порождаться экземпляры бизнес-процессов работы с документами ("жесткая" маршрутизация). При "свободной" маршрутизации маршрут формируется "стихийно" и каждый пользователь системы с соответствующими правами может определить следующего исполнителя документа. Администратор системы и менеджер конкретного бизнес-процесса может контролировать текущее состояние маршрута и вносить коррективы. Возможны две схемы маршрутизации документов - Off-line и On-line. При первой происходит физическое извлечение документа из АД и доставка его (например, с помощью электронной почты) клиенту. По завершении работы документ обратно попадает в АД. Сама СМД является клиентом АД и вносит соответствующую информацию в учетную БД. Вторая схема не подразумевает физического перемещение документа - СМД обеспечивает клиенту интерфейс для доступа к заданиям на обработку документов.
6.	Подсистема публикации информации (напомним, что мы рассматриваем решения для интранета) состоит из веб-сервера и CGI-приложения, реализующих связь с хранилищами данных.
7.	Подсистема комплексной автоматизации бизнес-процессов, или WorkFlow-система. В отличие от СМД объектом маршрутизации в них является совокупность данных, используемых в некотором бизнес-процессе. Пользователь получает на рабочее место информацию о том, что он должен сделать, и все необходимые для этого
182
Информационная безопасность открытых систем
данные. WorkFlow-приложение определяет, какое приложение должно быть запущено для реализации функций на данном рабочем месте, и передает туда необходимые данные. Пользователь выполняет только необходимые функции, всю рутинную работу (определение последовательности действий, доставку необходимой информации, контроль своевременности исполнения работы и пр.) выполняет система WorkFlow. Функции WorkFlow-приложений выходят за рамки функций систем документооборота. Однако технологии, используемые в данных приложениях, очень близки технологиям, используемым в СМД. К тому же маршрутизация документов может рассматриваться как частный случай задачи построения WorkFlow-системы.
8.	Обобщающая подсистема администрирования и конфигурирования СЭД может быть реализована посредством: настройки штатных средств администрирования ОС, на которой базируется сервер; специализированного приложения, запускаемого с администраторскими правами и имеющего доступ к системным функциям ОС сервера БД; набора специальных процедур и функций, доступ к которым возможен только при условии входа в систему с правами администратора.
Уровневая архитектура системы представлена на рис. 32.
Клиент
Веб-браузер
Пользовательское приложение вызов с клиентской станции
Офисные приложения клиентская часть сетевой установки
DMS-клиент, WorkFlow-компонента
Интранет/ Интернет
TCP/IP
Веб-сервер
CCI-приложения
DMS-сервер
Ч WorkFlow-сервер
Сервер СУБД
Офисные приложения — сетевая установка —
Аналитическое пользовательское приложение
Шаблоны документов
Подсистема администрирования
Сервисы управления
Сервер
Пользовательские конфигурации
Рис. 32. Уровневая архитектура системы электронного документооборота
3. Уязвимость открытых систем на примере интранета
183
В качестве ста