18.10.2005

Программные Межсетевые экраны против Wormhole тоннелей

image

 Аппаратные и программные межсетевые экраны (МСЭ) обещают защитить вашу систему и сеть от опасностей Интернета, но реально - эффективны ли они против современных атак? Эта статья представляет некоторые значительные различия между аппаратными и программными МСЭ и иллюстрирует реальные испытания, с которыми сталкиваются  производители программных МСЭ.

 Аппаратные и программные межсетевые экраны (МСЭ) обещают защитить вашу систему и сеть от опасностей Интернета, но реально - эффективны ли они против современных атак? Эта статья представляет некоторые значительные различия между аппаратными и программными МСЭ и иллюстрирует реальные испытания, с которыми сталкиваются  производители программных МСЭ.

Софт против железа

Существует много различных видов МСЭ для удовлетворения различных нужд пользователей. Есть специализированные аппаратные МСЭ – устройства, такие как, например, Cisco PIX, снабженные диодами, обеспечивающие безопасность целых сетей. Также существуют специализированные программные МСЭ, такие как CheckPoint/ipchains/iptables/ipf/pf, устанавливаемые на надежных платформах,  используемые как шлюзы, и обеспечивающие сетевую безопасность конечных сетей. Наконец, есть целое поколение «персональных» МСЭ, которые разрабатываются для работы  непосредственно на рабочих станциях и серверах.

Как программные, так и аппаратные специализированные МСЭ обычно обеспечивают, по меньшей мере, одну функцию - одновременную фильтрацию по ip-адресам и портам. Некоторые продукты, помимо базовых, поддерживают дополнительные функции – например функции обнаружения (IDS) и предотвращения (IPS) вторжений. Персональные МСЭ стоят  на ступеньку выше, помимо вышеперечисленных функций, они обладают возможностью блокировки активных приложений. 

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

Опасность персональных МСЭ (и другого специализированного ПО)

Несмотря на то, что специализированные и персональные МСЭ обычно управляются схожими методами, персональные МСЭ более привлекательны для ИТ-департаментов по способу развертывания и контроля. Однако, локальные пользователи с административными привилегиями – не самая маловероятная ситуация в большинстве отделов, с установленной Microsoft Windows – смогут останавливать и запускать МСЭ когда угодно. Подобным образом  пользователи с достаточными привилегиями или использующие злонамеренные программы, эксплуатирующие уязвимости в операционных системах, могут устанавливать софт, позволяющий управлять МСЭ. В ситуации, когда пользователь извещается о потенциальной опасности (обычно извещение в виде всплывающего окна), он автоматически обычно выбирает «allow» (разрешить), боясь потерять свободу действий при работе в сети или вебсерфинге. Это самые распространенные виды ошибок, используя которые различного рода вирусы и черви распространяются через e-mail, а шпионские программы попадают в систему через уязвимости в браузере.

С тех пор, как большинство крупных компаний стало задумываться о стоимости поддержки,  они стали менее расположены к установке персональных МСЭ, сконфигурированных на оптимальный режим работы. В большинстве случаев МСЭ работают, используя базовые политики, способные оградить систему настолько, чтоб не мешать основным функциям бизнеса. Таким образом, если большинство стандартного Интернет-трафика (web, e-mail) блокируется по стандартным правилам,  резко увеличивается  опасность проникновения в сеть вредоносных программ.

Большинство персональных МСЭ работают как вышибалы в ночном клубе – они часть системы, они следят внимательно за людьми, которые входят, и знают - кто выходит. Но какими внимательными бы они не были, разве могут они видеть ВСЁ? Разве станут они задерживать клиента, укравшего что-нибудь, и спрятавшего это в кармане? Будет ли вышибала сортировать, подгонять под некий профиль клиентов, за которыми надо следить, или которые могут беспрепятственно находиться внутри?

В большинстве своем персональные МСЭ работают как приложения или как объединенный (приложение/ядро) компонент, который, находится в системе и наблюдает за тем, что передает ему сетевая компонента ядра. Как бармен, операционная система сама в реальности не  имеет никакого отношения к  тому, что происходит (помните, предоставлять доступ – работа вышибалы?). Если хоть кому-то удастся выскользнуть из поля зрения вышибал и получить прямой доступ к бару, вскоре бар может оказаться пустым. Практически, вопрос звучит так: возможно ли, чтоб сетевой трафик, проходящий через систему, был бы незаметен для персонала, или для специализированного программного МСЭ? Ответ однозначен – да!

Wormhole-tunneling с помощью PCAP

PCAP – это библиотека, созданная для обеспечения приложений возможностью доступа к сетевым интерфейсам, использующая стандартный API и направленный захват пакетов. Возможно, наиболее общий пример этого - программа Ethereal. Ethral – мультиплатформенный пакетный сниффер и анализатор протоколов, с открытым исходным кодом. С её помощью можно получить сырой вид  того, что приходит и уходит с ПК. Следующий сценарий использует только Etheral для демонстрации того, как банально обойти программный МСЭ.

Сценарий 1

Потребуется машина с установленной Windows 2000/XP/2003 или BSD/Linux, а так же установленным и настроенным  МСЭ на ваш вкус, либо МСЭ поставляемым в комплекте с ОС (большинство BSD/OS X/Linux систем, а так же последние версии Windows комплектуются встроенными МСЭ). Сконфигурируйте МСЭ так, чтобы он блокировал весь входящий TCP и UDP трафик и подключите компьютер к сети. Установите Ethereal (потребуется также уcтановить libpcap) и запустите его. Если машина подключена к свитчу, весь трафик с заголовками от и к ней будет виден вместе с широковещательным трафиком. Если машина подключена к хабу, весь сетевой трафик будет виден.

Теперь вопрос, если МСЭ блокирует все входящие пакеты TCP и UDP, как мы можем видеть сетевой трафик? Элементарно, Ethereal просматривает пакеты перед тем, как они достигают МСЭ. Проведите полное сканирование портов ОС с помощью утилиты nmap  – ничего не получится! Если МСЭ использует один из механизмов активной защиты, он обнаружит и пресечёт подобное сканирование, даже  если политика блокировки входящего трафика не была запущена. Однако поводом к размышлению остается тот факт, что Ethereal продолжает видеть входящий трафик.

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

Для изучения отправки пакетов рассмотренным выше способом с помощью библиотеки libcap можно посмотреть документ Sending Packets with libcap. Исходящий трафик проходит полностью под МСЭ.

 Незащищенность в пути.

До сих пор внимание данной статьи не выходило за границы программных МСЭ, однако в этом сценарии мы рассмотрим добавление VPN, ибо многие «сетевые борцы» собирают комбинации из МСЭ и VPN для того, чтобы использовать ресурсы в домашних сетях, и в то же время обеспечивать защиту передающихся данных. Давайте взглянем на сценарий.

Сценарий 2

Если у вас есть VPN-клиент, добавьте его к конфигурации, описанной в первом сценарии. Удостоверьтесь, что запрещён split tunneliung (расщепленное туннелирование) для того, чтоб убедиться, что весь трафик форсируется через VPN соединение. Запустите Etheral и проведите nmap – сканирование адреса локального сетевого интерфейса (не VPN адреса). Трафик, который по предположению должен был блокироваться как МСЭ, так и программным обеспечением VPN, или, по крайней мере, должен был быть «невидимым» для программного обеспечения VPN – полностью доступен на PCAP-уровне.

В конфигурации VPN, большинство персональных МСЭ конфигурируются на сброс защиты (потому что весь трафик имеет заголовки к и от доверенного устройства), таким образом, VPN клиент фактически обуза, потому что нет нужды использовать libpcap для исходящего wormhole-tunnel – канала. МСЭ благополучно игнорирует любые пакеты, используемые злонамеренной, и они проходят без фильтрации через «защищённое» VPN соединение.

Эмуляция ненадежности.

Создание и использование wormhole-tunnel – канала не ограничивается внедрением злонамеренных программ, будь то вирусы, черви, или программы – шпионы. В следующем сценарии рассмотрим, как можно легально (и наиболее жестоко) обойти МСЭ без использования libcap.

Сценарий 3

Загрузите VMWare для эмуляции Linux –окружения в Windows. Сконфигурируйте  программу так, чтоб эмулировать  сеть в режиме моста.

С блокировкой МСЭ, запустите nmap – сканирование обоих ip адресов компьютера и ip адреса эмулированного окружения. МСЭ заблокирует сканирование ПК, однако эмулированное окружение охотно ответит на запрос, как показано на рисунке 1.

Рисунок 1. VMWare пример.

Эмулированное окружение использует схожие технологии для «обхода» МСЭ и использует низкоуровневый сетевой доступ ядра для выполнения своих функций. В примере на рисунке 1 у эмулятора VMWare ip адрес192.168.0.7, а хост ПК имеет адрес192.168.0.4. Сканирование проводилось с адреса 192.168.0.2, а МСЭ, запущенный на 192.168.0.4, показывает заблокированные попытки сканирования.

Ниже, рисунок 2 иллюстрирует результаты nmap-сканирования  VMWare – клиента.

 

Рисунок 2. Nmap-сканирование  VMWare - клиента.

В обоих последних сценариях (втором и третьем) присутствовала комбинация, когда установка включала рабочую станцию с VPN–соединением (split tunneling отключен) и запущенный VMWare клиент. Пока работал VPN, VMWare  сессия имела полный доступ к локальной сети. При помощи некоторых конфигурационных настроек, и незначительного скриптинга, VMWare клиент смог выступать как «мост» между локальной сетью и сетью VPN – до некоторой степени то, что должно было быть отключено при отключенном split туннелировании.

Защита систем/сетей с помощью (и от) PCAP

Существуют разумные применения библиотеки libcap, далекие от традиционных пакетных снифферов, которые помогают защищать сети от атак. Четвертый сценарий – пример таких применений.

Сценарий 4

Соберите BSD/OSX/Linux систему с МСЭ, настроенным на блокировку всего входящего ssh трафика (используемого для управления системой). Установите Short (http://www.snort.org/) IDS, которая основана на libcap, а затем натравите IDSwakeup  на систему. Было бы неплохой идеей – обновить сигнатуры IDSwakeup последними версиями snort-сигнатур для более тщательной проверки. Snort-сигнатуры обнаруживают и логируют попытки вторжений, предпринимаемые несмотря на тот факт, что МСЭ блокирует весь входящий трафик. Это представляет механизм создания довольно безопасных Snort IDS систем, не скрывая их от наблюдаемой сети.

Несмотря на пользу программ, основанных на библиотеке libcap, есть несколько правил, которые должны быть соблюдены для защиты от злонамеренных wormhole-tunnel каналов.

  • Ограничьте административные права.

Библиотека libcap, и другие схожие с ней, могут быть установлены в систему только с правами администратора. Если пользователям Windows недоступны административные права, вероятность libcap–эксплоита  резко сходит на нет. Однако, необновляемые системы, имеющие дыры в защите, подвержены риску заражения.

  • Настройте ограничения по приложениям в персональном МСЭ

Большинство персональных МСЭ позволяют администраторам формировать лист доверенных или запрещённых приложений. Microsoft Windows 2000 и более поздние версии Microsoft Windows имеют встроенные средства программного ограничения, а также политики  безопасности. Если это возможно, конфигурируйте рабочие станции так, чтобы доверенными были только те приложения, которые пользователь использует в своей повседневной работе.

  • Наблюдайте за использованием приложений.

Используйте  утилиты, такие как Altiris или Systems Management Server (SMS) от Microsoft для регулярного сканирования и записи логов на предмет всех установленных, исполняемых, и посторонних библиотек, таких как libcap. Регулярно просматривайте отчеты логов для уверенности в том, что только доверенные приложения установлены в системах.

Разработка Microsoft  - Malicious Software Removal tool  а также их утилита AntiSpyware, могут быть так же использованы для сканирования на предмет вредоносных библиотек и программ, которые их используют, и блокирования этих программ, или занесения их в черный список и обработки в дальнейшем.

  • Используйте Системы Обнаружения Вторжений (СОВ) для многоуровневой защиты.

Когда системы, подверженные риску, находятся внутри сети, хорошо организованная и постоянно контролируемая СОВ способна обнаружить подозрительное использование сетевых ресурсов и определенно точно распознать известные сигнатуры вредоносного сетевого трафика.

Заключение.

Вследствие того, что атаки становятся более изощренными, традиционный многосторонний подход к безопасности будет становиться более и более решающим для обеспечения целостности систем и сетей. Wormhole – туннеллинг способствует увеличению числа т.н. «зомби»-машин в сети (около миллиона компьютеров «зомбированы» на сегодняшний день) в дальнейшем, из-за возможности обхода неконтролируемых защитных механизмов. Очень важным является регулярное информирование пользователей обо всех опасностях, с которыми они могут столкнуться выходя в сеть, а так же о стратегии защиты развернутых систем. Подходы, описанные в этой статье, помогут вам защитить сеть от некоторых угроз.

  

или введите имя

CAPTCHA