Совсем недавно я посвятила несколько недель тестированию базы релиз-кандидата (RC) Windows Server 2003 из комплекта Microsoft Small Business Server (SBS) 2003. Одна из задач тестирования состояла в оценке эффективности программного обеспечения RRAS Firewall. Наличие брандмауэра - это новая возможность Windows 2003. В базовом брандмауэре используется расширенная версия аналогичного программного обеспечения, которое Microsoft впервые реализовала в Windows XP. В моей тестовой системе установлено два сетевых адаптера, один для внутренней сети и один - для выхода в Internet. Я активизировала RRAS Basic Firewall для внешнего сетевого адаптера и настроила сервер на работу с входящей и исходящей почтой SMTP, причем разрешила обращения к внутреннему Web-сайту и Remote Web Workplace как со стороны надежных узлов браузеров, так и со стороны ненадежных, а также настроила базовый брандмауэр на работу по протоколам VPN PPTP и Layer Two Tunneling Protocol (L2TP). В прилагаемой к RC документации утверждается, что система открывает следующие порты:

  • Обмен почтой - порт 25 TCP

  • Доступ из браузера -TCP порт 80

  • Защищенный доступ из браузера -TCP порт 443

  • Соединения по VPN L2TP - UDP порт 1701

  • Соединения по VPN PPTP -TCP порт 1723

  • Доступ к Remote Web Workplace -TCP порт 4125

Я провела тестирование брандмауэра с помощью превосходной утилиты сканирования портов Nmapwin, свободно распространяемой в рамках GNU General Public License (GPL). Nmapwin может прозондировать порты TCP и UDP по протоколу Internet Control Message Protocol (ICMP) или без его участия. По умолчанию Nmapwin анализирует только хорошо известные порты от 1 до 1593, но чтобы провести глубокий анализ любого брандмауэра, вам следует просканировать все имеющиеся TCP- и UDP-порты, от 1 до 65000. Я запустила две процедуры сканирования на сетевом адаптере, подключенном к Internet, - одну для портов TCP и одну для портов UDP. Из документации следовало, что брандмауэр допускал бы входящий трафик только через перечисленные выше порты, может быть, еще через несколько, но никак не более чем через 10 TCP-портов и через 3-4 UDP-порта. Каково же было мое удивление, когда сканер TCP доложил, что базовый брандмауэр ответил на 16 TCP-портов и 20 UDP-портов. Вот итоговый список сканирования портов с помощью Nmapwin:

Порты TCP:

- 21: ftp

- 25: smtp

- 80: http

- 88: kerberos-sec

- 389: ldap

- 443: https

- 444: snpp

- 464: kpasswd5

- 636: ldapssl

- 691: resvc

- 1723: pptp

- 3268: globalcatLDAP

- 3269: globalcatLDAPssl

- 3389: ms-term-serv

- 8081: blackice-icecap

- 9282: unknown

Порты UDP:

- 88: kerberos-sec

- 123: ntp

- 389: ldap

- 464: kpasswd5

- 500: isakmp

- 1069: unknown

- 1072: unknown

- 1073: unknown

- 1701: l2tp

- 3004: unknown

- 3005: unknown

- 3007: unknown

- 3011: unknown

- 3032: unknown

- 3065: unknown

- 3076: unknown

- 3088: unknown

- 3102: unknown

- 3123: unknown

- 3131: unknown

- 3132: unknown

- 3133: unknown

- 3225: unknown

- 3258: unknown

- 3456: IISrpc-or-vat

- 3457: vat-control

- 4500: sae-urn

- 5479: unknown

- 7363: unknown

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

  • В реализации Basic Firewall ftp-порт 21 оказался доступен, но закрыт; в промышленном стандарте рекомендовано "прятать" этот порт, тем более, когда встроенная служба FTP отключена. (Во время сканирования портов служба FTP была именно отключена.).

  • Контроллер служб (svchost.exe), который запускает большое число встроенных служб, прослушивает в общей сложности 18 портов (по девять TCP и UDP).

  • Local Security Authority Service (lsass.exe) прослушивает 14 портов (семь UDP и семь TCP).

  • Microsoft IIS (inetinfo.exe) прослушивает 13 портов (четыре UDP и девять TCP).

Из приведенного списка открытых портов TCP и UDP со всей очевидностью следует, что термин "basic" в названии брандмауэра полностью соответствует действительности, хотя, возможно, и с некоторым преувеличением. Basic Firewall не подчиняется правилам, принятым для промышленных стандартов - закрыть все порты до тех пор, пока они на самом деле не понадобятся, и спрятать их от прослушивания, если они недоступны. Кроме того, 29 открытых портов UDP - огромное поле деятельности для всевозможных атак.

По результатам проведенного тестирования я категорически не рекомендую устанавливать Basic Firewall для защиты своей сети - установите автономный брандмауэр. Возникает очевидный вопрос - почему разработчики Microsoft включили данное программное обеспечение в состав Windows 2003? Почему столь сложная операционная система оказывается настолько слабой, что касается данного инструмента безопасности? Включение Basic Firewall в состав системы может ввести в заблуждение потенциальных партнеров и заказчиков Microsoft, которые ошибочно полагают, будто данная система способна обеспечить надежную защиту сетевого периметра.

Тем, кто не знаком с Nmapwin, советую зайти на http://www.insecure.org и щелкнуть по ссылке Security Tools в левой части страницы. На странице Security Tools вы найдете описание 75 наиболее важных инструментов в области безопасности для платформ Unix и Windows. Внимательно читая приведенный список, вы обнаружите, что большинство тех же самых инструментов прекрасно поможет злоумышленнику взломать сеть. Все перечисленные инструменты доступны для загрузки. Я рекомендую начать формировать набор средств обеспечения безопасности с утилит Nmapwin и Activeports. Nmapwin идентифицирует открытые порты на брандмауэре или любом другом устройстве, у которого имеется TCP/IP-адрес. Activeports - это программа-монитор реального времени, устанавливающая наличие связи между открытым портом и работающим процессом или приложением. Эти две программы могут помочь идентифицировать уязвимые места брандмауэра и процессы или службы, прослушивающие открытые порты. Такая функциональность позволит обеспечить надежную защиту от взломщиков, которые в своих целях используют весь арсенал утилит, перечисленных на странице Security Tools.

Паула Шерик - Редактор Windows & .NET Magazine и консультант по вопросам планирования, реализации и взаимодействия сетей. С ней можно связаться по адресу: paula@winnetmag.com.