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

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

Для демонстрации работы метода подготовлен рабочий прототип страницы, учитывающей скорость движения мышью и особенности прокрутки колесом мыши. Вместо штатного вызова Date.getTime(), который манипулирует только интервалами в 100мс, используется вызов setInterval в WebWorker для увеличения значения переменной каждую миллисекунду. Точности в 1мс достаточно для отслеживания событий мыши. Для повышения вероятности сопоставления в демонстрационном примере также задействовано несколько дополнительных методов идентификации, которые остаются работоспособны в Tor Browser. Например, производится измерение производительности системы путём измерения c миллисекундной точностью времени выполнения сильно нагружающего систему JavaScript-кода. Кроме того, применяется вызов getClientRects для учёта отличий отрисовки DOM-элементов на экранах разных компьютеров.



Источник: http://www.opennet.ru/opennews/art.shtml?num=44027