Сеть Internet представляет собой распределенную вычислительную систему, инфраструктура которой общеизвестна и хорошо описана в различной литературе, например [12]. Поэтому рассмотренные в п. 5.1 причины успеха удаленных атак на распределенные ВС можно спроецировать на сеть Internet и сделать вывод о существовании в данной сети серьезных пробелов в обеспечении безопасности, на которых базируются причины. Внимательный читатель, изучая предыдущие разделы, уже, наверное, мысленно осуществил проекцию и обратил внимание на то, как недостатки, присущие абстрактной распределенной ВС, легко обнаруживаются в реальной РВС - Internet.
Глобальная сеть не может быть построена по принципу прямой связи между объектами системы, то есть невозможно для каждого объекта обеспечить выделенный канал для связи с любым другим объектом системы. Поэтому в Internet связь осуществляется через цепочку маршрутизаторов, а, следовательно, сообщение, проходя через большое количество промежуточных подсетей, может быть перехвачено. Также к Internet подключено большое число локальных Ethernet-сетей, использующих топологию "общая шина" . В сетях с такой топологией несложно программно осуществлять перехват всех сообщений в сети. Однако данный недостаток присущ скорее не Internet, а Ethernet.
В Internet в базовых протоколах обмена идентификация и аутентификация объектов практически отсутствует. Так, в прикладных протоколах FTP и TELNET имена и пароли пользователей передаются по сети в виде открытых незашифрованных сообщений (п. 4.1). В существующем стандарте IPv4 протокол сетевого уровня - IP - не предусматривает никакой идентификации и аутентификации объектов (за исключением IP-адреса отправителя, подлинность которого, в свою очередь, невозможно подтвердить (п. 5.1.3-5.1.4)). Все проблемы с идентификацией разработчики переложили на следующий - транспортный - уровень. За этот уровень отвечают протоколы UDP и TCP. Протокол UDP не содержит в себе дополнительной идентифицирующей информации, однако используется для передачи управляющих (!) ICMP-сообщений (п. 4.4). Таким образом, единственным протоколом, приз-ванным обеспечить безопасность в Internet, является протокол TCP, взаимодействие с использованием которого осуществляется по виртуальному каналу.
Одной из особенностей сети Internet выступает взаимодействие объектов без создания виртуального канала. Очевидно, что разработчики планировали подобное взаимодействие в том случае, если оно не является критичным для системы и не требуется обеспечения его безопасности. Однако, как в случае управляющих ICMP-сообщений (которые уж никак не назовешь не критичными для системы!), так и в случае DNS-запросов используется связь без ВК. Это приводит к возможности осуществления УА, рассмотренных в п. 4.3 и 4.4.
Как уже подчеркивалось, протокол TCP является единственным базовым протоколом транспортного уровня сети Internet, в функции которого заложена защита соединения. Однако использование простейшего алгоритма идентификации объектов при создании виртуального TCP-канала (п. 4.5), особенно при условии применения в сетевых ОС простейших времязависимых законов генерации TCP-иден-тификаторов (ISN), сводят на нет все попытки обеспечения идентификации канала и объектов при их взаимодействии по протоколу TCP.
В существующем стандарте сети Internet невозможно обеспечить контроль за сетевыми соединениями, так как у одного субъекта сетевого взаимодействия существует возможность занять неограниченное число каналов связи с удаленным объектом и при этом остаться анонимным (п. 5.1.3). Из-за этого любой хост в сети Internet может быть полностью парализован (п. 4.6).
Невозможность контроля в сети Internet за виртуальными каналами обуславливается отсутствием в сети контроля за маршрутом сообщений, а именно, в существующем стандарте IPv4 невозможно по пришедшему на хост сообщению определить путь, через который оно прошло, следовательно, невозможно проверить подлинность адреса отправителя (п. 4.6).
Очевидно, что в глобальной сети невозможно обеспечить на каждом ее объекте наличие информации о любом другом объекте в сети. Поэтому, как говорилось ранее, необходимо использовать потенциально опасные алгоритмы удаленного поиска. В сети Internet используется по меньшей мере два алгоритма удаленного поиска: ARP и DNS. Удаленные атаки, направленные на эти протоколы см. в п. 4.2-4.3.
В существующих базовых протоколах семейства TCP/IP, обеспечивающих взаимодействие на сетевом-сеансовом уровнях, не предусмотрена возможность шифрования сообщений, хотя очевидно, что добавить ее в протокол TCP не составляло труда. Разработчики этих базовых протоколов решили переложить задачу криптозащиты на протоколы более высоких уровней, например, прикладного. При этом базовые протоколы прикладного уровня (FTP, TELNET, HTTP и др.) также не предусматривали никакого шифрования сообщений. Только недавно появился общедоступный прикладной протокол SSL, встроенный в Netscape Navigator, позволяющий как надежно зашифровать сообщение, так и подтвердить его подлинность (п. 7.2.2.1).
В заключении к этой главе хотелось бы заметить,
что все описанные выше причины, по которым
возможны удаленные атаки на сетевые соединения,
делают сеть Internet небезопасной. Поэтому, в
принципе, все пользователи этой сети пользуются
ее услугами на свой страх и риск и могут быть
атакованы в любой момент. В настоящее время
пользователи сети Internet в большинстве своем из-за
абсолютного непонимания источников и реальной
силы угроз находятся в постоянном беспокойстве.
Это напоминает тот вирусный бум, который был в
начале 90-х годов. Данная глава преследовала цель
объяснить и продемонстрировать исходящие из
сети Internet возможные угрозы и причины их
возникновения.
Диаграмма 2. Причины успеха удаленных атак
на распределенные вычислительные системы
и сеть Internet
|
|