Компания
258,08
рейтинг
24 марта 2015 в 10:46

Разработка → Снифаем выходную ноду Tor’а и анализируем получившийся контент



Концепция «сеть поверх сети» появилась далеко не вчера. Еще в середине прошлого десятилетия «Хакер» писал о луковой и чесночной маршрутизации в лице Tor и I2P и даже публиковал обзоры соответствующего софта в рубрике «Шароwarez», но настоящий интерес к ним в обществе появился на волне известных инфоповодов и громких разоблачений последнего времени. Что же представляют собой даркнеты? Кто там живет? Чем они интересуются, чем дышат, что покупают и что продают? Попробуем разобраться с этим по-хакерски: с помощью снифера и прямого погружения.

WARNING


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

Система мониторинга onion-доменов


Каждый резидент сети может предоставить свои вычислительные ресурсы для организации Node-сервера — узлового элемента сети, который выполняет функцию посредника в информационном обмене клиента сети. Существует два типа узлов в данном даркнете: промежуточные и выходные (так называемые exit node). Последние являются крайним звеном в операции расшифровки трафика, а значит, представляют собой конечную точку, которая может стать каналом утечки интересной информации.

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

Однако решение задачи агрегации актуальных сайтов лежит на поверхности. Для того чтобы составить список недавно посещенных onion-ресурсов, необходимо отслеживать факт обращения к ним. Как мы уже говорили, exite node является конечной точкой на пути следования зашифрованных пактов, а значит, мы можем свободно перехватывать пакеты HTTP/HTTPS-протоколов Tor-пользователя, который занимается серфингом в «традиционном вебе».

Известно, что HTTP-пакет может содержать информацию о посещенных ранее ресурсах. Данные находятся в заголовке запроса Referer, который может содержать URL источника запроса. В «традиционном вебе» данная информация помогает веб-мастерам определить, по каким запросам в поисковых системах и с каких сайтов переходят пользователи подконтрольного веб-ресурса.

В нашем случае достаточно пробежаться по дампу перехваченного трафика регулярным выражением, содержащим строку onion.

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


О конфигурировании exit node написано огромное количество доступных статей, поэтому здесь мы не будем заострять внимание на процессе конфигурации выходного узла, а отметим лишь самое важное.

Во-первых, в конфигурационном файле torrc необходимо задать политику Exit Policy, разрешающую передачу трафика по всем портам. Данная настройка не является какой-то магической манипуляцией и всего лишь дает надежду «увидеть» что-нибудь интересное на нетривиальном порту.

>> ExitPolicy accept *:*

Поле Nickname не несет никакой смысловой нагрузки, поэтому единственная рекомендация в данном случае — не использовать компрометирующие названия ноды (например, WeAreCapturingYourTraffic) и не использовать цифр, которые могут натолкнуть на мысль о целой сети подобных нод (например, NodeNumber3).

После запуска Tor-сервера необходимо дождаться завершения процедуры загрузки своих координат на сервер директорий — это поможет нашей ноде «заявить» о себе всем участникам даркнета.

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

>>tshark -i 1 -w dump.pcap

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

Малварь и даркнет


Все больше вредоносного ПО (мобильных и десктопных троянцев) умеет работать со своими C&C-серверами, расположенными в Tor. Преимущества по сравнению с классическим подходом в управлении ботнетом налицо: не нужно заботиться о попадании домена в блек-листы провайдеров, практически нецелесообразно (нецелесообразно — это не синоним «невозможно») идентифицировать ботмастера, а также, в силу архитектуры даркнета, нельзя «выключить» сервер.

Так, одним из первых работать с Tor начал банковский троян ZeuS, разработчики которого тянули вместе со своим зловредом утилиту tor.exe. Внедряя ее в процесс svchost.exe, злодеи тем самым инициировали защищенное соединение своего детища с командным сервером. Причины понятны — вряд ли кто-то прибежит и обесточит твой сервер или того хуже — возьмет под колпак.

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

Таким образом, многие onion-домены на настоящий момент представляют собой не что иное, как средство администрирования того или иного ботнета.



Административная панель одного из ботнетов


Фрагмент исходного кода одного из мобильных зловредов

Активная система


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

Обязательным условием для нормального обмена информацией с внешними интернет-ресурсами через exit node является наличие ответа от веб-сервера, который наша выходная нода должна в обязательном порядке доставить до Tor-пользователя. В противном случае, если через ноду идут только запросы к веб-серверам, остающиеся без ответа, мы можем сделать вывод, что имеет место DDoS-атака.

Основная суть активной системы заключается в возможности организации MITM-атаки: мы можем перенаправлять пользователя на подконтрольный нам веб-ресурс или добавлять свой код в содержимое ответа с целью спровоцировать утечку какой-либо информации из браузера клиента.

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

В данном случае все зависит от фантазии владельца exit node. Например, можно использовать техники социальной инженерии и спровоцировать (от имени администрации запрашиваемого ресурса) резидента даркнета отправить какую-либо информацию о себе и посещенных ресурсах. В качестве альтернативного средства можно попытаться загрузить на сторону жертвы какую-либо «полезную нагрузку».


Exit node в процессе своего функционирования


Tshark ловит пакеты, которые проходят через exit node в открытом виде

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

Одним из способов является использование хранилища Flash, в таком случае информация хранится в LSO-файлах (local shared objects), которые схожи с cookie-файлами и тоже хранятся локально на компьютере пользователя. Кроме того, существует еще более мощный инструмент для работы с cookies — JavaScript-библиотека evercookie. Данная библиотека предоставляет возможность создавать трудноудаляемые cookies путем использования одновременно обычных HTTP-cookie, LSO-файлов и тегов HTML5. И всю эту информацию можно извлечь активной системой мониторинга.

Герои даркнета


Подобно Цукербергу и его Facebook, даркнеты имеют своих героев. На страницах нашего журнала можно было прочитать о Россе Уильяме Ульбрихте и его проекте Silk Road, посетитель которого мог заказать любое «средство доставки на тот свет» — начиная от наркотиков и заканчивая оружием. Популярность проекту принесли масштабы его бизнеса, однако это не значит, что площадка была единственной в своем роде. С каждым объявлением о закрытии Silk Road, как грибы после дождя, появлялись альтернативы в виде небольших магазинов, продающих запрещенные вещества. Более того, наученная «шелковым» опытом группа анархистов-разработчиков представила концепцию магазина DarkMarket, которая лишена недостатков, присущих традиционным магазинам даркнета. Однако данной децентрализованной площадке еще только предстоит набрать аудиторию, в то время как значительная часть Tor-пользователей уже вносит вклад в экосистему существующих площадок.


Пауки темных сетей


Итак, получив в свое распоряжение огромный дамп, следует заняться его анализом на предмет onion-ресурсов. Беглое чтение дампа «по диагонали» позволило составить категории веб-приложений даркнета и вывести психологический портрет типичного Tor-пользователя.


Пример попавшего в логи onion-ресурса

Стоит отметить, что за сутки (будний день) непрерывного перехвата трафика дамп одной ноды вырастает до 3 Гб. А значит, просто открыть его Wireshark’ом не получится — программа просто подавится таким большим файлом. Для анализа дампа необходимо разбить его на файлы размером не более 200 Мб (определено эмпирическим путем). Для этого вместе с Wireshark идет утилита editcap:

>> editcap -c 200000 input.pcap 
output.pcap

В данном случае значение 200 000 — число пакетов в одном файле.

При анализе дампа наша задача заключается в поиске строк, содержащих подстроку «.onion». С большой долей вероятности мы будем находить внутренние ресурсы Tor.


Пример содержательного заголовка Referer

Итак, чем же интересуются пользователи даркнетов? Из попавших в наши сети onion-ресурсов мы составили небольшой список.

Адалт, интимные услуги.


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


Ресурс, предлагающий услуги интимного характера

Политика.


Оказывается, здесь тоже интересуются политикой! В нашем дампе обнаружилось достаточно большое количество украинских веб-ресурсов, расположенных во внешней сети.

Запрещенный контент.


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

Маркеты



Каталог товаров типичного дарк-маркета

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

Эти ресурсы предлагают не только различного вида химические соединения, но и материал для поклонников сериала «Во все тяжкие» — тех, кто любит «мастерить» наркотики своими руками. Причем создатели подобных площадок предоставляют своим клиентам сервис не хуже, чем какой-нибудь AliExpress, — существует система скидок для постоянных клиентов и возврат денежных средств за некачественный товар. Также здесь есть некое подобие транзакционных кодов для отслеживания статуса заказа.

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

Осторожно Big Data


В течение 24 часов непрерывного перехвата трафика на выходной ноде образуется дамп размером 3 Гб.
Калькуляция:
10 нод × 3 Гб × 7 дней = = 210 Гб. Если хочешь поучаствовать в процессе разбора накопленной информации — пиши мне на электронную почту.


Наибольшее количество позиций наблюдается в категориях с наркотическими веществами, рецептами и некими абстрактными «Digital Goods» — заглянем сюда. Сор­тируем по убыванию цены и видим, что самыми дорогими товарами в этой категории выступают украденные базы аккаунтов. Тут есть из чего выбрать: от дорогих банковских учетных записей (стоимость базы около тысячи долларов) до недавно утекших баз от онлайн-сервисов.

Кстати говоря, на «утекшие» аккаунты Yahoo и Google имеются весьма положительные отзывы — а это значит, что народ, который их приобретает, некомпетентен в вопросах информационной безопасности. Инвайты на другие ресурсы, сомнительные и «секретные методики заработка в интернете» — все это довольно неплохо монетизируется.


Дорогостоящие представители Digital Goods

Другой маркет встретил нас сомнительным интерфейсом и все той же категорией Digital Goods, где обнаружилась подкатегория с интересным названием 0day, в которой… оказались те же самые «новые секретные рецепты». Вывод: в традиционных даркет-маркетах практически отсутствуют актуальные киберкриминальные предложения.


Такие вот «зиродеи»…

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

Правда, качество репортов никакое — в основном «баги» носят скорее визуальный характер. Кроме того, форумы магазинов переполнены сообщениями: «Анонимен ли я, если покупаю у вас drugs со своего iPad?»

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


Фидбек для «Цифровых товаров»: осторожно, кидалы!

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

Стоимость разработки ресурса для дарк­нета не сильно отличается от рыночных цен на типовые интернет-магазины, однако тут есть своя специфика. Например, оплата этим разработчикам происходит исключительно посредством криптовалюты.


Услуги разработчиков веб-приложений для даркнета

Закрытые ресурсы


Довольно часто нам попадались различные закрытые для глаз обычного посетителя ресурсы. Можно только гадать о контенте, спрятанном за ними: возможно, это очередной форум или маркет, возможно, это админка какого-нибудь ботнета. Очень редко закрытый ресурс спрашивал имя и пароль — чаще мы просто наталкивались на ошибку 404, но при этом в логах фиксировались недавние переходы по скриптам веб-ресурса.

Эксплойты, трояны


В наших логах не оказалось ни одного ресурса данной тематики. Однако вот как комментирует данную ситуацию представитель «закрытого сообщества специалистов по информационной безопасности»:
«Даркнеты вообще и Tor в частности не привнесли никаких изменений в стандартные киберкриминальные бизнес-процессы. Площадки, на которых продается малварь, эксплойты к уязвимостям, сплоит-паки и т. п. по-прежнему остались во внешней сети. Попросту незачем уходить в даркнеты — это отсекает платежеспособную аудиторию и клиентов, усложняет сервис. Разработчики вредоносного ПО желают максимально упростить свою коммуникацию с заказчиками, и в этом процессе Tor — неудобный и сомнительный инструмент. Только с точки зрения функционирования малвари даркнет выступает хорошим средством сохранения админки ботнета. Что касается кардинг-площадок, то кардеры — люди очень жадные и ленивые. Зачем уходить в даркнет, если достаточно ограничить доступ к контенту стандартными средствами веб-движков? Или ввести членский взнос за участие в форуме? Уязвимости нулевого дня уже трудно найти не только в даркнете, но и на закрытых площадках в традиционном вебе. Эксплойтостроители теперь работают в командах и напрямую с конкретными заказчиками, так что им теперь вряд ли нужны форумы и уж тем более даркнеты».



Пример закрытой площадки

Процесс «гугления» внутри торовских onion-ресурсов дал несколько ссылок на продавцов банковского трояна ZeuS, однако все эти ссылки находились внутри крупного маркета, который, наряду с троянцем, продает наркотики и тому подобный стафф.

Не Tor’ом единым


Технологическая суть даркнета сводится к организации дополнительного сетевого уровня, который работает поверх IP-протокола. Все это дает возможность осуществлять анонимную передачу данных (Tor) и в ряде случаев анонимно размещать свое веб-приложение (I2P).
Стоит отметить, что Tor больше ориентирован на сохранение анонимности участника информационного обмена, в то время как I2P и Freenet больше подходят для реализации анонимного хостинга. «Диггерам» контента в даркнетах нельзя оставлять без внимания I2P и небольшую анонимную пиринговую сеть Freenet, ведь это настоящий «тихий омут».

I2P


После установки Java-клиента I2P на странице 127.0.0.1:7658 появляется «заглушка» для локального сайта. Для того чтобы данный сайт стал виден всем участникам этого даркнета, нужно настроить туннель. Для адресации внутри сети используются идентификаторы, представляющие собой Base64-строки. Для сопоставления трудночитаемого идентификатора с уникальным именем нашего проекта (например, project.i2p) необходимо зарегистрировать для данного идентификатора доменное имя. Пусть тебя не смущает отсутствие системы доменных имен — ее попросту нет, так как она сама по себе была бы «узким горлышком» в работе сети, то есть создавала бы угрозу для сохраненности передаваемой информации.

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

Выход на свет


Не принимай близко к сердцу утверждения об абсолютной анонимности в даркнете: все больше исследований доказывают, что анонимность в Tor и ему подобных сетях — это просто альтернатива другим средствам уберечься от внимания «соседа». Даркнет в настоящее время лишь надежда для анархистов (и желающих увеличить свой «девайс»), рынок для наркоманов и поле для исследований.

С помощью пассивной системы мониторинга мы смогли определить целевую аудиторию даркнета, немного покопались в актуальном контенте и нашли отправную точку для активной системы мониторинга, которая, в свою очередь, имеет шансы твердо ответить на вопрос, существует ли анонимность в даркнете.

Благодарность


Спасибо Амирану Гебенову за помощь в конфигурировании и администрировании описанной системы мониторинга.


Автор: Денис Макрушин



Впервые опубликовано в журнале «Хакер» от 09/2014.

Подпишись на «Хакер»
Автор: @XakepRU

Комментарии (12)

  • +1
    Ничего не понял. Каким образом exit node может видеть onion-адреса сайтов? Последний уровень шифрования снимается на ноде-хостере сайта, и всем промежуточным нодам не доступен. exit node вообще даёт доступ в интернеты, а не в darknet, так что с какой стати она должна видеть onion URL'ы — не понятно.

    Поясните, каким образом у вас в exit-трафике начали появляться onion-сайты. Спасибо.
    • +2
      Данные находятся в заголовке запроса Referer, который может содержать URL источника запроса.
      • +1
        Ага, понятно. Просто на скриншоте вы показываете дамп http-сессии, в которой посылается имя onion-ресурса в самом запросе (GET /...), и это-то и смутило.

        Вы бы получше часть, связанную с referr'ами описали, а то у многих вопросы.

        ЗЫ Писать гигазы трафика не нужно, достаточно только собирать ref'ы, tshark умеет.
        • +2
          Я не автор.
          Видимо во всех заголовках запроса ищутся подстроки .onion доменов.
          Логично, что таким методом не отследить интересных ресурсов, которые заботятся об анонимности пользователей.

          ЗЫ Видимо автор очень хотел добавить в статью, столь модное сейчас, словосочетание «Big Data».
        • 0
          Интересно то, что некоторые .onion-ресурсы содержались не только в заголовках referrer, но и в других частях пакета, поэтому, чтобы ничего не упустить, лучше записывать полный дамп HTTP-сессии. Возможно, лучше ограничить набор портов для exit-ноды, чтобы сократить размер дампов.
      • 0
        Так можно отследить только сайты на которых есть ссылки на внешние ресурсы.
    • 0
      del
  • +4
    а каким образом на выходной ноде оказался внутренний ресурс тора.
    • +3
      Я так понимаю, что когда на внутреннем .onion ресурсе размещена какая то ссылка, например на amazon.com, то по клику идет запрос на интернет ресурс amazon.com через одну из выходных нод, и в реферере оказывается ссылка на .onion страницу, откуда был инициирован клик.
  • 0
    А где список ресурсов даркнета, упомянутый в статье?
    • 0
      skunksworkedp2cg.onion/ — вот список ресурсов, можно искать по языку страниц
      ahmia.fi/search/ — вот поисковик по даркнету удобный

  • –6
    Я понимаю, что большая часть статьи — техническая, однако ну зачем ви тгавите? Опять бомбы, Украина, вещества, порнуха, уклон в преступные намерения. А можно высматривать в этих 210 Гб что-нибудь еще? Сколько людей ищут юридическую/медицинскую/психологическую консультацию/помощь, которую не могут или боятся получить открыто? Сколько людей покупают от смертельных болезней лекарства, которые не одобрены локальным минздравом и, следовательно, недоступны? Ну или хотя бы сколько пользователей в Китае ищут новые эпизоды Adventure Time? Если это все слишком сложно, то можно хотя бы не подкидывать дров.

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое Разработка