Троянская война продолжается

6 февраль, 2002 - 00:00Игорь Дериев
Один из наших читателей как-то попросил (фактически огорошил): "Больше пишите о недостатках". Откровенно говоря, позитивная информация кажется мне предпочтительней. Во всяком случае, полезней: узнал -- применил. Если же в каком-то ПО недочетов набирается на целую статью, то, может, проще вовсе не обращать на него внимания? Однако безопасность -- такая сфера, где недостатки играют сегодня чуть ли не главную роль. А незнание их чревато крайне неприятными проблемами.
Человек охотно верит во все хорошее. Например в то, что персональные брандмауэры способны раз и навсегда надежно защитить его компьютер от всевозможных "троянских коней". Действительно, идея фильтрации исходящего трафика при всей своей простоте кажется весьма эффективной. Хитроумный драйвер обнаруживает обращение в Internet очередной программы и выдает исчерпывающую информацию (модуль, удаленный адрес, используемые порты и т. д.), на основе которой пользователь принимает осознанное решение.

Потому-то подобные программы давно уже стали привычными средствами защиты на ПК большинства "продвинутых" пользователей. Причем многие (по крайней мере, с базовой функциональностью для персонального применения) распространяются совершенно бесплатно -- разработчики декларируют, что основной их задачей является обеспечение максимальной безопасности и спокойствия в Internet. В конце концов от нашествия почтовых "червей" и DoS-атак страдают не столько легкомысленные пользователи, сколько Internet-сообщество в целом.

Троянская война продолжается
Все достоинства налицо -- русский язык и модульная архитектура
Троянская война продолжается
Более того, список доступных персональных брандмауэров постоянно пополняется. Пример -- программа Outpost, разработанная компанией Agnitum, достаточно давно объявившей священную войну "троянцам". Ее сканер Tauscan был признан экспертами PC Flank лучшим. Кстати, почетное второе место досталось антивирусу Касперского, а не менее популярный Norton Antivirus, как ни странно, "выступил" хуже всех (правда, исследовались не самые последние версии пакетов). Одним словом, есть все шансы получить что-то действительно интересное.

По большому счету, принципиальных моментов всего два. Во-первых, программа добротно переведена на русский язык, причем это относится не только к интерфейсу, но и ко всей документации. Учитывая, что Outpost в значительной мере рассчитана на малоподготовленных пользователей, факт весьма примечательный. Во-вторых, в ней применяется модульная архитектура. Практически вся "дополнительная" функциональность (а в современном состоянии это детектор атак, блокираторы рекламы, активного наполнения Web-страниц и сайтов по их содержимому) реализуется в виде подключаемых модулей. Ценность такого подхода очевидна -- сторонние разработчики (и даже сами пользователи, обладающие достаточными навыками программирования) могут усовершенствовать приложение, воспользовавшись свободно распространяемым SDK.

В остальном возможности Outpost довольно традиционны -- отдельная конфигурация (фактически отмена всех ограничений) для локальной сети, правила уровня приложений, подробное протоколирование, ведение статистики, пополнение списка источников нежелательных баннеров и пр. Коммерческая Pro-версия дополнительно позволяет определять глобальные правила (к примеру, разрешить любой обмен информацией через порт proxy-сервера) и создавать различные конфигурации для нескольких пользователей, т. е. по своей функциональности приближается к Norton Internet Security.

Троянская война продолжается
К сожалению, современные брандмауэры против таких трюков бессильны
Ситуация (для пользователей) вроде бы самая благоприятная -- выбирай, устанавливай, пользуйся и наслаждайся безопасностью. Однако именно такая видимая "тишь да гладь" и не дает покоя некоторым пытливым умам. Почин, как известно, был положен Стивом Гибсоном ("Компьютерное Обозрение", # 48, 2000). Совершенно примитивный трюк, маскирующий "злоумышленную" программу под стандартный ftp-клиент, обманул почти все персональные брандмауэры за исключением ZoneAlarm.

Интересно, что если одни разработчики, вроде Symantec, действительно поспешили внедрить в свои продукты механизмы идентификации программ по специальным сигнатурам, другие ограничились борьбой непосредственно с LeakTest. К примеру, BlackICE Defender компании Network ICE попросту блокирует весь трафик к узлу, используемому этой утилитой. Подробности и новую (хотя и эксплуатирующую прежний принцип) версию LeakTest можно найти на сайте Гибсона.

Но это было только начало. В конце прошлого года сразу несколько исследователей предложили методики, способные обмануть практически все современные персональные (и не только) брандмауэры. Самая элементарная из них заключается в использовании "троянскими конями" стандартного HTTP-трафика. Злоумышленный модуль обращается к специально оформленному Web-сайту и получает все необходимые директивы в обычном HTML. Насколько эффективным может быть такой обмен (несмотря на очевидные накладные расходы), наглядно демонстрируют некоторые программы удаленного управления вроде RemotelyAnywhere и GoToMyPC ("Компьютерное Обозрение", # 15, 2001).

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

Троянская война продолжается
Быть может, именно этот подход позволит построить действительно надежную защиту?
И решение выглядит настолько естественно и обескураживающе, что даже непонятно, почему оно не пришло в голову первым. Небольшая программа TooLeaky, разработанная Бобом Сандлингом (Bob Sundling), организует весь обмен информацией через Internet с помощью обычного Internet Explorer. Возможности автоматизации броузера Microsoft прекрасно известны, достаточно лишь вспомнить количество броузеров-надстроек вроде NeoPlanet, NetCaptor и др. Впрочем, с таким же успехом можно было бы использовать и Netscape, и, скорее всего, многие другие программы. Как отметил автор TooLeaky: "Если какое-либо верифицированное брандмауэром приложение обеспечивает возможности управления собой из внешних программ, реальная ценность защиты равна нулю".

Действительно, несколько имевшихся в нашем распоряжении персональных брандмауэров тест TooLeaky провалили с треском. Да, собственно, иначе и быть не могло -- результат вполне предсказуем, слишком уж все просто и очевидно.

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

Во-первых, на абсолютную безопасность надеяться просто наивно. Тем не менее даже в современном состоянии (далеком от идеала) эти программы способны защитить компьютеры пользователей от многих напастей. В том числе -- от "традиционных" "троянских коней", всевозможных ad- и spy-ware и прочего излишне активного ПО.

Кроме того, наиболее эффективная защита обеспечивается одновременным использованием брандмауэра и антивируса. Это -- стандартная рекомендация (хотя также не дающая 100%-ной гарантии), и грех ею не воспользоваться, поскольку свободно распространяемые антивирусы (пусть и не самые совершенные) все еще существуют. Относительно неплох бесплатный AntiVir Personal, а отсутствующие у него средства проверки электронной почты можно компенсировать с помощью Vcatch.

Троянская война продолжается
В принципе, поймать хитрецов вроде TooLeaky можно, главное -- реализовать универсальный механизм
Во-вторых, защитные методики также не стоят на месте. Возможно, реноме персональных брандмауэров смогут восстановить какие-то дополнительные технологии. Например -- поведенческие блокираторы или "песочницы" вроде применяемых в eSafe Desktop и SurfinGuard. Правда, их нынешнее состояние (в контексте обсуждаемых проблем) также оставляет желать лучшего. Фактически единственный отрадный момент -- реакция SurfinGuard на запуск нового внешнего процесса при работе TooLeaky в "зоне безопасности". Тем не менее сама идея, реализованная в этих программах, кажется весьма здравой.

По-видимому, также необходим контроль за доступом к объектной модели Internet Explorer и других броузеров, поддерживающих OLE Automation и прочие средства автоматизации (как это было сделано с Outlook и Outlook Express), и какие-то ограничения на использование командной строки. В общем, фантазировать здесь можно бесконечно, но главное -- ясно, что ситуация не безнадежна. Слово за разработчиками. Кстати, вероятно, именно описанные события стали причиной отсрочки выхода очередной версии ZoneAlarm.

Еще один довольно неоднозначный момент -- нужно ли обнародовать программы, подобные TooLeaky, тем более с исходными текстами. Мнения, как всегда, разделились. Одни считают, что это только активизирует злоумышленников, другие упирают на то, что вопросы безопасности (во всех подробностях) должны быть достоянием не только специалистов, но и широкой общественности.

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