Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР 120, ДЕКАБРЬ 2008 г.

За гранью невидимости: новые методы сохранить ингонито в инете

Андрей Комаров (komarov@gameland.ru)




Как сделать что-либо в Сети и сохранить анонимность? Вопрос хороший. В стремлении остаться инкогнито приходится старательно маскировать настоящий IP-адрес и шифровать данные «на лету». Традиционных VPN-соединений, туннелингов и банальных прокси не всегда достаточно. К счастью, сейчас появились новые решения, способные сделать level-up твоей анонимности.

Пиринговые анонимные сети

В чем проблема такого замечательного средства, как VPN-сервис? На выходе получаешь совершенно другой IP, а весь трафик до сервера тщательно шифруется – сказка, да и только. Загвоздка в том, что ты все равно от кого-то зависишь. Нет никакой гарантии того, что сервак, на котором установлен VPN или прокся, не ведет логи, а в его подсети не орудует банальный снифер, который, как на десерт, уплетает весь расшифрованный трафик. Конечно, владельцы сервисов уверяют, что их услуги полностью безопасны и зачастую действительно прикладывают для этого массу усилий, еженедельно меняя IP, а иногда даже и площадки размещения серверов. Но 100% гарантий-то все равно нет. Давай посмотрим на это со стороны. Раз один сервер обеспечить анонимность не может, разумно попробовать периодически менять посредника – в этом случае отследить тебя будет гораздо сложнее. Так и родилась идея пиринговых анонимных сетей.

Вообще говоря, о подобной технологии, а именно – Tor, мы уже писали. Принцип обеспечения анонимности строится на базе распределенной системы серверов, так называемых нод, между которыми в зашифрованном виде передаются данные. Для соединения обычно используется три сервера, которые образуют временную цепочку. Серверы для нее выбираются случайным образом, причем каждый из них знает минимум информации о своих соседях. Однако Tor – это далеко не единственная разработка в этой области. Достигнуть широкой огласки ей помогли освещение в прессе и использование некогда в правительственных организациях и военных ведомствах. В то же время добротные разработки пока не продвинулись дальше своего аккаунта в Google Codes (бесплатный сервис для разработчиков – для хостинга своей программы и исходников, – Прим. Step’а).

Основное предназначение пиринговых сетей состоит в том, чтобы скрыть персону отправителя данных и их получателя. Иногда это делается даже в легальных целях (обмен информацией в кругу какого-то социального сообщества, типа «анонимных алкоголиков» и так далее). Но в целом многие эксперты выступают против таких сетей, потому что они увеличивают возможность оборота порнографии, нелегальных материалов и тому подобных вещей. Если рассматривать вопрос использования таких технологий со стороны безопасности, можно сказать, что они актуальны при обходе цензурных фильтров, которые активно применяются в разных странах (Китай, к примеру). Анонимные p2p-сети делятся на: opennet и darknet (friend-to-friend) реализации. С этим все просто. В первом типе сетей ноды выбираются автоматически или по указанию клиента, во втором же - юзер устанавливает соединение (direct) только с определенным узлом, который он сам, наверняка, знает. Некоторые из технологий, к примеру, Freenet (www.freenetproject.org) поддерживают оба типа соединения.

Конкретные реализации

Стоит отметить, что авторами подобного софта в основном являются немцы. Это легко объясняется суровостью законодательства в отношении хакерства и разработки вредоносного кода. Один из моих друзей в Германии со слезами на глазах рассказывал, что им запрещается даже держать софт с уклоном в тесты на проникновение или, не дай Бог, взлом (кроме случаев, когда ты предоставляешь такие услуги на реальной основе). В то же время орган, отвечающий за информационную безопасность страны - BSI, сам создал собственный LiveCD для «безопасников», напичканный софтом типа John-The-Ripper и т.п. Поэтому среди населения крепнет желание уклониться не только от выполнения упомянутых законов, но и, разумеется, ответственности за их несоблюдение. Остановившись на Германии, приведу в пример их одну из самых известных разработок из децентрализованных анонимных сетей - I2P (i2p2.de).

С установкой и настойкой проблем не возникнет – они предельно просты. Необходимо скачать клиент, требующий Java, и после запуска он забиндит адрес http://localhost:7657, через который ты и попадаешь в мир I2P. Там ты обнаружишь нечто вроде реальной сети, со своими сервисами, приложениями, личным кабинетом, где ты можешь отслеживать трафик, а также мониторить новые ноды. Итак, основные приложения, доступные для использования внутри I2P:

  • Susimail (localhost:7657/susimail/susimail)
  • SusiDNS (localhost:7657/susidns/index.jsp)
  • I2Psnark (localhost:7657/i2psnark)
  • eepsite (localhost:7658)
  • I2PTunnel (localhost:7657/i2ptunnel/index.jsp)
  • мониторинг туннелей (localhost:7657/tunnels.jsp)

Непосредственно анонимный серфинг в инете осуществляется посредством HTTP-proxy I2P на 4444-порту. Кстати, в самой сети установлены защищенные веб-узлы, специально заточенные для соблюдения анонимности и называемые eepsites.

Обходим фильтры

Еще одна интересная разработка в этой области – проект Psiphon (psiphon.ca). Цель разработчиков – предоставить возможность беспрепятственного доступа в инет гражданам тех стран, где это серьезно ограничивается. В большинстве стран никаких ограничений и фильтров нет, но есть целый ряд государств, имеющий свой взгляд на свободу в Сети. Общая идея проекта Psiphon заключается в том, что пользователи, проживающие в свободных и адекватных странах (вроде России), помогают менее удачливым братьям по разуму из других стран получить свободный доступ к Глобальной Сети. Без ограничений, цензуры и шейперов.

Psiphon работает через компьютерные сети, между участниками которых установлены доверительные отношения. Имеются провайдеры psiphon, которые устанавливают, контролируют и обслуживают psiphon-сервер (psiphonode) в той стране, где нет цензуры, и есть пользователи psiphon (psiphonites), которые входят в систему и получают доступ к заблокированному серверу из страны, где интернет проходит через цензуру. Любому, кто столкнулся с подобными ограничениями, под силу найти список псифонод и, попользовавшись настройками, получить возможность выходить в Web без всяких запретов.

Что представляет собой псифонод для обычного пользователя? Обычный веб-прокси – специальный сайт, с дополнительной панелью для ввода адреса и фреймом, где отображается содержимое запрашиваемого ресурса. Таким образом, для использования не нужно ничего, кроме обычного браузера.

Как организовать свой псифонод и предоставлять друзьям доступ к заблокированному для них контенту? Вот один из вариантов:

1) Качаем сам Psiphon (psiphon.ca/download) для Винды. Там же находятся версия для Linux, а также исходники приложения.

2) Во время обычной процедурой установки, наверняка, начнет ругаться твой файрвол. Необходимо разрешить нашей программе выходить в Сеть и разблокировать процесс. Далее придется напрячь извилины и придумать уникальное имя для своего псифонода.

3) На следующем этапе программа определит твой IP-адрес, проверит доступность 443-порта (для SSL). Если он занят, тебе потребуется вручную указать любой свободный порт.

4) Установка завершена – можно смело жать «Start». Как только твоя нода перешла в состояние «ON», проверь ее доступность, обратившись на адрес по синей ссылке в верхней части управления. Заметь, что URL для запроса имеет следующий вид: https://ip:443/имя (соответственно, введенное тобой на втором этапе). Если все корректно пашет, то в браузере должна открыться сертификационная страница, где клиент должен будет принять сертификат и ввести данные для авторизации. Кстати о них! Аккаунты для клиентов создаются с помощью кнопки «Add» (логин, пароль, электронная почта, полное имя).

Минусы технологии сразу не проявляются, но прозрачны. У недобросовестных операторов ноды существует возможность отслеживать, какие ресурсы посещают их псифониты. Если основываться на принципах взаимного доверия, оператор по идее не разглашает эту информацию, чтобы не подвергать людей опасности. Ситуация сродни истории о прослушивании выходных нод TOR-сервера, который ты сам снифаешь при использовании различными пользователями. Так, достаточно недавно шведский специалист по безопасности (DEranged Security) собрал около сотни аккаунтов электронных почт делегатов международных посольств и правительств. Второй скользкий момент Psiphon состоит в том, что провайдеру ноды необходимо каким-то хитрым, а главное, безопасным способом передать данные для подключения клиенту. А ведь без дополнительных разъяснений это может оказаться крайне сложным…

Моменты общения

Помимо непосредственно серфинга в Сети, особенно остро стоит вопрос о конфиденциальности общения. Нынешний андеграунд знает много различных IM-систем, способные обеспечить секретность разговоров. Попадаются даже собственные разработки, например, NDC (проект от fij’a).

Западные товарищи активно используют такую штуку, как SILC (www.silcnet.org). Secure Internet Live Conferencing, если расшифровать, – это клиент серверной технологии для крипто-переписки в режиме реального времени. Самое интересное в том, что она распространяется в виде связки, состоящей из отдельно сервера, который ты сам можешь установить для своих парней, и официального клиента под Linux/Unix/Mac/Windows. В особых случаях можно вообще обойтись без установленного клиента на машине. Представь, что мы организуем собственный VPS/VDS. Подключение к нему производится по SSH, на который мы вполне можем установить SILC-сервер и непосредственно клиент под никсы. Теперь, если ты оказался в такой ситуации, когда нет возможности установить официальный клиент (или специальный плагин для известного мессенжера Pidgin), то ты можешь просто зайти по защищенному SSH и воспользоваться консольным клиентом. Получаем двойное шифрование своей переписки: SSH + SILC! Вижу, ты уже загорелся – тогда приступаем к настройке.

К сожалению, сервер на данном этапе доступен только для Linux/Unix, поэтому придется поднять соответствующий сервак. Установка предельно проста – rpm –i для бинарного пакета, либо распаковать архив и собрать стандартными ./configure&make&make install. По дефолту все файлы пакета будут находиться в /usr/local/silc/, а его конфиги - /etc/silc/. Учти, что сервис биндит TCP 706, а это требует соответствующих привилегий (root/granted):

# groupadd silcd
# useradd –g silcd -s /bin/sh –d /usr/local/silc silcd
# silcd – запуск сервера

Чтобы идентифицировать друг друга и начать шифрованный канал, SILC оперирует системой ключей. Каждый ключ имеет следующий формат:

  • UN - имя пользователя
  • HN – хост (можно указывать IP)
  • RN – имя (ФИО)
  • E – электронная почта
  • C – сокращение страны (RU, DE, FR)

Создание («выписка») ключей производится с помощью команды: # /usr/local/silc/sbin/silcd –C /usr/local/silc/etc –identifier=”UN=skvoz, HN=silc.wardriver.ru, RN=Andrej Komarov, E=komarov@itdefence.ru , C=RU”. Чем-то это напоминает штатные запросы dsquery к Active Directory, где указывается OU и прочие параметры.

Сгенерированная пара ключей будет находиться в директории, указанной после флага «-C». Протокол SILC по умолчанию генерирует свой открытый ключ SILC, однако легко поддерживает ключ SSH2, OPENPGP, x.509. Клиент в свою очередь может создать публичный ключ сам, воспользовавшись утилитой puttygen, которая распространяется вместе с нашим любимым SSH-клиентом PuTTY (www.chiark.greenend.org.uk/~sgtatham/putty). При этом приватный ключ остается у него для авторизации. К созданию ключа надо отнестись ответственно, потому что при несовпадении логина владельца тебя просто не пустит на сервер. Если у тебя нет ключа и ты впервые пытаешься подключиться к серверу, он сгенерит его для тебя автоматически, но при этом запросит так называемую passphrase. Она указана в конфиге /etc/silcd.conf, отдельно для админа и клиента. Вот, собственно и вся настройка.

Во многих моментах SILC сильно напоминает IRC. Кстати говоря, многие взломщики и специалисты по безопасности по-прежнему продолжают тусить на приватных конференциях, используя именно эту систему. Излюбленное место тусовки хакеров – каналы с поддержкой SSL и сертификатов. Можно еще больше укрепить безопасность, если взять на вооружение Invisible IRC Project (IIP, invisibleip.sourceforge.net/iip). Это реализация «point to point» протокола шифрования, который эксплуатируется внутри прокси между сервером и клиентом. Соответствующая прокся подымается на localhost:6667.

Полная анонимность?

Если говорить начистоту, то никакие инструменты и условия не обеспечат тебе 100% анонимность. Всегда остается небольшая вероятность, что на каком-то из серверов ведутся логи, а в каком-то месте тупо отключено шифрование. Но если использовать комбинации старых проверенных способов и новых взятых на вооружение приемов, можно вполне успешно сохранять инкогнито.

Программы для анонимности

Существует целый ряд программ для обеспечения частной жизни в Сети, которые рекомендует Internet Security for Civil Society (Civisec.org) – некоммерческая организация, занимающаяся защитой прав человека в интернете.

Hacktivismo.com

Международная группа хакеров, защитников прав человека, юристов и перцев, развивших КУЛЬТ МЕРТВОЙ КОРОВЫ (Cult of Dead Cow) - известной хакерской группировки и группы компьютерной безопасности. В свое время они зарелизили Torpark – фичу, сочетающую браузер Portable Firefox на базе Firefox Deer Park + преднастроенный TOR. Все это дело может запускаться с USB-флешки. Другой их релиз - ScatterChat. Это IM-система с шифрованным чатом. Говоря об этой группе, трудно не вспомнить и другие проекты. Например, Six/Four (sourceforge.net/projects/sixfour). Это очередная p2p-система, предназначенная для развертывания с собственной реализацией крипто-протокола.

Portableapps.com

Коллекция наиболее часто используемых программ, среди которых Thunderbird + GPG.

Ultrasurf
ultrareach.com

Безопасное хождение (серфинг) по интернету. Поставляется как в виде плагина к Mozilla, так и самостоятельным приложением. Радует, что бесплатен и вполне способен конкурировать с такими шароварными продуктами, как Steganos Internet Anonym.

Freegate

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

www.openoffice.org

Бесплатный набор программ (аналогичный MS Office). К сведению: текстовые документы, сохраненные в формате .odt, могут быть зашифрованы по умолчанию.

Беспроводные сети на службе у хакера

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

INFO

Подробности об использовании Tor ты можешь прочитать в статье «Сетевой камуфляж» в #92 номере ][ или PDF-версии на нашем диске.

В статье освещены далеко не все сети для анонимизации. За кадром осталась, например, система PHANTOM (code.google.com/p/phantom). Эта децентрализованная сеть появится после нового года. О том, что в ней ожидать, пока остается только догадываться.

WARNING

Информация представлена в целях ознакомления. В случае использования ее в противозаконных целях, за свои поступки ты будешь отвечать сам. Редакция в этом случае ответственности не несет!

Содержание
ttfb: 6.7648887634277 ms