Контроль портов средствами IPSec

Протокол IP Security (далее просто IPSec), начиная с Windows 2000, обладает одним замечательным свойством - помимо того, что он обеспечивает безопасную передачу данных, при помощи его фильтров можно контролировать исходящий и входящий трафик различных протоколов, в том числе ICMP (чего лишена TCP/IP фильтрация). Интересно, что использовать IPSec в качестве системы пакетной фильтрации впервые догадались бета-тестеры Windows 2000. И уже несколько позже Microsoft выпустила соответствующую документацию.

Для работы с IPSec нам нужно запустить оснастку "Локальные параметры безопасности" ("Пуск" > secpol.msc) и перейти к параметру "Политики безопасности IP".

По умолчанию определены три политики, они используются при выполнении запросов авторизации средствами IPSec (конечно, если вы пользуетесь данным протоколом). Но в любом случае трогать предопределенные политики не стоит, лучше создать собственную.

Коротко о структуре. Каждая политика состоит из списка фильтров, списков может быть несколько. Каждый список фильтров выполняет определенное действие.

Теперь сформулируем задачу: блокировать нежелательный исходящий трафик (с блокировкой входящего пусть справляется встроенный брандмауэр). Замечательным примером нежелательного исходящего трафика может являться троянский вирус, который посылает данные о вашем компьютере злоумышленнику.

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


Способ первый - что не запрещено, то разрешено

Суть в следующем: берем список портов, которые наиболее часто используются троянскими программами (см. врезку), и запрещаем исходящий трафик из них. Данная мера позволит защититься от неопытных компьютерных хулиганов, которые обычно не догадываются изменить стандартные порты в своих программах. К счастью, таких "хакеров" большинство.

Приступим. В оснастке "Локальные параметры безопасности" переходим к параметру "Политики безопасности IP". Создать новую политику можно правым щелчком мыши. В запустившемся мастере убираем "Использовать правило по умолчанию", следуем далее и в свойствах новой политики убираем галочку "Использовать мастер" - сами справимся. Жмем "Добавить", затем на закладке "Список фильтров" снова "Добавить" - и перед нами открывается окно списка фильтров. Теперь мы можем создавать и включать в список собственные фильтры, опять нажав кнопку "Добавить" (русификаторы XP наверняка никогда не слышали о синонимах), мы получаем такую возможность. Адрес источника пакетов устанавливаем в "Мой IP-адрес", адрес назначения - "Любой IP-адрес"; галочку "Отраженный" можно убрать, на то есть две причины: во-первых, на работу Windows c "отраженными" фильтрами есть нарекания, а во-вторых, с "незваными" пакетами из "Любого IP-адреса" справится брандмауэр.

Продолжаем настройку фильтра. Следуем на закладку "Протокол" и выбираем TCP (хотя многие трояны умеют работать и через UDP), устанавливаем значение "Пакеты из этого порта" в 31337 - тем самым мы заблокировали TCP-порт для легендарного Back Orifice. Так нужно сделать для каждого из троянов, никуда не денешься - чтобы потом не пришлось щелкать клювом, придется сейчас пощелкать мышью.

Создав нужное количество фильтров, выбираем для нашего списка действие "Запретить" - и все, политика готова. Назначить ее можно правым щелчком и выбором одноименного пункта в меню.


Способ второй - что не разрешено, то запрещено

Этот подход предназначен для серверов. В данном случае создается два списка фильтров (вообще-то они называются правилами безопасности): один - запретительный, а второй - разрешительный. Логика такова: сначала запрещаем все, а потом разрешаем только нужное.

Чтобы освоить второй способ, поговорим сначала о приоритетах в политике безопасности IP. По адресам приоритеты распределены так:

  1. Мой IP-адрес.
  2. Определенный IP-адрес.
  3. Определенная подсеть IP.
  4. Любой IP-адрес.

По протоколам ситуация выглядит следующим образом:

  1. Определенный протокол и определенный порт.
  2. Определенный протокол и любой порт.
  3. Любой протокол.

Фильтры выполняются в порядке следования приоритетов. То есть фильтр с наиболее общими параметрами выполняется самым последним, а фильтр с более конкретными параметрами - перед ним, тем самым его перекрывая.

Теперь за дело. Создаем фильтр, запрещающий все. Для этого в свойствах политики, когда создадим новый список, следует перейти на вкладку "Действия фильтра" и добавить новое нажатием "Добавить". В появившемся окне выбираем "Блокировать". Теперь это действие можно назначать запретительному списку фильтров. Собственно, в списке фильтр будет только один: источник пакетов - "Мой IP-адрес", адрес назначения - "Любой IP-адрес", протокол - "Любой". С запретами покончено.

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

На локальной машине нет смысла использовать описанный способ, поскольку в этом случае не будет возможности воспользоваться даже Internet Explorer, ведь он "вешается" не на один конкретный порт, а на любой из диапазона 1023-16384. По этой причине его невозможно разрешить.


Управление фильтрами из консоли

В Windows XP для управления фильтрами IPSec можно использовать утилиту командной строки ipsecCmd.exe (в Windows 2000 - ipsecpol.exe). Она не входит в стандартный комплект, но обладатели ХР найдут утилиту в Windows Support Tools.

Использование при настройке политик безопасности IP-утилит командной строки имеет смысл при написании сценариев, хотя вероятность допустить ошибку в этом случае выше, чем при использовании оснастки "Локальные параметры безопасности".

Более подробную информацию по работе с утилитами ipsecCmd.exe и ipsecpol.exe можно получить, указав ключ /?.

Дмитрий БАРДИЯН,
localgroup@tut.by


Порты, которые используют стандартные службы

DNS-сервер — 53-й порт протокола UDP.

Веб-сервер — 80-й порт TCP 80.

FTP — следующие порты протокола TCP: 20 и 21.

SMTP (для отправки писем) — порт TCP 25.

POP3 (для приема писем) — порт TCP 110.

IMAP (для приема писем) — порт TCP 143.

ICQ — обычно TCP порт 5190.


Порты, которые используют популярные трояны

TCP 21 - используется программами: Back Construction, Blade Runner, Doly Trojan, Fore, FTP Trojan, Invisible FTP, Larva, MBT, Motiv, Net Administrator, Senna Spy FTP Server, WebEx, WinCrash

TCP 23 - Tint Telnet Server, Truva Atl

TCP 25 - Ajan, Antigen, Email Password Sender, Gip, Haebu Coceda, Happy 99, I Love You, Kaung2, Pro Mail Trojan, Shtrilitz, Stealth, Tapiras, Terminator, WinPC, WinSpy

TCP 666 - Attack FTP, Back Construction, Cain & Able, NokNok, Satanz Backdoor, ServeU, Shadow Phyre

TCP 1243, 2773 - используется SubSeven

TCP 12345 - NetBus, GabanBus, X-Bill, Pie Bill Gates

TCP 12346 - NetBus 1.0, GabanBus, X-Bill

TCP 5000 - Bubbel, Back Door Setup, S ockets de Troie, Socket 23

TCP/UDP 31337 - Back fire, Back Orifice, Deep BO

TCP/UDP 31338 - Back Orifice, Deep BO

TCP 54320 - Back Orifice 2000

TCP 54321 - Back Orifice 2000, SchoolBus v1.6 и v2.0

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

Номер: 

04 за 2004 год

Рубрика: 

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

Комментарии

Аватар пользователя maxim kostyshin
Называется "из пушки, да по воробьям". IPSec предназначен для организации защищенного обмена.

Использованием возможностей настроек работы с IPSec для блокирования различных протоколов конечно можно. Однако, не являются убедительными аргументами 1) конкретный пример - "... устанавливаем значение "Пакеты из этого порта" в 31337 - тем самым мы заблокировали TCP-порт для легендарного Back Orifice. Так нужно сделать для каждого из троянов, никуда не денешься - чтобы потом не пришлось щелкать клювом, придется сейчас пощелкать мышью." и 2) приведенный в конце статьи перечень портов.

Решение для указанных случаев задачу может быть стандартным - фильтрация TCP/IP без IPSec.

Аватар пользователя d-mas
согласен, IPSec это не самое простое решение, скорее новаторское. но оно есть и работает в некоторых довольно больших сетях.

А фильтрация tcp/ip работает только для входящего трафика, наша задача же состояла в блокировки ИСХОДЯЩЕГО