id: Гость   вход   регистрация
текущее время 16:14 26/04/2024
Автор темы: Гость, тема открыта 02/07/2010 17:04 Печать
Категории: криптография, софт, gnupg, анонимность, анализ трафика, openpgp, инфобезопасность, протоколы, стандарты, атаки, ssl, расширения, защита im
https://www.pgpru.com/Форум/АнонимностьВИнтернет/ОбезличиваниеШифрованногоТрафикаJabberИSSL
создать
просмотр
ссылки

Обезличивание шифрованного трафика: Jabber и SSL


Какую уникальную информацию несёт в себе трафик, зашифрованный SSL'ем? Может быть, противник может узнать текущее время не машине пользователя, ведь при шифровании проставляется время (в GnuPG точно так)? Или время всегда идёт в UTC, а потому "уязвимость" актуальна только для протоколов обмена шифрованными сообщениями в реальном времени? Если под браузеры есть какое-никакое решение firefox+torbutton, то что можно сказать о других приложениях, работающих с SSL/TLS, например, jabber-клиентах? Если в jabber-клиенте также включено end-to-end PGP-шиврование сообщений, пишутся ли служебные поля типа версии gpg, операционной системы, времени шифрования? Смутно пропоминается обсуждение на форуме того, что при посещении скрытых сервисов Tor следует избегать https и, якобы, лучше его вообще запретить в браузере под Tor'ом — не из этих же ли соображений?


Насчёт ручного использования GnuPG: если используется опция --no-emit-version, то противник не может узнать ничего в лоб об использованном софте, но по ряду косвенных признаков формата (PGP-пакетов?) может оценить версию gpg. Поправьте, если не прав. Как опцию --no-emit-version прописать статически в конфиге gpg?


Безотносительно проблем, пораждаемых шифрованием, сами jabber-клиенты сообщают о себе слишком много: большая часть – точную версию клиента, часть из них – также и ОС. Есть ли такие клиенты, которые позволяют не афишировать свой тип и среду в которой они работают, или, ещё лучше, предоставлять фейковую информацию, выдавая себя за самый распространённый jabber-клиент в самой распространённой конфигурации и ОС?


Помню, что эти вопросы уже вскольз затрагивались, но давно и без конкретики. Может быть, теперь появились подвижки в сторону решения?


 
На страницу: 1, 2, 3, 4 След.
Комментарии
— SATtva (02/07/2010 17:13, исправлен 02/07/2010 17:14)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Если в jabber-клиенте также включено end-to-end PGP-шиврование сообщений, пишутся ли служебные поля типа версии gpg, операционной системы, времени шифрования?

Нет. Узнать содержимое xmpp-сообщений нетрудно: запустите wireshark и подключитесь к jabber-серверу, выключив SSL-шифрование.


Насчёт ручного использования GnuPG: если используется опция --no-emit-version, то противник не может узнать ничего в лоб об использованном софте, но по ряду косвенных признаков формата (PGP-пакетов?) может оценить версию gpg. Поправьте, если не прав.

Определить версию строго вряд ли возможно. Можно только утвердительно сказать, был ли использован PGP или GnuPG, а также с некоторой погрешностью предположить диапазон возможных версий программы.


Как опцию --no-emit-version прописать статически в конфиге gpg?

no-emit-version

— Гость (02/07/2010 21:54)   <#>
Нет. Узнать содержимое xmpp-сообщений нетрудно: запустите wireshark и подключитесь к jabber-серверу, выключив SSL-шифрование.
Хорошо. Значит, gpg идёт в jabber уже "очищенным", а как обстоит дело с SSL?

Зная, что Вы, SATtva, заядлый tkabber'ист, а сам tkabber – написан достаточно просто (скриптовый язык) и модульно, хотел бы спросить: позволяет ли он фейкать инфу о клиенте?
— SATtva (02/07/2010 22:13)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Значит, gpg идёт в jabber уже "очищенным", а как обстоит дело с SSL?

Что ему OpenSSL возвращает, то он и передаёт в эфир. Тут ситуация не такая же, как с браузерами, где возможно, например, кэширование криптопараметров между анонимными и неанонимными сессиями. Обычно если пользователь подключается к jabber-серверу через Tor, то так постоянно и сидит, а не скачет туда и обратно.

Зная, что Вы, SATtva, заядлый tkabber'ист, а сам tkabber – написан достаточно просто (скриптовый язык) и модульно, хотел бы спросить: позволяет ли он фейкать инфу о клиенте?

Я его не ковырял в этом плане. При желании сделать, конечно, можно, и даже перекомпилировать не придётся. Опять же, берите Wireshark и смотрите, что уходит по каналу. Потом тем же grep'ом ищите в коде нужные поля/значения и исправляйте под свои нужды. Правда, я сомневаюсь в том, настолько ли это нужно и не выделите ли Вы себя тем самым ещё больше.
— Гость (02/07/2010 22:38)   <#>
Если в jabber-клиенте также включено end-to-end PGP-шиврование сообщений, пишутся ли служебные поля типа версии gpg, операционной системы, времени шифрования?
Нет.Не до конца согласен. Надо еще показать, что сами gpg-пакеты данных, которые бинарно (на самом деле base64) передаются по жабберу, ничего такого не содержат. Cам xmpp – да.
— SATtva (02/07/2010 22:44)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Надо еще показать, что сами gpg-пакеты данных, которые бинарно (на самом деле base64) передаются по жабберу, ничего такого не содержат.

Формат OpenPGP не предусматривает полей для версии программы и другой подобной дребедени.
— Гость (02/07/2010 22:49)   <#>
Тут ситуация не такая же, как с браузерами, где возможно, например, кэширование криптопараметров между анонимными и неанонимными сессиями. Обычно если пользователь подключается к jabber-серверу через Tor, то так постоянно и сидит, а не скачет туда и обратно.
Для простоты понимания опишу что дано, и в чём состоит атака. Есть два jid: один – анонимный и используется только через Tor, другой – нет. Считается, что противник может пропарсить логи jabber-серверов (не обязательно только мои – в том числе и jabber-сервера адресатов) на предмет совпадений. Т.е., зная неанонимный jabber-клиент и его версию/конфигурацию, противник может разыскать претендентов на "парный" анонимный профиль. Например, jabber сообщает свою версию контакт-листу (равно, как и статус) сам при коннекте в сеть, но также может отвечать на эапросы версии и мануально. Впрочем, даже фейковость информации о клиенте и ОС вряд ли спасёт дело: клиенты сильно разнятся друг от друга по списку поддерживаемых фич, исходя из которых можно получить уникальный отпечаток не только клиента, но и его конфигурации. Т.о., проблема очень похожа на браузерную. Конечно, можно банально использовать разные jabber-клиенты для анонимного и неанонимного юза, но это скорее заметание мусора под ковёр, а не решение проблемы :)
— Гость (02/07/2010 22:53)   <#>
Что ему OpenSSL возвращает, то он и передаёт в эфир
Внешний (в т.ч. активный) наблюдатель за jabber-трафиком может определить версию OpenSSL?
— SATtva (02/07/2010 22:55, исправлен 02/07/2010 22:55)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Конечно, можно банально использовать разные jabber-клиенты для анонимного и неанонимного юза, но это скорее заметание мусора под ковёр, а не решение проблемы :)

С этим утверждением категорически не согласен. Разделение профилей — наиболее надёжное решение, будь то с браузерами или IM-клиентами.

— Гость (02/07/2010 23:02)   <#>
Разделение профилей — наиболее надёжное решение, будь то с браузерами или IM-клиентами.

Да, но это ad hoc, и у него есть издержки: мне нравится какой-то один jabber-клиент, я к нему привык и настроил под себя, затюнил. А теперь прийдётся использовать какой-то другой клиент только чтобы "быть непохожим". Под решением проблемы понимается анализ всего того, что предоставляет стандарт и его конкретные реализации на предмет утечек идентифицирующих/условно-уникальных данных. Дальше выясняется наиболее распространённая конфигурация, и под неё затачивается профиль, чтобы все, ходящие в jabber через Tor не отличались друг от друга (конечно, при использовании gpg противник будет знать каков ключ адресата, но "утечкой" при таком подходе здесь является лишь сам факт использования gpg, т.к. ключи у всех всегда разные).
— SATtva (02/07/2010 23:10, исправлен 02/07/2010 23:11)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Да, но это ad hoc, и у него есть издержки: мне нравится какой-то один jabber-клиент, я к нему привык и настроил под себя, затюнил. А теперь прийдётся использовать какой-то другой клиент только чтобы "быть непохожим". <...> Дальше выясняется наиболее распространённая конфигурация, и под неё затачивается профиль, чтобы все, ходящие в jabber через Tor не отличались друг от друга

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

— Гость (02/07/2010 23:13)   <#>
Конечно, можно банально использовать разные jabber-клиенты для анонимного и неанонимного юза,
но это скорее заметание мусора под ковёр, а не решение проблемы :)

Ой, мне кажется мы друг друга не правильно поняли. Я имел в виду "разные jabber-клиенты" не только в смысле "разные jid и профили" (разные инстэнсы), но и разные программы: например, анонимный – под tkabber, а неанонимный – под gajim.

У браузеров профили, конечно, разделить можно и нужно, только вот всего полноценных браузеров – 3-4 штуки, а нормальный и позволяющий обезличивание – только один (firefox). Теперь представьте, что firefox запущен на какой-нибудь редкой операционной системе (намного более редкой, чем Gentoo), тогда, если torbutton слажает в каком-то случае и противник получит хотя бы частичную правдивую информацию о конфигурации firefox, пользователь может быть вычислен элементарно (например, берём логи популярных веб-ресурсов и ищем среди них посещение с IP-адресов, имеющих заданный user agent – множество поиска сократится в миллионы раз).

PS: Виртуализация надёжно заметёт под ковёр и эту проблему, но это опять же – под ковёр, брутально, некрасиво и неизящно :) – хотя бы потому, что далеко не каждый может столько времени тратить на настройку анонимных профилей.
— Гость (02/07/2010 23:19)   <#>
Поэтому подстраиваться под некое среднестатистическое большинство, как это делает TorButton, в случае IM не требуется.
Мне это утверждение кажется спорным. Вы не видете пространство для улучшения анонимности/обезличенности jabber-клиентов? Как минимум – издержки из-за искуственного создания как можно более разных профилей, второй момент – даже сам тип клиента (как и тип ОС) уже много что говорит о пользователей, что говорить не следовало бы (клиенты, как и ОС, отличаются по степени "гикнутости", зная ОС, используемую клиентом сразу можно предположить чтение им ресурсов по этой ОС и т.д.). Имхо, всё совсем не так просто.
— SATtva (02/07/2010 23:24)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Вы не видете пространство для улучшения анонимности/обезличенности jabber-клиентов?

Я не вижу, как можно получить анонимность, когда пользователь изначально псевдонимен. (У Вас изначально есть уникальный идентификатор — jid. Добавление к нему любых дополнительных сведений типа ОС или версии клиента уже не сделает ситуацию хуже.) Как минимум решение должно затрагивать и jabber-серверы, и сам протокол xmpp.
— Гость (02/07/2010 23:53)   <#>
Обычно клиенты следуют букве протокола, который хорошо документирован. Поэтому лучше начинать изучение клиента со списка поддерживаемых им расширений (xep'ов). Отдельные расширения прямо перпендекулярны понятиям анонимность и местами псевдонимности, позволяя значительно сузить круг поиска. Передача версии клиента и типе оси это цветочки.
— Гость (03/07/2010 01:13)   <#>

Это достаточно легко, http://xmpp.org/extensions/xep-0175.html

А вообще как я понял, автор хочет чтобы в одном профиле была одна jabber:iq:version/os, в другом другая. Ну так это не сложно, достаточно чуть-чуть поправить исходники.
Менять jabber:iq:version/name и /version имхо не имеет смысла, tkabber достаточно популярен. Кроме того, есть еще http://xmpp.org/extensions/xep-0115.html ЕМНИП для каждого клиента уникальные, одна морока, если хочется чтобы показывал другой клиент, то другой клиент и юзать.
На страницу: 1, 2, 3, 4 След.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3