Анализирование локальной сети. Пассивный метод

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

Пассивный анализ сети заключается в анализе трафика, сборке пакетов, исходящих от узлов сети для определения их составляющих, активных соединений, работающих протоколов, используемых портов и т.п. Пассивный анализ сети очень легко определяется, однако он уже довольно долгое время является одним из самых распространённых методов для определения топологии сети и построения карт. Пассивный анализ также позволяет определить операционную систему, которая установлена на изучаемом хосте, посредством протокола TCP/IP. Для этого используется технология, которую впервые реализовал Майкл Залевский в своей утилите p0f v 2.0.8, она до сих пор активно используется многими сетевыми администраторами.


Теоретическая часть vs. практическая

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

 

По сравнению с активным методом анализа сети, пассивный имеет ряд преимуществ. Первым и, пожалуй, самым весомым является не генерирование "холостого трафика" в сети при анализе, что положительно сказывается на пропускной способности, особенно если она физически невелика. Также пассивный анализ не провоцирует системы обнаружения вторжений, т.к. работает, анализируя естественный трафик. Кроме того, он способен в некоторых случаях обнаруживать брандмауэры и даже охарактеризовывать хосты, находящиеся за ними. Однако при всех положительных сторонах имеются и недостатки, как же без них :). Пожалуй, главный недостаток - это сравнительно неудобное развёртывание системы анализа. Т.к. от администратора требуется расположить аппаратный или программный трафик таким образом, чтобы через него проходил полезный трафик, в противном случае ничего не получится.

Чтобы сложилось впечатление, посмотрим на программный анализатор трафика Ethereal, который призван существенно упростить анализ пакетов администратором сети. Программа быстро классифицирует пакеты и распределяет по группам. Также отлично реализованы фильтры, позволяющие сделать выборку пакетов, опираясь на определённые характеристики. Т.к. трафик анализируется впоследствии непосредственно системным администратором, то последнему необходимо знать то, какие, собственно, службы работают с какими портами, а иначе всё мероприятие будет бессмысленным.

Каждая служба обычно работает со стандартным для неё портом, такие порты назначаются Internet Assigned Numbers Authority и описаны в RFC для TCP/IP служб. Что касается протоколов не столь распространённых или вовсе используемых вредоносным программным обеспечением или взломщиками, то их изучить можно, прибегнув к помощи Internet Storm Center.

Ещё одна тонкость пассивного анализа заключается в разделении клиента и сервера. Это можно сделать, если обратиться к некоторой статистике спецификаций пакетов, исходящих от сервера. Обычно сервер шлёт пакеты на порт, принадлежащий службе. Например, если имеется TCP запрос и он отправлен на 80 порт, то, значит, вы имеете дело с web-сервером.

Имеется возможность получить некоторую информацию об инсталлированной на хост операционной системе. Это возможно благодаря тому, что TCP/IP fingerprinting работает практически идентично как в пассивном, так и в активном режимах. Возможность определить ОС даёт тот факт, что в различных системах по-разному реализован TCP/IP стек. Имеются четыре параметра, которые постоянно меняются, в зависимости от установленной операционной системы, к ним относятся: TOS, размер окна, TTL, DF. Именно анализ этих значений позволит нам судить о работающей на хосте операционке. Программа p0f 2.0 эти параметры расширяет и даёт ещё более точный и чёткий результат.

При повторном запуске p0f 2.0 мы получим результат обработки трафика web-сервера, который, как оказалось, работает на фрюше.


Что может

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

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

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

Пассивный анализ позволяет выявить неразрешённые службы и другие аномальные поведения пользователей в сети практически мгновенно. Простой сбор пакетов с помощью Ethereal или любой другой программы наблюдения за сетью будет определять наличие передачи потоков данных, открытых файлов в Peer-to-peer сетях, игровой активности и другие источники несанкционированного использования сети. Самый простой способ сделать это - использовать Ethereal с фильтром пакетов на определённый IP-адрес внутренней сети, а затем отсортировать по портам TCP или UDP. В большинстве случаев вы увидите общий набор служб, которые легко идентифицировать как благоприятные. Эти TCP-порты, как правило, используются операционными системами для работы в сети и типичными службами (DNS, FTP, HTTP и т.д.). Главное - это сравнить источники, определённые вами как авторизованные ресурсы, с полученными в результате пассивного анализа. В конце концов, почему бы Трояну не использовать порт 80 вместо произвольно выбранных эфемерных портов.

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


Exit

Несмотря на очевидные плюсы техники пассивного анализа, многие админы недолюбливают его из-за хлопотности. Словом, если же вам нужен анализ, то проведите активный с помощью, скажем, XSpider 7.5. Однако это немного не так выглядит, впрочем, я всё расписал. Выводы делайте сами.

Евгений КУЧУК,
SASecurity gr.,
sa-sec.org

Версия для печатиВерсия для печати

Номер: 

17 за 2009 год

Рубрика: 

Защита информации
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!