Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Обзор внутреннего устройства TCP/IP

Введение в Интернет и безопасность в нем

 План

Интернет

 Обзор внутреннего устройства TCP/IP

 Проблемы, связанные с безопасностью

 Насколько уязвимы сети организаци в Интернете?

Хотя присоединение к Интернету предоставляет огромные выгоды в виде доступа к колоссальному объему информации, оно не обязательно является хорошим решением для организаций с низким уровнем безопасности. Интернет страдает от серьезных проблем с безопасностью, которые, если их игнорировать, могут привести к ужасным последствиям для неподготовленных сетей. Ошибки при проектировании сервисов TCP/IP, сложность конфигурирования хостов, уязвимые места, появившиеся в ходе написания программ, и ряд других причин в совокупности делают неподготовленные сети открытыми для деятельности злоумышленников и уязвимыми к связанными с этим проблемам.

Следующие пункты кратко описывают Интернет, TCP/IP, а затем рассказывают о некоторых проблемах безопасности в Интернете и причинах, делающих достаточно серьезными.

Интернет

Интернет - это всемирная сеть сетей, которая использует для взаимодействия стек протоколов TCP/IP. Вначале Интернет был создан для улучшения взаимодействия между научными организациями, выполнявшими работы в интересах правительства США. В течение 80-х годов к Интернету подключились образовательные учреждения, государственные организации, различные американские и иностранные фирмы. В 90-е годы Интернет переживает феноменальный рост, причем увеличение числа соединений превышает все темпы, имевшие место ранее. Теперь к Интернету присоединены многие миллионы пользователей, причем только половина из них коммерческие пользователи[Cerf93]. Сейчас Интернет используется как основа для Национальной Информационной Инфраструктуры(NII) США.

Типовые сервисы

Существует ряд сервисов, связанных с TCP/IP и Интернетом. Наиболее распространенным сервисом является электронная почта, реализованная на базе протокола SMTP(Простой Протокол Передачи Писем). Также широко используются TELNET(эмуляция удаленного терминала) и FTP(протокол передачи файлов). Помимо них существует ряд сервисов и протоколов для удаленной печати, предоставления удаленного доступа к файлам и дискам, работы с распределенными базами данных и организации других информационных сервисов. Далее приводится краткий список наиболее распространенных сервисов:

· SMTP - Простой протокол передачи почты, используется для приема и передачи электронной почты

· TELNET - используется для подключения к удаленным системам, присоединенным к сети, применяет базовые возможности по эмуляции терминала

· FTP - Протокол передачи файлов, используется для приема или передачи файлов между системами в сети

· DNS - Служба сетевых имен, используется TELNET, FTP и другими сервисами для трансляции имен хостов в IP адреса.

· информационные сервисы, такие как

o gopher - средство поиска и просмотра информации с помощью системы меню, которое может обеспечить дружественный интерфейс к другим информационным сервисам

o WAIS - глобальный информационный сервис, используется для индексирования и поиска в базах данных файлов

o WWW/http - Всемирная Паутина, объединение FTP, gopher, WAIS и других информационных сервисов, использующее протокол передачи гипертекста(http), и программы Netscape, Microsoft Internet Explorer и Mosaic в качестве клиентских программ.

· сервисы на основе RPC - сервисы на основе Удаленного Вызова Процедур, такие как

o NFS - Сетевая файловая система, позволяет системам совместно использовать директории и диски, при этом удаленная директория или диск кажутся находящимися на локальной машине

o NIS - Сетевые Информационные Сервисы, позволяют нескольким системам совместно использовать базы данных, например файл паролей, для централизованного управления ими

· Система X Windows - графическая оконная Среда и набор прикладных библиотек, используемых нарабочих станциях

· rlogin, rsh и другие r-сервисы - реализуют концепцию доверяющих друг другу хостов, позволяют выполнять команды на других компьютерах, не вводя пароль

Хотя сервисы TCP/IP могут в равной степени использоваться как в локальных сетях, так и в глобальных сетях, в локальных сетях, как правило, применяется совместное использование файлов и принтеров, а электронная почта и удаленный терминальный доступ - в обоих случаях. С каждым годом возрастает популярность gopher и www. Оба этих сервиса приводят к возникновению проблем для разработчиков брандмауэров и будут рассмотрены в следующих главах.

Хосты в Интернете

На многих системах, подключенных к Интернету, работает одна из версий ОС Unix. Впервые TCP/IP был реализован в начале 80-х годов в версии Unix, написанной в университете в Калифорнии в Беркли, известной как BSD(Berkeley Software Distribution). Многие современные версии Unix позаимствовали тексты сетевых программ из этой версии, поэтому Unix обеспечивает более или менее стандартный набор сервисов TCP/IP. Это привело к тому, что много различных версий Unixа имеют одни и те же уязвимые места, правда, это также привело к целесообразности широкого применения стратегий брандмауэров, таких как фильтрация IP. Следует отметить, что исходные тексты BSD UNIX можно легко получить в ряде Интернетовских серверов, поэтому как хорошие, так и плохие люди могут изучить тексты программ и найти в них потенциальные уязвимые места и использовать их для проникновения.

Хотя Unix и является наиболее распространенной ОС в Интернете, к нему присоединено много различных типов компьютеров с другими ОС, включая системы с DEC VMS, NeXT, MVS и ОС персональных компьютеров, такие как DOS, Microsoft Windows, Windows'95, Windows NT и Apple. Хотя персональные компьютеры обеспечивают только клиентскую часть сервисов, то есть, используя TELNET, можно подключиться с персонального компьютера, но не к персональному компьютеру, все возрастающая мощность ПЭВМ начинает также обеспечивать предоставление тех же сервисов, которые сейчас предоставляются большими компьютерами, только гораздо дешевле. Версии Unix для ПЭВМ, включая Linux, FreeBSD и BSDi, а также другие ОС, такие как Microsoft Windows NT, могут сейчас обеспечить те же самые сервисы и приложения, которые ранее были только на больших системах. Следствием этого является то, что сейчас полный набор сервисов TCP/IP используется небывалым количеством людей. Хотя это и хорошо в том смысле, что сетевые сервисы стали общедоступны, отрицательные последствия заключаются в возникновении огромных возможностей для совершения преступлений у злоумышленников(а также у неграмотных пользователей, которые в некоторых случаях могут рассматриваться как вид злоумышленников).

Обзор внутреннего устройства TCP/IP

Этот раздел содержит краткое описание TCP/IP в объеме, достаточном для последующего обсуждения проблем безопасности, связанных с Интернетом. [Com91a],[Com91b],[Hunt92] и [Bel89] содержат гораздо более подробное описание; читатели, которые хотят получить более глубокое представление, должны обратиться к этим источникам.

Отчасти популярность стека протоколов TCP/IP объясняется возможностью его реализации на базе большого числа разнообразных каналов и протоколов канального уровня, таких как T1 и Х.25, Ethernet и линии RS-232. Большинство организаций использует в своих ЛВС Ethernet для объединения хостов и клиентских систем, а затем присоединяет эти сети с помощью T1 к региональной сети. (например, региональной магистральной сети TCP/IP), которая соединяет в свою очередь с сетями других организаций и другими магистральными каналами. Как правило, организации имеют одно соединение с Интернетом, но большие организации могут иметь два и более соединений. Скорости модемов увеличиваются по мере появления новых коммуникационных стандартов, поэтому версии TCP/IP, которые работают в среде коммутируемых телефонных каналов, становятся все более популярными. Многие организации и просто отдельные люди используют PPP (Point-to-Point Protocol) и SLIP (Serial Line IP) для подключения своих сетей и рабочих станций к другим сетям, используя телефонные каналы.

Если говорить строго, то TCP/IP - это стек протоколов, включающий TCP, IP, UDP (User Datagram Protocol), ICMP (Internet Control Message Protocol), и ряд других протоколов. Стек протоколов TCP/IP не соответствует модели взаимодействия открытых систем (ВОС), и его структура показана на рисунке 1.1

IP

Уровень IP получает пакеты, доставлемые нижними уровнями, например драйвером интерфейса с ЛВС, и передает их лежащим выше уровням TCP или UDP. И наоборот, IP передает пакеты, полученные от уровней TCP и UDP к нижележащим уровням.

Пакеты IP являются дейтаграмами с негарантированной доставкой, потому что IP ничего не делает для обеспечения гарантии доставки пакетов IP по порядку и без ошибок. Пакеты IP содержат адрес хоста, с которого был послан пакет, называемый адресом отправителя, и адрес хоста, который должен получить пакет, называемый адресом получателя.

Высокоуровневые сервисы TCP и UDP при приеме пакета предполагают, что адрес отправителя, указанный в пакете, является истинным. Другими словами, адрес IP является основой для аутентификации во многих сервисах; сервисы предполагают, что пакет был послан от существующего хоста, и именно от того хоста, чей адрес указан в пакете. IP имеет опцию, называемую опция маршрутизации источника, которая может быть использована для для указания точного прямого и обратного пути между отправителем и получателем. Этот путь может задействовать для передачи пакета маршрутизаторы или хосты, обычно не использующиеся для передачи пакетов к данному хосту-получателю. Для некоторых сервисов TCP и UDP пакет IP c такой опцией кажется пришедшим от последней системы в указанном пути, а не от своего истинного отправителя. Эта опция появилась в протоколе для его тестирования, но [Bel89] отмечает, что маршрутизация источника может использоваться для обмана систем с целью установления соединения с ними тех хостов, которым запрещено с ними соединяться. Поэтому, то, что ряд сервисов доверяют указанному IP-адресу отправителя и полагаются на него при аутентификации, очень опасно и может привести к проникновению в систему.

TCP

Если IP-пакеты содержат инкапсулированные пакеты TCP, программы IP передадут их вверх уровню TCP. TCP последовательно нумерует все пакеты и выполняет исправление ошибок, и реализует таким образом виртуальные соединения между хостами. Пакеты TCP содержат последовательные номера и подтверждения о приеме пакетов, поэтому пакеты, принятые не в порядке передачи, могут быть переупорядочены, а испорченные пакеты повторно посланы.

TCP передает полученную информацию приложениям верхнего уровня, например клиенту или серверу TELNETа. Приложения, в свою очередь, передают информацию обратно уровню TCP, который передает ее ниже уровню IP, после чего она попадает к драйверам устройств, в физическую среду и по ней передается до хоста-получателя. Сервисы с установлением соединения, такие как TELNET, FTP, rlogin, X Windows и SMTP требуют надежности и поэтому используют TCP. DNS использует TCP только в ряде случаев(для передачи и приема баз данных доменных имен), а для передачи информации об отдельных хостах использует UDP.

UDP

Как показано на рисунке 1.1, UDP взаимодействует с прикладными программами на том же уровне, что и TCP. Тем не менее, он не выполняет функции исправления ошибок или повторной передачи потерянных пакетов. Поэтому UDP не используется в сервисах с установлением соединения, которым требуется создание виртуального канала. Он применяется в сервисах типа запрос-ответ, таких как NFS, где число сообщений в ходе взаимодействия гораздо меньше, чем в TELNET и FTP. В число сервисов, использующих UDP, входят сервисы на базе RPC, такие как NIS и NFS, NTP(протокол сетевого времени) и DNS(также DNS использует TCP).

Пакеты UDP гораздо проще подделать, чем пакеты TCP, так как нет этапа установления соединения(рукопожатия).[Ches94]. Поэтому с использованием сервисов на базе UDP сопряжен больший риск.

ICMP

ICMP (Протокол межсетевых управляющих сообщений) находится на том же уровне, что и IP; его назначение - передавать информацию, требуемую для управления траффиком IP. В-основном, он используется для предоставления информации о путях к хостам-получателям. Сообщения ICMP redirect информируют хосты о существовании боле коротких маршрутов к другим системам, а сообщения ICMP unreachable указывает на наличие проблем с нахождением пути к получателю пакета. Кроме того, ICMP может помочь корректно завершить соединение TCP, если путь стал недоступен. PING является широко распространенным сервисом на базе ICMP.

[Bel89] рассматривает две проблемы с ICMP: старые версии Unix могут разорвать все соединения между хостами, даже если только одно из них столкнулось с проблемами. Кроме того, сообщения о перенаправлении пути ICMP могут быть использованы для обмана маршрутизаторов и хостов с целью заставить их поверить в то, что хост злоумышленника является маршрутизатором и пакеты лучше отправлять через него. Это, в свою очередь, может привести к тому, что атакующий получит доступ к системам, которым не разрешено иметь соединения с машиной атакующего или его сетью.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...