Что на самом деле происходит с рандомизацией MAC-адресов в iOS 8
Обычно, когда вы бродите с устройством с WiFi, не подключенным к сети, оно рассылает широковещательные запросы, чтобы попытаться найти известные сети. Эти запросы посылаются с использованием MAC-адреса WiFi-адаптера вашего телефона, который является уникальным и, как правило, постоянным. Это означает, что любой мониторящий эти запросы, скажем, в универмаге, например, может постоянно отслеживать вас в магазине и через несколько посещений. Эта информация не привязана к вашим персональным данным, но аналитические компании могут почерпнуть из нее большое количество информации о ваших покупательских привычках, и некоторые пользователи не в восторге от этого.
Как это должно работать
Начиная с iOS 8, эппловские устройства должны менять случайным образом свой MAC-адрес, рассылая эти WiFi запросы. ОС отвечает за создание случайных, локально управляемых MAC-адресов. Есть надежда, что до тех пор, пока вы не подключены к точкам беспроводного доступа, ваше устройство не может быть использовано более для отслеживания вас. Поскольку это WiFi-запросы, их расстояние ограничено. Желающий отслеживать наличие и перемещения вашего устройства должен находиться относительно близко. Одно из мест, где мы такое видели — в универмагах для мониторинга покупательских привычек клиентов. С новым MAC-адресом, периодически генерируемым для вашего устройства, больше не будет постоянного маркера для пассивной слежки.
Как это, похоже, работает
К сожалению, похоже, что эппловские изменения в поведении этих запросов — это не совсем то, на что мы надеялись. Пару недель назад представитель компании GISi Indoors, занимающейся навигацией в помещениях и аналитикой местоположений, обратился к нам, сказав, что они проводили тестирование изменений функциональности в бете iOS 8 и видели как это работает. Мы запустили Wireshark, чтобы взглянуть самим.

Конечно, мы увидели, что наше устройство радостно рассылает WiFi-запросы, используя свой настоящий MAC-адрес, и мы были не одни в этом. Исследователь безопасности Hubert Seiwert, создатель утилиты iSniff, видел то же поведение. Поначалу казалось, что рандомизация MAC совсем не работает, и это было странно, поскольку Apple сделало акцент на этой возможности при публикации.
После долгих копаний и многих бессонных ночей наблюдения за трафиком в Wireshark, стало ясно, что, похоже, Apple сделала эту функцию, как было заявлено, но не совсем так, как ожидалось. На конференции WWDC в сессии, посвященной пользовательской приватности, слайд говорил: «MAC-адрес, используемый для WiFi-сканирования, не всегда будет настоящим (универсальным) адресом». Они не сказали, что он никогда не будет настоящим MAC, только то, что он не всегда может быть им.
На прошлой неделе аналитическая компания AirTight опубликовала чрезвычайно подробные отчеты о тестировании рандомизации MAC в iOS 8 и получении аналогичных результатов. Если вы еще не читали их, я настоятельно рекомендую посмотреть. Их тестирование, кажется, очень обширно, хотя их результаты не полностью совпадают с нашими.
В нашем тестировании мы обнаружили, что для того, чтобы функциональность рандомизации работала, поддерживаемые iOS 8 устройства должны удовлетворять двум критериям. Во-первых, устройство не должно быть подключено к WiFi, что имеет смысл. Во-вторых, устройство должно быть в режиме сна. AirTight заключил, что службы определения местоположения (Location Services) и сотовую службу тоже необходимо отключить, но если внимательно посмотреть, я не думаю, что это так.
На iPhone 6 под управлением iOS 8.0.2 я имел возможность наблюдать WiFi-запросы, отправляемые с рандомизированным MAC-адресом со включенными службами определения местоположения и сотовой службой. Проблема в том, что если у вас есть сотовое соединение, ваш телефон обычно не засыпает надолго. Даже если экран уснул, телефон может оставаться активным, например, получая новое электронное письмо по push-уведомлению. Даже если вы выключили оповещения, телефон просыпается, когда это письмо приходит, несмотря на то, что экран остается отключенным.
К сожалению, требование того, чтобы телефон находился в режиме сна, делает эту функцию практически бесполезной, хотя и совпадающей с описанием Apple на WWDC. Для того, чтобы стали использоваться случайные MAC-адреса, мне пришлось отключить оповещения для нескольких приложений, отключить push для электронной почты и не спать до ночи, чтобы был больший шанс для телефона уснуть, не прервавшись, более чем на минуту или две. Даже при этих обстоятельствах я смог увидеть только один или два раунда запросов (которые, кажется, посылаются каждые пару минут) со случайными MAC-адресами, прежде чем телефон выдавал пачку запросов с настоящим MAC. Думаю, это могло произойти из-за какого-то процесса push-уведомлений, пробудившего телефон. С включенной сотовой связью я видел только примерно 50% запросов, идущих со случайно назначенными MAC-адресами.
Эта функция представляется еще более бесполезной, поскольку, хотя запросы идут со случайным MAC, они содержат 5 идентификаторов SSID сетей, к которым телефон ранее был подключен. Это значит, что даже когда MAC случайный, рассылаемые идентификаторы SSID могут служить «отпечатком пальца» моего телефона. MAC-адрес может быть случайным каждый раз, но если в каждом запросе посылается один и тот же набор из 5 сетевых имен каждые несколько минут, все еще остается возможным отслеживать мое устройство.
Следует ли нам беспокоиться?
В конечном счете, эта функция — не то, что Apple должен был сделать; это то, что они решили сделать, чтобы помочь пользовательской приватности. Теоретически это была прекрасная идея, но у исполнения, кажется, нет ничего действительно полезного. Пользователям не стало хуже, чем было в iOS 7, и эта информация все еще не привязывается напрямую к человеку, но она дает компаниям (и частным лицам) возможность отслеживать анонимных лиц без их согласия. Это полезно прежде всего для магазинов, маркетологов и аналитических компаний для анализа тенденций и привычек потребителей, но в идеале это то, над чем пользователи должны иметь некоторый контроль. Эти данные практически равны информации о нас, и мы должны иметь последнее слово в том, кто может использовать эти данные. Надеюсь, Apple может внести коррективы в процесс рандомизации MAC-адресов.
Фильтрация рандомизированных MAC-адресов Wi-Fi Магнитом
Телефоны, ноутбуки, плашеты в поисках знакомой Wi-Fi сети рассылают широковещательные запросы. Эти запросы посылаются с использованием реального MAC-адреса Wi-Fi адаптера телефона, который легко перехватить. Для защиты устройства от отслеживания в Wi-Fi сети применяется рандомизация MAC-адреса. То есть устройство подделывает MAC-адрес путем случайного набора цифр и букв. Подделка MAC-адреса осуществляется определенным образом так, чтобы ложный MAC-адрес никогда не совпал с реальным MAC-адресом ни одного из производителей оборудования.
Большинство современных устройств подделывают свой MAC-адрес в целях безопасности, т.к. его легко перехватить.
Wi-Fi радар сканирует все каналы и собирает все MAC-адреса. Большая часть MAC-адресов является ложными, т.е. рандомизированными. Каждое устройство генерит большое количество рандомизированных MAC-адресов. Поэтому если просто сканировать радио каналы, то процент настоящих устройств будет очень малым: 1-5% от общей массы.

Каждое устройство в среднем раз в минуту отправляет пакет с MAC-адресом в поиске Wi-Fi сети. При этом оно подделывает собственный MAC-адрес в целях безопасности. Отношение ложных MAC-адресов к реальным составляет в среднем 10:1, т.е. реальных адресов в 10 раз меньше.
95-99% MAC-адресов в радио среде являются ложными, т.е. рандомизированными.
Смотрите на результат сбора MAC-адресов на конференции по бизнесу. Подтвержденных (реальных) MAC-адресов гораздо меньше, но при этом итоговый охват посетителей близок к реальному количеству людей.

Необходимо фильтровать настоящие MAC-адреса телефонов, ноутбуков и прочих устройств. Наш Wi-Fi Магнит умеет узнавать настоящие MAC-адреса устройств. Он отправляет служебный пакет и ждет ответа устройства. Таким образом качество аудитории вырастает в разы.
Наш метод сбора настоящих MAC-адресов является коммерческой тайной, поэтому мы никому его не рассказываем. Наш метод позволяет выявить реальные MAC-адреса с точностью 97%. Для распознавания Подтвержденных MAC-адресов мы используем недокументированные возможности стека протоколов 802.11, не нарушающие законодательство РФ и не мешающие работе беспроводных сетей. А чтобы не потерять оставшиеся 3% MAC-адресов мы рекомендуем выгружать в Яндекс и myTarget все собранные MAC-адреса, а эти рекламные площадки уже сами отфильтруют ненужные адреса.
Наш Wi-Fi Магнит умеет узнавать настоящие MAC-адреса устройств. Он отправляет служебный пакет и ждет ответа устройства. Таким образом качество аудитории вырастает в разы.
Наш Wi-Fi Магнит оценивает обстановку вокруг себя и учится использовать окружающие публичные Wi-Fi сети для сбора МАС-адресов, но без подделки известных сетей. Чем дольше магнит находится на точке, тем точнее он определяет МАС-адреса.
Новые устройства используют статичную рандомизацию МАС-адреса в рамках одной Wi-Fi сети. Т.е. для «сети 1» — «МАС-адрес 1», для «сети 2» — «МАС-адрес 2» и т.д. И все эти МАС-адреса являются ложными. Но установленные на устройстве некоторые приложения собирают не только фактический реальный МАС-адрес устройства, на котором они установлены, но и МАС-адрес интерфейса в рамках текущего сетевого соединения, т.е. те самые статические рандомизированные МАС-адреса. Таким образом рекламная система собирает данные о фактических, рандомизированных МАС-адресах и рекламном идентификаторе клиента. Поэтому при выгрузке МАС-адресов в рекламные системы эти рандомизированные статические МАС-адреса будут сопоставлены с рекламным идентификатором клиента.
Метод ложной точки доступа Wi-Fi (знакомой сети),
который используют другие компании
Недобросовестные поставщики аналогичных услуг по сбору MAC-адресов используют метод ложной точки доступа Wi-Fi для выявления реальных MAC-адресов (karma attack). Они подделывают несколько популярных SSID, к которым происходит автоподключение устройств. Например, могут подделать название Wi-Fi сети в метро MT_free или вашу домашнюю сеть.
Такой метод мешает хорошей работе Wi-Fi сетей вокруг. Устройство увидит знакомую сеть, будет пытаться получить адрес по DHCP и засветит реальный MAC-адрес. Подключиться, конечно, оно не сможет, ведь сети-то нет. У вас будет периодически пропадать сеть и доступ в Интернет, когда устройство будет пытаться подключиться к «уже знакомой» фейковой сети. И все это будет происходит совершенно незаметно для вас.
Примечание
Подделывание Wi-Fi сетей противозаконно.
Кроме того, использование этого метода может повлечь за собой ответственность согласно ст. 273 «Создание, использование и распространение вредоносных программ для ЭВМ», ст. 274 УК РФ «Нарушение правил эксплуатации ЭВМ, системы ЭВМ или их сети».
Карма выделяется тем, что основана не на уязвимостях ПО точек доступа или клиентов, а на особенностях повсеместно используемого стандарта 802.11, а точнее — на особенностях работы его протокола аутентификации. Для полного понимания устройства Кармы далее будет подробно рассмотрен сам процесс аутентификации. Читатели, знакомые с этим процессом, могут спокойно пропустить эту часть.

Чтобы объявить о своем присутствии, Access Point (точка доступа, далее — AP) транслирует так называемые Beacon-фреймы — пакеты, содержащие SSID точки доступа (т.е её идентификатор, название сети), поддерживаемые скорости передачи данных и тип шифрования, который использует эта беспроводная сеть.
Пользователь находит беспроводные сети посредством прослушивания пакетов в поисках Beacon-фреймов от окружающих его AP или самостоятельно рассылая к точкам доступа из своего списка предпочитаемых сетей Probe request-фреймы — пакеты, состоящие из SSID, который ищет пользователь, а также скорости передачи данных, которые поддерживает устройство пользователя. SSID может быть пустой строкой, указывающей на то, что это Null probe request (запрос, адресованный всем точкам доступа независимо от SSID).
AP отвечают на Probe request, содержащие их SSID, а также на Null probe request с помощью Probe Response пакетов. Probe Response содержит данные, идентичные данным в Beacon-фреймах: SSID, поддерживаемые скорости передачи данных и наличие шифрования.
Если беспроводная сеть использует шифрование, устройство пользователя должно пройти аутентификацию перед подключением. Этот процесс происходит через Authentication-фреймы. Если устройство пользователя уже прошло аутентификацию или же сеть ее не требует, устройство отправит точке доступа Association Request, на который AP отвечает Association Response-фреймом. После этого пользователь может работать в этой беспроводной сети.
Мы настоятельно не рекомендуем пользоваться услугами таких недобросовестных поставщиков, т.к. это грозит вам штрафами или даже уголовным делом. Мы используем только законные методы сбора и фильтрации MAC-адресов.
Рандомизированные мак адреса


Рандомизированные мак адреса это камень преткновения на пути к эффективному сбору мак адресов. Так или иначе это вопрос беспокоит любого рекламодателя, который пользуется технологией рекламы по мак адресам
Что такое рандомизированные мак адреса
Современные сотовые телефоны с целью защиты персональных данных своих владельцев при запросах prob request подменяют реальные мак адреса рандомизированными. В странах в которых производится оборудование мак адреса является персональными данными.
Рандомизированные мак адреса это не настоящие мак адреса. Эти мак адреса ни при каких обстоятельствах не могут пересекаться с настоящими мак адресами в силу ограничений протокола передачи данных.
Как рандомизированные мак адреса влияют на охват аудитории
Никакого значения нет собираете вы мак адреса вместе с рандомизированными или без них. Их наличие на охват вашей аудитории никак не повлияет. С этих мак адресов физически отсутствовала возможность прохождения авторизации и сопоставления на рекламной площадке действующего пользователя и его мак адреса.
В самом худшем случае вы просто получите большее количество собранных мак адресов, при неизменном охвате вашей аудитории в рекламной площадке.
Как обойти защиту телефона и собрать не рандомизированные, а реальные мак адреса
Начнем с того, в каких случаях мак адреса обязательно должны быть настоящими и не могут быть фейковыми. Это процесс передачи данных между устройствами в рамках уже установленного соединения. Обращаясь к тонкостям работы протокола передачи данных 802.11 мы что передача данных в принципе невозможна, если один из адресов рандомизированный. Тем самым для себя определяем критерии по которым мы сможем найти максимальное количество мак адресов.
Это те места в которых люди подключаются с точкам доступа и устанавливают соединение. К таким местам могут относиться: вокзалы, аэропорты, метро, кафе, рестораны, бизнес центры, коворкинги, хостелы, библиотеки
Сбор мак адресов в местах отсутствия wifi сетей
Что делать если требуется собрать людей в месте где как правило, люди не подключаются к wifi сети? Знаете таких людей в Москве которые не ездят на метро? я тоже не знаю. Все ездят с любым достатком. Если вы ездили на метро значит, вы хотя бы раз подключались к сети MT_FREE это бесплатная сеть, без пароля. Ваш телефон ее помнит и в случае обнаружения начнет подключение к ней как к доверенной сети. Что произойдет дальше? Установиться активное соединение, в ходе которого потребуется передача данных, которая станет невозможной с рандомизированного мак адреса. Тут абонент засветит свой настоящий мак адрес.
Принцип тут простой. Если человек бывал ранее в этом месте, ему скорее всего знакома местная wifi сеть. Если она ему знакома, то телефон начнет подключение тем самым себя проявит
Подведем итоги
Рандомизированные мак адреса это факт которые в любом случае приходится учитывать любому подрядчику, работающему с любым оборудованием для сбора мак адресов. Сами рандомизированные мак адреса не приведут к сливу бюджета на нецелевые показы, но сузить потенциально возможный охват аудитории могут. Выбирая локацию для сбора данных нужно четко понимать, кого мы планируем собрать, исходя из этих данных уже выбирать механику сбора.
Случайный MAC-адрес в Android: как включить и зачем
Неустанно бдя за сохранностью конфиденциальных данных своей клиентуры, разработчики Android в числе прочих новых фич реализовал в системе и так называемую рандомизацию MAC-адресов. В этой связи вкратце о том, зачем нужен случайный MAC адрес и как включить эту функцию в Android.
Значит, по порядку.
Если очень коротко, то рандомизация MAC-адреса — это один из вариантов защиты своих персональных данных пользователя, а именно того, что в среде специалистов принято называть history of activity (буквально «история активности«), и что сегодня так любят собирать практически все.
Поэтому специалисты в области защиты данных уже достаточно давно твердят, что с учетом нынешнего, просто феерического интереса всех подряд к личным данным современного мобильного юзера, рандомизацию MAC-адресов давно надо было сделать штатной функцией всех мобильных операционок.
Чтобы любопытным, как говорится, жизнь малиной не казалась… И вот, очевидно, в Google решили, что таки пора…
Для тех, кто не совсем в курсе, о чем речь, уточним на всякий случай: MAC (сокращенно от Media Access Control) адрес — это уникальный цифровой идентификатор контроллера сетевого интерфейса, которым оснащается каждый смартфон и вообще любое устройство, способное работать в сети.
Именно по MAC-адресам такие устройства отслеживаются в сетях Wi-Fi. Следовательно, по MAC-адресу смартфона (планшета, ноута, телефона и пр) можно отслеживать и действия его пользователя.
Если нужно, то с точностью до метра и/или секунды. Что, собственно, и делается, когда производится сбор и обработка упомянутой нами history of activity.
Благодаря же технологии рандомизации, смартфон автоматом меняет свой MAC-адрес при каждом следующем подключении к беспроводной сети (любой), чем существенно усложняет жизнь таким «сборщикам» данным. Вот как-то так упрощенно.
- Номер в отеле и билет на самолет через VPN: насколько выгодно и как это делается
- Character AI на Android-смартфоне: что делать, когда не работает
- Как скопировать текст в любом приложении для Android
Теперь о главном.
как включить случайный MAC адрес в Android
На самом деле, он уже должен быть включен, так как опция рандомизации MAC-адреса для всех беспроводных подключений в Android активна по умолчанию.
Но перепроверить (и включить, если вдруг она выключена), конечно, не помешает. И сделать это можно следующим образом:
- открываем приложение «Настройки«;
- тапаем «Сеть и Интернет» и «Wi-Fi«;
- далее жмем значок настроек сети («шестеренка» рядом с названием);
- на экране «Сведения о сети» тапаем «Дополнительно» и потом «Конфиденциальность«;
- если функция «Использовать случайный MAC адрес» не активна (указано «MAC-адрес устройства«), то активируем её вручную.