Тема 7. Безопасность распределенных вычислительных систем в Интернет
7.1 Особенности безопасности компьютерных сетей
Для того, чтобы рассматривать в дальнейшем вопросы безопасности в Internet, необ-ходимо напомнить основные понятия, которыми оперирует теория компьютерной безопас-ности: это угрозы, уязвимости и атаки.
Угроза безопасности компьютерной системы - это потенциально возможное происше-ствие, неважно, преднамеренное или нет, которое может оказать нежелательное воздействие на саму систему, а также на информацию, хранящуюся в ней. Иначе говоря, угроза - это не-что плохое, что когда-нибудь может произойти.
Уязвимость компьютерной системы - это некая ее неудачная характеристика, которая делает возможным возникновение угрозы. Другими словами, именно из-за наличия уязвимостей в системе происходят нежелательные события.
Атака на компьютерную систему - это действие, предпринимаемое злоумышленни-ком, которое заключается в поиске и использовании той или иной уязвимости. Таким обра-зом, атака - это реализация угрозы. Заметим, что такое толкование атаки (с участием челове-ка, имеющего злой умысел), исключает присутствующий в определении угрозы элемент слу-чайности, но, как показывает опыт, часто бывает невозможно различить преднамеренные и случайные действия, и хорошая система защиты должна адекватно реагировать на любое из них.
Далее, исследователи обычно выделяют три основных вида угроз безопасности - это угрозы раскрытия, целостности и отказа в обслуживании.
Угроза раскрытия заключается том, что информация становится известной тому, ко-му не следовало бы ее знать. В терминах компьютерной безопасности угроза раскрытия име-ет место всякий раз, когда получен доступ к некоторой конфиденциальной информации, хранящейся в вычислительной системе или передаваемой от одной системы к другой. Ино-гда вместо слова "раскрытие" используются термины "кража" или "утечка.
Угроза целостности включает в себя любое умышленное изменение (модификацию или даже удаление) данных, хранящихся в вычислительной системе или передаваемых из одной системы в другую. Обычно считается, что угрозе раскрытия подвержены в большей степени государственные структуры, а угрозе целостности - деловые или коммерческие.
Угроза отказа в обслуживании возникает всякий раз, когда в результате некоторых действий блокируется доступ к некоторому ресурсу вычислительной системы. Реально бло-кирование может быть постоянным, так чтобы запрашиваемый ресурс никогда не был полу-чен, или оно может вызвать только задержку запрашиваемого ресурса, достаточно долгую для того, чтобы он стал бесполезным. В таких случаях говорят, что ресурс исчерпан.
Основной особенностью любой сетевой системы является то, что ее компоненты рас-пределены в пространстве и связь между ними физически осуществляется при помощи сете-вых соединений (коаксиальный кабель, витая пара, оптоволокно и т. п.) и программно при помощи механизма сообщений. При этом все управляющие сообщения и данные, пересы-лаемые между объектами распределенной вычислительной системы (ВС), передаются по се-тевым соединениям в виде пакетов обмена.
К сетевым системам наряду с обычными (локальными) атаками, осуществляемыми в пределах одной компьютерной системы, применим специфический вид атак, обуслов-ленный распределенностью ресурсов и информации в пространстве. Это так называемые сетевые (или удаленные) атаки. Они характерны, во-первых, тем, что злоумышленник может находиться за тысячи километров от атакуемого объекта, и, во-вторых, тем, что нападению может подвергаться не конкретный компьютер, а информация, передающаяся по сетевым соединениям. С развитием локальных и глобальных сетей именно удаленные атаки становятся лидирующими как по количеству попыток, так и по успешности их применения и, соответственно, обеспечение безопасности ВС с точки зрения противостояния удаленным атакам приобретает первостепенное значение. Специфика распределенных ВС состоит в том, что если в локальных ВС наиболее частыми были угрозы раскрытия и целостности, то в сетевых системах, как будет показано далее, на первое место выходит угроза отказа в обслуживании.
Под удаленной атакой будем понимать информационное разрушающее воздействие на распределенную ВС, программно осуществляемое по каналам связи. Это определение ох-ватывает обе особенности сетевых систем - распределенность компьютеров и распределен-ность информации. Поэтому далее будут рассмотрены два подвида таких атак - это удален-ные атаки на инфраструктуру и протоколы сети и удаленные атаки на телекоммуникацион-ные службы. Первые используют уязвимости в сетевых протоколах и инфраструктуре сети, а вторые - уязвимости в телекоммуникационных службах. При этом под инфраструктурой сети мы понимаем сложившуюся систему организации отношений между объектами сети и используемые в сети сервисные службы.
Классификация компьютерных злоумышленников
Всех профессионалов, связанных с информационной безопасностью, разделяют на ха-керов (hackers) и кракеров (crackers). И те и другие во многом занимаются решением одних и тех же задач - поиском уязвимостей в вычислительных системах и осуществлением атак на данные системы ("взломом" ).
Самое главное и принципиальное различие между хакерами и кракерами состоит в целях, которые они преследуют. Основная задача хакера в том, чтобы, исследуя вычисли-тельную систему, обнаружить слабые места (уязвимости) в ее системе безопасности и ин-формировать пользователей и разработчиков системы с целью последующего устранения найденных уязвимостей. Другая задача хакера - проанализировав существующую безопас-ность вычислительной системы, сформулировать необходимые требования и условия повы-шения уровня ее защищенности.
С другой стороны, основная задача кракера состоит в непосредственном осуществле-нии взлома системы с целью получения несанкционированного доступа к чужой информации - иначе говоря, для ее кражи, подмены или для объявления факта взлома. Кракер, по своей сути, ничем не отличается от обычного вора, взламывающего чужие квартиры и крадущего чужие вещи. Он взламывает чужие вычислительные системы и крадет чужую информацию. Вот в чем состоит кардинальное различие между теми, кого можно назвать хакерами и кра-керами: первые - исследователи компьютерной безопасности, вторые - просто взломщики, воры или вандалы. Хакер в данной терминологии - это специалист. В качестве доказательст-ва приведем определение из словаря Guy L. Steele:
HACKER сущ. 1. Индивидуум, который получает удовольствие от изучения деталей функционирования компьютерных систем и от расширения их возможностей, в отличие от большинства пользователей компьютеров, которые предпочитают знать только не-обходимый минимум. 2. Энтузиаст программирования; индивидуум, получающий удовольствие от самого процесса программирования, а не от теоретизирования по этому по-воду.
Низменность мотивов кракеров приводит к тому, что 90% из них являются "чайника-ми", которые взламывают плохо администрируемые системы, в основном благодаря исполь-зованию чужих программ (обычно эти программы называются exploit). (Причем это мнение тех самых 10% профессиональных кракеров.) Такие профессионалы - бывшие хакеры, став-шие на путь нарушения закона. Их, в отличие от кракеров-"чайников" , остановить действи-тельно очень сложно, но, как показывает практика, отнюдь не невозможно. Очевидно, что для предотвращения возможного взлома или устранения его последствий требуется пригла-сить квалифицированного специалиста по информационной безопасности - профессиональ-ного хакера.
Однако, было бы несправедливо смешать в одну кучу всех кракеров, однозначно на-звав их ворами и вандалами. По нашему мнению, кракеров можно разделить на три следую-щих класса в зависимости от цели, с которой осуществляется взлом: вандалы, "шутники" и профессионалы.
Вандалы - самая известная (во многом благодаря повседневности вирусов, а также творениям некоторых журналистов) и, надо сказать, самая малочисленная часть кракеров. Их основная цель - взломать систему для ее разрушения. К ним можно отнести, во-первых, любителей команд типа: rm -f -d *, del *.*, format c:/U и т.д., и, во-вторых, специалистов в написании вирусов или "троянских коней". Совершенно естественно, что весь компьютерный мир ненавидит кракеров-вандалов лютой ненавистью. Эта стадия кракерства обычно характерна для новичков и быстро проходит, если кракеру удается совершен-ствоваться (ведь довольно скучно осознавать свое превосходство над беззащитными пользователями). Кракеров, которые даже с течением времени не миновали эту стадию, а только все более совершенствовали свои навыки разрушения, иначе, чем социальными психопатами, не назовешь.
"Шутники" - наиболее безобидная часть кракеров (конечно, в зависимости от того, насколько злые они предпочитают шутки), основная цель которых - известность, достигае-мая путем взлома компьютерных систем и внесением туда различных эффектов, выражаю-щих их неудовлетворенное чувство юмора. "Шутники" обычно не наносят существенный ущерб (разве что моральный). На сегодняшний день в Internet это наиболее распространен-ный класс кракеров, обычно осуществляющих взлом Web-серверов, оставляя там упомина-ние о себе.
К "шутникам" также можно отнести создателей вирусов с различными визуально-звуковыми эффектами (музыка, дрожание или переворачивание экрана, рисование всевозможных картинок и т.п.). Все это, в принципе, либо невинные шалости начинающих, либо - рекламные акции профессионалов.
Взломщики - профессиональные кракеры, пользующиеся наибольшим почетом и ува-жением в кракерской среде, основная задача которых - взлом компьютерной системы с серь-езными целями, как то кража или подмена хранящейся там информации. В общем случае, для того, чтобы осуществить взлом системы, необходимо пройти три основные стадии: ис-следование вычислительной системы с выявлением изъянов в ней, разработка программной реализации атаки и непосредственное ее осуществление. Естественно, настоящим профес-сионалом можно считать того кракера, который для достижения своей цели проходит все три стадии. С некоторой натяжкой также можно считать профессионалом того кракера, который, используя добытую третьим лицом информацию об уязвимости в системе, пишет программную реализацию данной уязвимости. Осуществить третью стадию, очевидно, может в принципе каждый, используя чужие разработки..
Законы УК РФ, связанные с "преступлениями в сфере компьютерной информа-ции"
Для тех, кто хочет посмотреть на проблему безопасности с другой стороны, со стороны кракера, хочется напомнить, что с 1997 года действуют статьи УК РФ, где, к сожа-лению, довольно расплывчато и нечетко описывается та возможная уголовная ответственность, которую могут нести граждане РФ за "преступления в сфере компьютерной информации" (Глава 28 УК РФ):
Статья 272. Неправомерный доступ к компьютерной информации.
1. Неправомерный доступ к охраняемой законом компьютерной информации, то есть информации на машинном носителе, в электронно-вычислительной машине (ЭВМ), системе ЭВМ или их сети, если это деяние повлекло уничтожение, блокирование, модификацию либо копирование информации, нарушение работы ЭВМ, системы ЭВМ или их сети, - наказывается штрафом в размере от двухсот до пятисот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от двух до пяти месяцев, либо исправительными работами на срок от шести месяцев до одного года, либо лишением свободы на срок до двух лет.
3. То же деяние, совершенное группой лиц по предварительному сговору или ор-ганизованной группой, либо лицом с использованием своего служебного положения, а равно имеющим доступ к ЭВМ, системе ЭВМ или их сети, - наказывается штрафом в размере от пятисот до восьмисот минимальных размеров оплаты труда или в размере заработной платы, или иного дохода осужденного за период от пяти до восьми месяцев, либо исправительными работами на срок от одного года до двух лет, либо арестом на срок от трех до шести месяцев, либо лишением свободы на срок до пяти лет.
4. Статья 273. Создание, использование и распространение вредоносных программ дляЭВМ.
1. Создание программ для ЭВМ или внесение изменений в существующие про-граммы, заведомо приводящих к несанкционированному уничтожению, блокированию, модификации либо копированию информации, нарушению работы ЭВМ, системы ЭВМ или их сети, а равно использование либо распространение таких программ или машинных носителей с такими программами, - наказываются лишением свободы на срок до трех лет со штрафом в размере от двухсот до пятисот минимальных размеров оплаты труда или в размере заработной платы или иного дохода осужденного за период от двух до пяти месяцев.
2. Те же деяния, повлекшие по неосторожности тяжкие последствия, - наказываются лише-нием свободы на срок от трех до семи лет.
Статья 274. Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети.
1. Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети лицом, имеющим дос-туп к ЭВМ, системе ЭВМ или их сети, повлекшее уничтожение, блокирование или модифи-кацию охраняемой законом информации ЭВМ, если это деяние причинило существенный вред, - наказывается лишением права занимать определенные должности или заниматься оп-ределенной деятельностью на срок до пяти лет, либо обязательными работами на срок от ста восьмидесяти до двухсот сорока часов, либо ограничением свободы на срок до двух лет.
2. То же деяние, повлекшее по неосторожности тяжкие последствия, - наказывается лишени-ем свободы на срок до четырех лет.
7.2 Удаленные атаки на распределенные вычислительные системы
Как уже отмечалось ранее, основной особенностью любой распределенной системы является то, что ее компоненты распределены в пространстве и связь между ними физически осуществляется при помощи сетевых соединений и программно при помощи механизма со-общений. При этом все управляющие сообщения и данные, пересылаемые между объектами распределенной ВС, передаются по сетевым соединениям в виде пакетов обмена.
Итак, удаленные атаки можно классифицировать по следующим признакам:
1). По характеру воздействия
• пассивное (класс 1.1)
• активное (класс 1.2)
Пассивным воздействием на распределенную вычислительную систему назовем воз-действие, которое не оказывает непосредственного влияния на работу системы, но может нарушать ее политику безопасности. Именно отсутствие непосредственного влияния на работу распределенной ВС приводит к тому, что пассивное удаленное воздействие практически невозможно обнаружить. Примером пассивного типового удаленного воздействия в РВС служит прослушивание канала связи в сети.
Под активным воздействием на распределенную ВС будем понимать воздействие, оказывающее непосредственное влияние на работу системы (изменение конфигурации РВС, нарушение работоспособности и т. д.) и нарушающее принятую в ней политику безопасно-сти. Практически все типы удаленных атак являются активными воздействиями. Это свя-зано с тем, что в самой природе разрушающего воздействия содержится активное начало. Очевидной особенностью активного воздействия по сравнению с пассивным является принципиальная возможность его обнаружения (естественно, с большей или меньшей степенью сложности), так как в результате его осуществления в системе происходят определенные изменения. В отличие от активного, при пассивном воздействии не остается никаких следов (от того, что атакующий просмотрит чужое сообщение в системе, в тот же момент ничего не изменится).
2). По цели воздействия
• нарушение конфиденциальности информации либо ресурсов системы (класс 2.1)
• нарушение целостности информации (класс 2.2)
• нарушение работоспособности (доступности) системы (класс 2.3)
Этот классификационный признак является прямой проекцией трех основных типов угроз - раскрытия, целостности и отказа в обслуживании.
Основная цель практически любой атаки - получить несанкционированный доступ к информации. Существуют две принципиальные возможности доступа к информации: пере-хват и искажение. Возможность перехвата информации означает получение к ней доступа, но невозможность ее модификации. Следовательно, перехват информации ведет к наруше-нию ее конфиденциальности. Примером перехвата информации может служить прослушивание канала в сети .В этом случае имеется несанкционированный доступ к ин-формации без возможности ее искажения. Очевидно также, что нарушение конфиденциальности информации является пассивным воздействием.
Возможность искажения информации означает либо полный контроль над информа-ционным потоком между объектами системы, либо возможность передачи сообщений от имени другого объекта. Таким образом, очевидно, что искажение информации ведет к нару-шению ее целостности. Данное информационное разрушающее воздействие представляет собой яркий пример активного воздействия. Примером удаленной атаки, цель которой нару-шение целостности информации, может служить типовая удаленная атака (УА) "Ложный объект РВС" .
Принципиально другой целью атаки является нарушение работоспособности сис-темы. В этом случае не предполагается получение атакующим несанкционированного доступа к информации. Его основная цель - добиться, чтобы операционная система на атакуемом объекте вышла из строя и для всех остальных объектов системы доступ к ре-сурсам атакованного объекта был бы невозможен. Примером удаленной атаки, целью которой является нарушение работоспособности системы, может служить типовая УА "Отказ в обслуживании" .
3). По условию начала осуществления воздействия
Удаленное воздействие, также как и любое другое, может начать осуществляться только при определенных условиях. В распределенных ВС существуют три вида условий начала осуществления удаленной атаки:
• Атака по запросу от атакуемого объекта (класс 3.1)
В этом случае атакующий ожидает передачи от потенциальной цели атаки запроса определенного типа, который и будет условием начала осуществления воздействия.
• Атака по наступлению ожидаемого события на атакуемом объекте (класс 3.2)
В этом случае атакующий осуществляет постоянное наблюдение за состоянием опе-рационной системы удаленной цели атаки и при возникновении определенного события в этой системе начинает воздействие. Как и в предыдущем случае, инициатором осуществле-ния начала атаки выступает сам атакуемый объект. Примером такого события может быть прерывание сеанса работы пользователя с сервером в ОС Novell NetWare без выдачи коман-ды LOGOUT.
• Безусловная атака (класс 3.3)
В этом случае начало осуществления атаки безусловно по отношению к цели атаки, то есть атака осуществляется немедленно и безотносительно к состоянию системы и ата-куемого объекта. Следовательно, в этом случае атакующий является инициатором начала осуществления атаки.
4). По наличию обратной связи с атакуемым объектом
• с обратной связью (класс 4.1)
• без обратной связи (однонаправленная атака) (класс 4.2)
5). По расположению субъекта атаки относительно атакуемого объекта
• внутрисегментное (класс 5.1)
• межсегментное (класс 5.2)
Рассмотрим ряд определений:
Субъект атаки (или источник атаки) - это атакующая программа или оператор, непо-средственно осуществляющие воздействие.
Хост (host) - сетевой компьютер.
Маршрутизатор (router) - устройство, обеспечивающее маршрутизацию пакетов обме-на в глобальной сети.
Подсеть (subnetwork) (в терминологии Internet) - совокупность хостов, являющихся частью глобальной сети, для которых маршрутизатором выделен одинаковый номер под-сети. Подсеть - логическое объединение хостов маршрутизатором. Хосты внутри одной подсети могут взаимодействовать между собой непосредственно, минуя маршрутизатор.
Сегмент сети - физическое объединение хостов. Например, сегмент сети образуют со-вокупность хостов, подключенных к серверу по схеме "общая шина" . При такой схеме под-ключения каждый хост имеет возможность подвергать анализу любой пакет в своем сегмен-те.
С точки зрения удаленной атаки чрезвычайно важно, как по отношению друг к другу располагаются субъект и объект атаки, то есть в одном или в разных сегментах они находят-ся. В случае внутрисегментной атаки, как следует из названия, субъект и объект атаки нахо-дятся в одном сегменте. При межсегментной атаке субъект и объект атаки находятся в раз-ных сегментах. Данный классификационный признак позволяет судить о так называемой "степени удаленности" атаки. В дальнейшем будет показано, что на практике межсегмент-ную атаку осуществить значительно труднее, чем внутрисегментную. Важно отметить, что межсегментная удаленная атака представляет гораздо большую опасность, чем внутрисег-ментная. Это связано с тем, что в случае межсегментной атаки объект её и непосредственно атакующий могут находиться на расстоянии многих тысяч километров друг от друга, что может существенно воспрепятствовать мерам по отражению атаки.
6). По уровню эталонной модели ISO/OSI, на котором осуществляется воздейст-вие
• физический (класс 6.1)
• канальный (класс 6.2)
• сетевой (класс 6.3)
• транспортный (класс 6.4)
• сеансовый (класс 6.5)
• представительный (класс 6.6)
• прикладной (класс 6.7)
Международная Организация по Стандартизации (ISO) приняла стандарт ISO 7498, описывающий взаимодействие открытых систем (OSI). Распределенные ВС также являются открытыми системами. Любой сетевой протокол обмена, как и любую сетевую программу, можно с той или иной степенью точности спроецировать на эталонную семиуровневую мо-дель OSI. Такая многоуровневая проекция позволит описать в терминах модели OSI функ-ции, заложенные в сетевой протокол или программу. Удаленная атака также является сете-вой программой. В связи с этим представляется логичным рассматривать удаленные атаки на распределенные ВС, проецируя их на эталонную модель ISO/OSI.
7.3 Характеристика и механизмы реализации типовых удаленных атак
Понятие типовой удаленной атаки
Исследования и анализ информационной безопасности различных распределенных ВС продемонстрировали тот факт, что, независимо от используемых сетевых протоколов, топологии, инфраструктуры исследуемых распределенных ВС, механизмы реализации уда-ленных воздействий на РВС инвариантны по отношению к особенностям конкретной систе-мы. Это объясняется тем, что распределенные ВС проектируются на основе одних и тех же принципов, а, следовательно, имеют практически одинаковые проблемы безопасности; По-этому оказывается, что причины успеха удаленных атак на различные РВС одинаковы. Та-ким образом, появляется возможность ввести понятие типовой удаленной атаки.
Типовая удаленная атака- это удаленное информационное разрушающее воздействие, программно осуществляемое по каналам связи и характерное для любой распределенной ВС. Введение этого понятия в совокупности с описанием механизмов реализации типовых УА позволяет предложить методику исследования безопасности, инвариантную по отношению к виду распределенной ВС.
Методика заключается в последовательном осуществлении всех типовых удаленных воздействий в соответствии с предложенным далее их описанием и характеристиками. При этом основным элементом исследования безопасности РВС является анализ сетевого трафи-ка. Как пояснение последнего утверждения рассмотрим следующую аналогию: отладчик - основное средство для хакера, соответственно анализатор сетевого трафика - основное сред-ство для сетевого хакера. Анализатор сетевого трафика по своей сути является сетевым от-ладчиком. Итак, в качестве методики исследования информационной безопасности распре-деленной ВС предлагается выполнение ряда тестовых задач, оценивающих защищенность системы по отношению к типовым удаленным воздействиям.