Создание уникального поведенческого отпечатка опасно для пользователей Tor, потому что данные, полученные при работе в Tor, можно сравнить с данными, полученными при работе с обычным браузером. Это не всегда позволит со стопроцентной точностью определить пользователя, но даст некий старт для расследования.
Хотя Роскомнадзор утверждает, что использование инструментов обхода блокировок сайтов не является нарушением закона, поведенческие технологии помогут найти нужного человека — в том числе в обратной последовательности: в Tor — из обычного браузера.
Одно из уязвимых мест, пишет Хосе Карлос Норте, это скорость взаимодействия с колёсиком мыши. Она зависит от конфигурации операционной системы и от железа. Проверьте, как выглядит результат, по этой ссылке. Следующий пункт — скорость самой мыши. С помощью JavaScript можно измерить её, пока пользователь сидит в браузере.
Опять же с помощью JavaScript можно измерить характеристики CPU пользователя — записать время, необходимое для выполнения задачи, а затем использовать эту информацию как метку компьютера подозреваемого. Браузер Tor включает защиту от подобных сценариев, ограничивая функцию Date.getTime() JavaScript, но существуют способы обхода этого ограничения.
Норте описал использование ещё одного метода — Element.getBoundingClientRect(), он возвращает объект текстового прямоугольника, который включает группу текстовых прямоугольников. Возвращаемое значение — это объект TextRectangle, содержащий свойства для чтения left, top, right и bottom, описывающие бокс с границами в пиксельном измерении. Вот как выглядит результат в браузере Tor с двух разных компьютеров. Разница очевидна, и её также можно использовать для обнаружения пользователей.
Исследования Норте показали, насколько легко можно выявить уникальные отпечатки пользователей Tor, чтобы отслеживать их деятельность в интернете и соотносить с посещением различных страниц.
Комментарии (48)
WhiteSama
12.03.2016 00:42Было бы интересно посмотреть на результаты одного и того же компьютера, но при разной нагрузке и разном размере окна браузера. Всегда будут разные значения, если конечно человек сам не будет жестко палить свой отпечаток (браузер на весь экран, одинаковый алгоритм взаимодействия).
Erynnis
12.03.2016 00:44+1По названию подумал, что «Большие данные следят за тобой».
А оказалось, что и без них нормально можно обойтись…
ушел ставить Тор на виртуалкуsim31r
12.03.2016 03:27Мышка и быстродействие в виртуалке отслеживаются так же, останется уникальный отпечаток виртуальной машины.
Erynnis
12.03.2016 17:20Пусть отслеживаются. Главное, что это будет другой уникальный отпечаток. Т.е. нельзя будет сопоставить его с таким же, но в обычном браузере.
VladimirAndreev
14.03.2016 16:49ну, если в виртуалке никогда не пользоваться неТОРом — то не получится...
electronus
14.03.2016 18:38После новости о подсадке шпионов через ТОР для «посадки» подозреваемого, кроме как в виртуалке тор лучше и не держать
GennPen
12.03.2016 04:11Странно, но у меня почему-то когда кручу колесо, то показывает разные результаты: от 50 до 150, в зависимости от того как быстро кручу колесо. От браузера не зависит: что в Хроме, что в Торе.
ozonar
14.03.2016 23:41Я так понял этот скрип выдаёт графы в какой момент скролл крутится (и насколько долго), а в какой момент – нет. Анализировать эти пики и составлять какой-либо портрет пользователя он не умеет.
igruh
12.03.2016 08:07+4«Проверьте, как выглядит результат, по этой ссылке.»
Хм… Только мой внутренний параноик после прочтения статьи видит там сыр?
mantyr
12.03.2016 08:49Safari даёт какие-то нулевые результаты в тесте со скролом, Firefox каждый раз разные, но бывают похожие, но там похожести процентов 70-80% от силы. Не сказал бы что этот метод может быть действительно стоящим идентификатором.
gearbox
12.03.2016 08:49давно крутилась в голове сделать на фантоме DOM-прокси, что бы ко мне в броузер попадал уже просчитанный DOM, а вся нечисть крутилась на фантоме в надежной песочнице.
9uvwyuwo6pqt
12.03.2016 08:49JavaScript «уникального отпечатка»
но в там же noscript, и его для этого нужно отключить.
Hayabusa
12.03.2016 08:49+2Пффф. Тор на виртуалке и мышь в левой руке. Или тачпад и мышь. Тут вроде была статья, где собирались по "отпечатку мыши" читеров в онлайн играх блокировать. И человеку в комментах привели 1001 причину почему идея несостоятельна.
lksdfj89
12.03.2016 20:58+1Может кто-нибудь дать ссылку?
a5b
13.03.2016 18:03+1https://geektimes.ru/post/250244/ "99,999999728% защита от читеров в 3D-шутерах" / CeBeP_2012, 12 мая 2015
"Логично будет предположить (пока только предположить), что те же индивидуальные особенности динамического стереотипа присущи человеку не только тогда, когда он пользуется ручкой или карандашом, но и тогда, когда он пользуется мышью.… Все дальнейшее излагается гипотетически, прошу не забывать об этом."
В комментариях были не только сообщения о несостоятельности конкретного подхода, но и ссылка на статью о других применениях "отпечатков" движения мыши:
http://www.cs.wm.edu/~hnw/paper/ccs11.pdf An Efficient User Verification System via Mouse Movements / CCS’11 (Computer and communications security), October 17–21, 2011, Chicago, Illinois, USA. doi:10.1145/2046707.2046725
Еще несколько статей по направлению:
https://www.fer.unizg.hr/_download/repository/KDI_Mirko_Stanic.pdf Continuous User Verification Using Mouse Dynamics, M Stanic
http://miro.enev.us/docs/mouse_ID.pdf Identifying Game Players with Mouse Biometrics. Ryan Kaminsky, Miro Enev, Erik Andersen, December 8, 2008
Neuromantix
12.03.2016 11:16Я могу держать мышь на столе, на колене, на доске, которая лежит на коленях, при этом к каждому варианту добавляется еще с ковриком/без коврика, когда мне приходится читать что-то скучное, могу хаотично водить мышью по экрану. или вообще поставить ее на звуковуху, где от блестящей поверхности ее заглючит и курсор сам ползать будет. Об'анализируйтесь!
alexk24
12.03.2016 15:06+2могу хаотично водить мышью по экрану
Это вам кажется что хаотично. По факту, скорее всего, такое вождение тоже имеет свой уникальный отпечаток.
gabbermax
12.03.2016 11:20Хм, ну да нужно залогиниться на руктрекере, включили джаваскрипт, а тут и разрешение экрана и мышь и события клавиатуры, а может и флеш есть, тогда и реальный айпи есть — ну прям подарок, юзер-агент и кеш и так доступны. Делаем уникальный слепок пользователя и смотрим чем плохие парни в сети занимаются, а может и в даркнете. Поднимем сайтик в даркнете нужной тематики и уря: плохие парни работают на нас или мы их накажем и они будут на нас работать. Всем смотреть «Версия 1.0», всем свежего натурального молока. Пришлите нанозитов от паранойи на мой матсборщик.
Barma2012
12.03.2016 11:35+1Про текстовые прямоугольники в предпоследнем абзаце — не понял. Что это такое?
sumanai
14.03.2016 18:13+2Делаем элемент div, в него вкладываем кучу других блоков с надписями различными шрифтами внутри. В зависимости от установленных шрифтов и параметров сглаживания эти блоки будут немного разных размеров, соответственно, и родительский блок будет разных размеров на разных ПК. Скорее всего так.
Hellsy22
12.03.2016 17:03В идее "отпечатке" размера видимой области ничего нового нет. Но все это работает примерно так же, как и попытки определять людей по User-Agent — ну да, если у вас всего три человека, то можно понять кто из них кто. А если у вас три миллиона человек, то любые сочетания параметров перестают быть хоть сколь-нибудь уникальными. Тема с отпечатками движений мыши тоже всплывает с завидной регулярностью уже лет 15, но воз и ныне там. Причина: слишком мало материала для анализа.
gabbermax
12.03.2016 23:53Суть не в одном параметре, а в их сочетании.
https://panopticlick.eff.org/ — популярный сервис для проверки уникальности вашей «сетевой конфигурации ».Hellsy22
13.03.2016 06:16+1Этот сервис занимается лишь рекламой своего софта. Вот вывели бы они сравнительную таблицу типа "такой отпечаток встречается с частотой 800ppm" — можно было бы о чем-то говорить.
Hellsy22
13.03.2016 06:56+1Update: Ага, нашел какие-то данные. Это интересно, да. Но меня терзают сомнения насчет System Fonts — даже на свежей виртуалке они уникальны. Очень, очень не хватает таблицы, чтобы знать под что маскироваться.
Mixim333
13.03.2016 11:08Извините, но чушь полная! Например, лично я мышью\тачпадом пользуюсь очень мало, т.к. на более-менее адекватных сайтах стоят корректные TabIndex'ы и мне вполне хватает клавиатуры. Про «бенчмарк процессора» вообще не понял — каждый пользователь имеет уникальный CPU (я про модель, технические характеристики)?
kellakilla
13.03.2016 12:04У меня к компьютеру подключены две мыши: одна обычная, другая игровая. У игровой можно менять разрешение сенсора, поэтому при тесте по сслыке из статьи у меня были разные графики, так получается, что у меня за компьютером шесть человек (пять режимов на игровой плюс один для офисной), про индивидуальный отпечаток имхо бред- современные процы используют энергосбережение и меняют частоту в зависимости от нагрузки. Плюс есть возможность выставить частоты в широком диапазоне ( железобетонно для AMD ) даже количество активных ядер менять.
Goodkat
14.03.2016 19:02А что, кто-то пользуется TOR-ом вне виртуалки для каких-либо предполагающих анонимность целей?
Понятно, что анонимность не нужна, если TOR-ом пользуешься только для обхода блокировок роскомцензуры, чтобы файлик какой скачать.
esudnik
14.03.2016 19:32Есть также готовые "Fingerprint" библиотеки типа https://github.com/Valve/fingerprintjs для уникальной идентификации пользователей в интернете.
lisichansk
15.03.2016 09:19+1Две USB-мышки. Одна для обычной работы, вторая для «безпалева». Две операционки. Два десктопа. Два разных провайдера. Две разных квартиры. Две личности по разным документам (придётся потратиться). Две личности разного пола… Или удалённый сервер за 4 доллара в месяц.
APXEOLOG
15.03.2016 16:49Очень сильно сомневаюсь в правдивости данной статьи. Скорость взаимодействия с колесиком мыши зависит не только от конфигурации оси и железа, но еще и от того с какой скоростью пользователь непосредственно крутит колесико мыши (а это зависит от уровня вовлеченности, настроения и кто знает чего еще). Ну вот вы видите числа от 0 до 150 (допустим), в зависимости от того, как быстро пользователь крутит колесо, как это поможет его вычислить?
Бенчмарк процессора из той же серии. Главное упомянуть чтобы пользователь не забыл выключить видео/стрим в соседней вкладке, а лучше вообще все приложения закрыл, а то вдруг вместо Core i7 бенчмарк выдаст Core i5
dokito
И Tor дырявый…
negaft
Никто же говорит, что Тор — решение, защищённое от дурака. Конечно, можно включить JavaScript, выключенный там изначально, ЕМНИП. Только ругать Тор при этом не нужно, он явно не виноват в вашей деанонимизации в этом случае.
kafeman
Tor тут вообще ни при чем. JavaScript можно включить или отключить только в браузере. Если вы про Tor Browser, то да, там при указании сильного уровня паранойи включается NoScript.
Giriia
Яваскрипт там кстати теперь по умолчанию включён.
Ra-Jah
Как можно при включенной обработке яваскриптов избежать их исполнения, просветите. Не уверен, что возможно предупреждать пользователя в простой и понятной форме о том, что сейчас будет делать с пользовательским ПК загруженная страница, хотя довольно интересная идея.
По аналогии с системой разрешений приложений мобильных ОС, например.
VladimirAndreev
ну, про картинки ТОР браузер что-то говорил, что они не_помню_какую_хрень собрали, которая может тебя раскрыть, отправить правильные или левые...
juray
Вот кстати, в старой опере можно было запретить скриптам отдельные возможности — например, перехват правой кнопки мыши и еще несколько не столь актуальных. Осталось ли это в новой — не знаю, я с неё ушёл.
В современном файрфоксе в about:config удалось найти только dom.allow_scripts_to_close_windows