Как провести аудит вашей сети с помощью анализа пакетов
Многие из нас не задумываются о том, что происходит в корпоративной сети. В основном это работа системного администратора компании. Дело в том, что системный администратор довольно часто не просматривает сами пакеты, занимаясь своими делами по администрированию сети. Практически единственный раз, когда они смотрят на фактические пакеты, это если есть проблема с сетью, и они считают, что она должна лежать на уровне протокола, то есть на уровне пакетов. Имея это в виду, факт заключается в том, что в этой огромной массе пакетов, летающих по вашей сети, скрываются несметные богатства.
Хотя зачем мне проводить аудит?
Какие проблемы беспокоят нас, специалистов по компьютерным сетям, в современной вычислительной среде? Что ж, для одного шпионского ПО, проникающего в корпоративную локальную сеть, это, безусловно, вызывает беспокойство. Шпионское ПО быстро становится все более и более опасным с течением времени. Борьба с этим вредителем быстро выходит на передний план. Недавний выпуск новых уязвимостей Internet Explorer также вызвал опасения по поводу возможных сетевых нарушений. Существует также скрытая угроза троянов и вездесущий вирус. Что общего у большинства из этих вещей? Все они будут «набирать номер дома», если вы позволите. После установки на компьютер пользователя они будут в той или иной форме отправлять данные обратно кому-либо. Это приведет к потоку пакетов через ваш пограничный шлюз. При творческом использовании фильтров bpf и битовых масок эти потоки трафика можно найти. Чуть позже в этой статье будет больше информации об этом.
Корпоративная локальная сеть имеет узкое место, через которое должен проходить весь трафик как входящий, так и исходящий. Это может быть пограничный маршрутизатор, пограничный шлюз или другой термин, под которым некоторые из вас могут его знать. За этим маршрутизатором обычно находится главный коммутатор, который, в свою очередь, иногда имеет множество вторичных коммутаторов, свисающих с него. Этот тип настройки распространен сегодня и имеет несколько приятных функций, которыми мы можем воспользоваться. Как я упоминал выше, эта узкая точка позволяет нам видеть весь входящий и исходящий трафик нашей сети. Имея это в виду, мы можем подключиться к этой настройке, а затем иметь возможность отслеживать весь входящий и исходящий трафик в сети следующим образом.
Как ты сделал это?
Что мы хотели бы сделать, так это подключить концентратор к порту span главного коммутатора, чтобы мы могли видеть всю сетевую активность, когда она выходит и входит в нашу сеть.
После того, как мы подключили наш концентратор к коммутатору, мы, в свою очередь, подключим все, что нам нравится, к самому концентратору. Это может быть система обнаружения вторжений или компьютер, используемый для сбора и хранения пакетов. По сути, вы можете подключить к этой точке подключения все, что вам нравится. Эта настройка идеальна и очень помогает контролировать состояние вашей сети.
Существует множество различных способов анализа трафика на уровне пакетов. Я лично поддерживаю tcpdump с добавлением к нему битовых масок. Для многих этот метод анализа не удобен для пользователя, и поэтому они предпочитают использовать графический интерфейс, такой как Ethereal. Все инструменты, выполняющие анализ пакетов, хороши для вас, но я бы посоветовал вам просто использовать tcpdump и битовые маски, пока вы не освоите их использование. Проще говоря, использование упомянутых инструментов командной строки поможет сохранить ваши навыки и позволит вам привыкнуть видеть пакеты в их исходном состоянии. В конце концов, мы хотим знать, что происходит с нашей сетью, посредством проверки пакетов. Чтобы оставаться в тонусе, вам нужно постоянно тренировать свои способности чтения пакетов, а это означает, что вы не должны использовать графический интерфейс! Есть очень немного вещей, которые вы не можете сделать в tcpdump, которые может сделать Ethereal. Если вы станете слишком зависимы от такого инструмента, как Ethereal, ваши навыки могут ухудшиться.
Инвентаризация
Теперь, чтобы вернуться к нашей миссии аудита нашей сети, мы должны сначала провести инвентаризацию услуг, предлагаемых сетью. Есть ли в корпоративной сети веб-сервер, ftp-сервер, веб-почта и какой тип базы данных используется? Общий доступ к файлам включен? На все эти вопросы необходимо ответить. Как только это будет сделано, вы правильно настроите свои сетевые службы и будете знать, что должно присутствовать в локальной сети. Поэтому все, что остается в отношении трафика, технически подозрительно. Это структурированный и логичный подход. Это также поможет вам сэкономить время при прочесывании собранного трафика.
Итак, теперь мы возвращаемся к фактическому использованию tcpdump и битовых масок, чтобы увидеть, что происходит. Ну, почти все известные сервисы (HTTP, SMTP POP3,…) работают на портах ниже 1024. Однако есть некоторые сервисы, которые работают выше этого диапазона, например SQL, который работает на порту 1433. Подавляющее большинство известных сервисов работать ниже 1024, хотя. Знание этого дает нам отправную точку для запуска некоторых простых фильтров для поиска определенной активности.
В настоящее время одной из основных угроз для корпоративной локальной сети является одноранговое программное обеспечение, которое многие сотрудники используют на своих рабочих станциях. Так уж получилось, что большинство этих P2P-приложений работают на эфемерных портах. Эфемерный порт — это тот, который начинается с 1025 и доходит до 65535. Имея в виду этот небольшой фрагмент информации, мы могли бы разработать фильтр bpf с битовой маской, отслеживающий любые попытки исходящего подключения на диапазоне портов, скажем, от 1025 и выше. Это позволило бы нам увидеть, работают ли в сети какие-либо P2P. Несмотря на то, что рабочие станции в вашей компании находятся за маршрутизатором и, возможно, за брандмауэром, вы все равно можете стать невольной «жертвой» программного обеспечения P2P. Все, что нужно сделать пользователю, это запустить это программное обеспечение для обмена файлами и начать поиск нужного файла. После обнаружения они скачивают его. Проблема с общими файлами P2P заключается в том, что они часто заражены различными вредоносными программами. Таким образом, ваша в остальном безопасная сеть теперь, вполне возможно, была скомпрометирована изнутри.
Написание фильтра с указанными выше критериями (поиск соединений в эфемерном диапазоне портов) позволит легко выбрать рассматриваемые пакеты, если они присутствуют. Хотя для этого требуется, чтобы вы регистрировали все входящие и исходящие пакеты из вашей сети. Регистрация всех пакетов, проходящих через вашу сеть, не такая сложная задача, как вы можете подумать. Многие компании просто регистрируют все пакеты в течение часа, а затем при необходимости сжимают содержимое для последующей проверки. Это сделано для экономии места на диске.
Если мы будем следовать тем же параметрам, которые я описал для однорангового приложения, и как его обнаружить, мы можем легко изменить его для поиска других типов нежелательного трафика. Шпионское ПО в зависимости от типа будет действовать во многом одинаково, и поэтому его можно обнаружить с помощью одних и тех же методов. И наоборот, если вы считаете, что могли быть скомпрометированы, и хотите просмотреть известный диапазон портов (порты от 0 до 1024) для действий, отличных от предлагаемых услуг, вы все равно можете использовать для этого фильтр bpf. Проектирование требует лишь немного больше усилий, но вы можете просто исключить известные службы и проверить активность известного диапазона портов.
Дополнительным преимуществом такого аудита сети является то, что он расширяет ваши знания о TCP/IP и, в частности, о самих основных протоколах; TCP, UDP, IP и ICMP. Чем больше вы знаете набор протоколов TCP/IP, тем лучше вы сможете использовать этот исследовательский метод. Итак, теперь мы знаем, что аудит наших сетей на уровне пакетов не только очень возможен, но и, я бы сказал, определенно желателен.
Для получения дополнительной информации о фильтрации пакетов IDS:
http://www.onlamp.com/pub/a/security/2004/06/17/ids_filtering.html