БЕЗОПАСНОСТЬ

В PC Week/RE (№ /2002, с. 34) была опубликована статья Л. Любезнова “Сокрытие авторства в Интернете: за и против”, посвященная различным аспектам анонимности. Автор кратко коснулся и технических вопросов, которые я хотел бы раскрыть более подробно.

Спокойное чтение бюллетеня по безопасности ISS X-Force Security Alert (xforce.iss.net) было прервано звуковым сигналом, оповестившим о том, что межсетевой экран обнаружил несанкционированное действие. Увидев мигающую иконку на экране монитора и щелкнув на ней мышью, администратор погрузился в строки символов, характеризующих адрес злоумышленника. “Ну вот ты и попался, голубчик”, - подумал администратор, уже вторую неделю безуспешно пытавшийся обнаружить хакера, не оставляющего попыток вломиться в корпоративную сеть банка. Однако все оказалось не так просто.

Вероятность подмены адреса при различных атаках

С помощью сервиса whois удалось определить, что данный адрес принадлежит университету DePaul в Чикаго. Обращение к администратору университета не внесло ясности, а еще больше запутало дело. По его словам, в тот момент (с учетом разницы в часовых поясах) с указанного IP-адреса никаких действий не проводилось: в Чикаго была ночь и университетский вычислительный центр не работал.

Администратор атакованной сети понял всю сложность своего положения и призадумался. Выходило, что сеть атакована не неопытным юнцом, а квалифицированным хакером, знающим, как осуществлять подмену адреса. Хотя надо сказать, что есть огромная категория пользователей, называющих себя настоящими хакерами, но таковыми не являющихся. Для них даже придуман специальный термин “script kiddies”, что означает любителей, использующих готовые средства реализации атак, не понимая сути их действия. Получив какую-либо программу для взлома, они сразу задают в ней адрес своего друга, насолившего им соседа или просто случайного компьютера и запускают ее. Если видимого результата нет, они переходят к следующему адресу и т. д. Их жертвой становятся только неискушенные администраторы, не следящие за защищенностью своей сети. Мы же будем исходить из худшего. В данной статье я хотел бы вкратце описать способы сокрытия своего реального адреса, используемые квалифицированными злоумышленниками.

Подмена адреса

Большинство злоумышленников организуют свои атаки с промежуточных серверов, которые они уже взломали, с proxy-серверов или иными способами, описываемыми ниже. В этом случае найти того, кто вас атакует, очень трудно. Активное блокирование атак на основе адреса с помощью межсетевых экранов, фильтров на маршрутизаторах и других устройствах может привести к отрицательному результату, т. е. к тому, что вы заблокируете не злоумышленника, а вполне реальный адрес (возможно, принадлежащий вашему клиенту или партнеру), которому необходим доступ к вашим информационным ресурсам.

Данные о частоте подмены адреса источника для различных ти

Изменение заголовка пакета

Действующая версия протокола IP очень слабо защищена. Простое изменение поля “Адрес источника” (Source Address) в заголовке IP-пакета приводит к тому, что во всех журналах регистрации фиксируется именно этот адрес, а не реальный, с которого осуществлялась атака. Такой механизм используется при атаках типа “отказ в обслуживании”.

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

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

Proxy

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

Найти прокси в Интернете не составляет большого труда. Задав на Яndex’е в строке поиска фразу “список анонимных серверов”, я получил большое число необходимых ссылок. Причем уже десятая ссылка на первой выданной поисковой системой странице содержала список более чем из 900 анонимных прокси-серверов. Разумеется, часть из них уже не функционирует, часть предоставляет услуги за деньги, но найти один работающий сервер в этом списке не составляет большого труда.

Все анонимные прокси можно разделить на две категории - “прозрачные” (transparent) и “непрозрачные” (no transparent). Только непрозрачный прокси реально скрывает адрес злоумышленника. Прозрачный же хоть и заменит адрес хакера на свой собственный, но при запросе выдаст всю его подноготную, включая и реальный адрес (если, конечно, злоумышленник не шел через цепочку промежуточных серверов).

Анонимайзер

Анонимайзер - это аналог прокси, только с более широким толкованием. Обычно под прокси понимается сервер, подменяющий IP-адрес абонента на свой собственный. А анонимайзер просто удаляет адрес абонента из заголовка запроса. Чаще всего они используются для отправки анонимных писем. Однако есть примеры и Web-анонимайзера, с помощью которого можно путешестовать по Web-серверам, не боясь “наследить” в журналах регистрации.

Один из самых известных анонимайзеров - сервер www.anonymizer.com. Именно этот сайт в свое время был Меккой всех хакеров, а также сотрудников, желающих скрыть, на что тратится их рабочее время. Постепенно из бесплатного ресурса anonymizer.com превратился в коммерческую компанию, предлагающую ряд платных и бесплатных услуг.

Помимо данного ресурса есть и другие менее известные, но не менее функциональные. Например, @nonymouse.com, который обеспечивает анонимный серфинг по Web, анонимную электронную почту и анонимное чтение новостей.

Яndex выдает множество ссылок на различные анонимайзеры: во время написания статьи я нашел 1899 различных страниц, содержащих нужные мне сведения.

Программы-анонимайзеры

Не всегда у хакеров есть возможность посетить прокси-сервер или анонимайзер. Если несанкционированная деятельность осуществляется с работы, то доступ к таким серверам может быть заблокирован. Желательно, чтобы анонимный доступ в Интернет начинался уже с самого компьютера.

И компания Anonymizer.com предложила такую возможность, разработав специальный модуль Privacy Button, интегрируемый в браузер Internet Explorer. Она представляет собой новую кнопку на панели браузера, нажав на которую пользователь получает ряд интересных возможностей:

- защиту от cookies;

- шифрование адреса запрашиваемого ресурса;

- фильтрацию рекламных баннеров;

- возможность посылки анонимной электронной почты;

- скрытие IP-адреса от посещаемых Web-серверов;

- защиту от Java, ActiveX и т. д.

Имеется две версии Privacy Button - платная ($50 в год) и бесплатная, различаются они функциональностью.

Есть и другие программы. Например, anonymail, которая, как видно из ее названия, предназначена для рассылки анонимных сообщений электронной почты.

Ремейлер

Ремейлер (remailer) переводится как перенаправитель (ретранслятор) электронной почты. Вы отправляете на его адрес письмо, соответствующее определенным правилам, перекладывая на него и задачу доставки письма до нужного адресата. При получении такого письма в заголовке указан не ваш настоящий адрес, а адрес ремейлера.

“Халявная” почта

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

Такие бесплатные почтовые ящики предлагают сейчас многие серверы (Yahoo.com, Hotmail.com, Mail.ru, Rambler.ru и т. д.).

Усложнение представления адреса

Усложнение представления адреса хотя и не полностью скрывает злоумышленника, но позволяет поводить за нос неквалифицированного администратора. Допустим, нарушитель хочет посетить сайт www.playboy.com. Однако для доступа к нему можно использовать не доменное имя, что делается в абсолютном большинстве случаев, а IP-адрес (209.247.228.201). Но и это еще не все. Допускается указание десятичного - 3522684105, шестнадцатеричного - 0xD1.0xF7.0xE4.0xC9 или даже восьмеричного - 0321.0367.0344.0311 значения адреса, что позволит без ограничений обращаться на сайт с помощью браузера, но затруднит распознавание адреса.

Можно еще больше усложнить распознавание адреса, если знать, как браузер обрабатывает URL, передаваемые через Интернет. Например, любую цифру можно представить путем прибавления к ней 30 и символа %. Тогда 3 - это %33, 7 - %37, а 0 - %30. Таким образом, адрес сервера Playboy будет выглядеть следующим образом: 35%32%32%36841%305. Комбинаций здесь может быть неограниченное количество.

Кроме того, допускается подстановка перед адресом, к которому идет обращение, любого числа разнообразнейших знаков (но не более 256), отделенных от реального адреса символом @. В результате возможен и такой запрос на доступ к сайту Playboy: 34985734958734985776498 574634985634579823423798645@35%32%32%36841%305. Это не скроет область ваших интересов, но затруднит их распознавание.

Генерация ложных пакетов

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

Сканер nmap имеет возможность обманного (decoy) сканирования, когда вместо реальных IP-адресов источника проставляются (подменяются) другие IP-адреса. Тем самым перед администратором системы обнаружения атак ставится непростая задача: обнаружить среди множества зафиксированных в журналах регистрации IP-адресов только один реальный, с которого действительно производилось сканирование.

Использование чужих компьютеров

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

По такому принципу функционируют и средства для реализации распределенных атак “отказ в обслуживании” (Distributed Denial of Service) - mstream, stacheldraht, TFN2000, trin00, Shaft, tri-nity и т. д.

Заключение

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

С автором статьи можно связаться по адресу: luka@infosec.ru.