Дрожание смартфона есть великий признак

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

Гироскопы предназначены для отслеживания изменения углов ориентации тела относительно других тел, и знакомимся мы с ними в глубоком детстве — правда, называем их гораздо короче: юла. В телефоны волчок, разумеется, никто не встраивает, там используются совсем другие принципы, но цель вполне понятна — например, повернуть карту под нужным углом при повороте телефона, не говоря уже о разнообразных кинетических играх от «прокати шарик по лабиринту» и до чего-то более сложного.

На конференции IEEE, посвящённой безопасности и защите приватности, был представлен доклад, описывающий идентификацию устройств от Apple по истории показаний MEMS — подсистемы, объединяющей в себе акселерометр, гироскоп и магнитометр. Операционная система iOS исторически предоставляла доступ к данным этих устройств через Web API, и исследователь из Кембриджа Алистер Бересфорд (Alastair Beresford) продемонстрировал возможность идентификации конкретного устройства по набору этих данных. Способ идентификации был найден ещё в августе прошлого года, а исправления в iOS последовали сравнительно недавно — в марте 2019 года.

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

Выяснилось, что, во-первых, до данных калибровки вполне реально добраться через API, доступные веб-браузерам. Во-вторых, они никуда не деваются даже при сбросе настроек системы к заводским. Всего за полсекунды можно собрать необходимое количество данных, и дальше специально разработанные алгоритмы позволяют сделать вывод о характере движений владельца во время съёма данных. Внешние факторы — место и температура окружающей среды — не влияют на съём данных.

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

В «дикой природе» этот способ отслеживания, скорее всего, до сих пор не применялся, хотя из 100000 самых популярных сайтов по версии Alexa сбор таких данных проводился больше чем на 2000, и на части из них эти данные уходили на сторонние серверы. Данные доступны через все браузеры — Chrome, Safari, Opera, Mozilla, хотя, как отмечают исследователи, через них получается снять «всего лишь» 42 бита для идентификации.

В вышедшую недавно версию iOS 12.2 вошли исправления, которые выключили по умолчанию доступ к данным MEMS из Safari, а также огрубили данные, доступные при включённом API, так что атака теперь будет трудно осуществима. Пользователи более дешёвых устройств с OS Android в большинстве своём уязвимости не подвержены — производители, как правило, не предусматривают столь точной калибровки, которая требуется для осуществления атаки. Авторы предполагают, что телефоны Google Pixel 2 и Pixel 3 могут предоставить возможность аналогичной атаки, но точность такой идентификации будет куда ниже, чем на Apple. В Google пока ещё работают с информацией о SensorID, так что, возможно, мы ещё увидим исправления этого механизма и для Android.


Автор:  Дмитрий Белявский (ТЦИ)

Возврат к списку