Анализаторы сетевых потоков
Вы когда-либо задумывались о величине трафика, который интернет пропускает в течение каждого дня? Большинство людей сравнивают трафик в интернете с трафиком на скоростной магистрали крупного города, но это - не слишком точная аналогия. В то время как по скоростным магистралям люди и объекты обычно перемещаются от источника к месту назначения, интернет скорее напоминает сотни тысяч людей, находящихся на переполненной арене и обменивающихся друг с другом сообщениями. В действительности, когда вы подключаетесь к хосту в интернете, ваши данные редко идут непосредственно от вашего компьютера к компьютеру-адресату. Данные фактически пересекают несколько "промежуточных" пунктов, таких как маршрутизаторы, шлюзы, мосты и брандмауэры. Все эти устройства обрабатывают ваше сообщение, но так как сообщение адресовано не им, то предполагается, что они просто пропускают его.
Даже когда оба компьютера находятся в локальной сети (LAN), они не могут пропускать сообщения непосредственно друг другу. Например, если в локальной сети используется коммутатор, ваше сообщение должно быть послано непосредственно получателю и больше никому другому. Коммутаторы сетей Ethernet обладают достаточным интеллектом и определяют, MAC-адрес какого сетевого компьютера связан с каждым портом.
Но если в вашей сети используются хабы, то они не столь умны. Они не знают, какая машина связана с каким портом, поэтому они передают сообщение всем портам, надеясь, что истинный получатель сам о себе заявит и скажет: "О, это я". Другие порты, как предполагается, игнорируют сообщение, так как оно им не предназначено, но, тем не менее, они могут его слышать. Даже коммутаторы часто имеют, по крайней мере, один порт, сконфигурированный для получения копии каждого сообщения, которое ходит в округе (обычно, для административного контроля). Это означает, что возможности подслушивания или перехвата ваших сообщений другими людьми существуют в изобилии. В этой лекции рассказывается об инструментальных средствах, которые позволяют воспользоваться этими возможностями и обеспечить им достойное применение.
Обзор анализаторов сетевых потоков
Анализатор сетевых потоков ( Sniffer ) может слушать и записывать любые необработанные данные, которые проходят через или мимо физического (аппаратного) сетевого интерфейса. Они работают на очень низком уровне (то есть на уровне ядра или приложения уровня операционной системы), так, чтобы они могли связываться непосредственно с сетевым интерфейсом на понятном ему языке. Например, анализатор сетевого потока может приказать сетевому адаптеру (NIC) посылать ему копию каждого отдельного фрейма Ethernet, который прибывает на интерфейс независимо от того, чем этот фрейм является или куда он идет.
Поскольку анализатор сетевых потоков работает на канальном уровне (Data Link Layer) модели OSI, он не должен играть по правилам каких-либо протоколов более высокого уровня. Он обходит механизмы фильтрации (адреса, порты, сообщения и так далее), которые драйверы Ethernet и стек TCP/IP используют при интерпретации данных, приходящих "по проводу". Анализатор сетевых потоков захватывает из провода все. Он может хранить Ethernet-фреймы в двоичном формате и затем позже расшифровывать их, чтобы раскрыть информацию более высокого уровня, скрытую внутри.
Как и многие другие средства защиты, анализаторы сетевых потоков приобрели своего рода мистические свойства. Каждый о них слышал и осознает их мощь, но многие люди за пределами сообщества сетевой защиты думают, что анализаторы сетевых потоков относятся к черной магии, которая используется только хакерами, ворами и другими хулиганами. Анализаторы сетевых потоков в действительности представляют собой просто еще один инструмент (многие из них доступны для загрузки свободно - любому). Да, они могут использоваться для того, чтобы завладеть информацией и паролями, которые вам не принадлежат, но их можно также использовать для диагностики сетевых проблем или точного определения дефектной части IP-подключения.
Одна из причин, по которой анализаторы сетевых потоков стали не так опасны, как раньше, состоит в том, что теперь наиболее важные данные зашифрованы. Открытые, незашифрованные службы быстро исчезают из интернета. Люди, которые имели обыкновение использовать утилиту telnet для доступа к учетным записям командного интерпретатора shell при проверке своей электронной почты (то есть посылающие свои пароли открытым, нешифрованным текстом, который могут видеть все промежуточные маршрутизаторы, хабы и коммутаторы), теперь используют протокол Secure Shell (SSH), который шифрует каждую часть "telnet-подобного" сеанса. Люди, которые теперь заходят на Web-сайты, делают это по протоколу SSL (Secure Sockets Layer), который выполняет для Web-трафика то же, что SSH для telnet. Вместо посылки чувствительных данных (а также удостоверений для входа в систему) по FTP, пользователи используют SSL в таких программах, как Secure Copy (безопасное копирование) (scp) или Secure FTP (защищенный FTP) (sftp). Для других служб, которые не предлагают шифрование по умолчанию, могут использоваться виртуальные частные сети (VPN), чтобы установить поточечное шифрование между хостом клиента и удаленным шлюзом.
Итог такой: анализаторы сетевых потоков существуют, и мы знаем, что люди собираются злоупотреблять ими. Это ничем не отличается от прослушивания чужого телефона, наблюдения за чьей-либо комнатой или простого подслушивания разговора. Народ сует свой нос в ваши дела на регулярной основе. Вы должны принимать это во внимание. Если вы все еще передаете важные данные (Web-серфинг и загрузку общедоступной информации обычно можно делать открытым текстом) по интернету не зашифрованными, значит, вы заслуживаете то, что имеете.
Беспокоясь о возможности злонамеренного использования анализаторов сетевых потоков, помните следующее.
- Чтобы представлять какую-либо угрозу для вашей сети, анализаторы сетевых потоков должны находиться в вашей локальной сети или на известной посреднической точке (типа главного маршрутизатора) в интернете.
- Сегодняшние стандарты шифрования делают чрезвычайно трудным перехват чего-либо, имеющего отношение к делу, если вы действительно используете шифрование.
Переключаемые сети еще более затрудняют (но не делают невозможным, благодаря таким инструментальным средствам, как dsniff ) внутренним пользователям перехват данных в вашей сети без обнаружения перехвата.
Даже в этом случае, вероятно, не стоит опасаться анализаторов сетевых потоков. Да, они действительно могут помочь хакерам украсть жизненно важную информацию, но существует много методов и инструментальных средств, предназначенных для противодействия этому. Считайте анализаторы сетевых потоков просто одним из инструментов, понятным и простым, и посмотрите, какую пользу могут дать этически и морально благонадежные применения анализаторов в нашей повседневной жизни.