Xakep #305. Многошаговые SQL-инъекции
Исследователи из Университета Мэриленда заявили, что Apple Wi-Fi Positioning System (WPS) можно использовать для массовой слежки за людьми, включая тех, кто вообще не использует устройства Apple.
«Эта работа демонстрирует, что владельцы точек доступа Wi-Fi, особенно из числа уязвимых и чувствительных групп населения, могут пострадать от слежки через WPS, — объясняют авторы в своей научной статье. — Угроза касается даже тех пользователей, которые не владеют устройствами, для которых созданы эти WPS. Например, люди, не владеющие продуктами Apple, могут быть включены в WPS Apple просто за счет того, что устройства Apple находятся в зоне действия их Wi-Fi».
Apple — одна из нескольких компаний, наряду с Google, Skyhook и так далее, которые применяют WPS. Так, компании предлагают клиентским устройствам способ определения местоположения, который является более энергоэффективным, чем GPS.
Мобильные устройства, которые используют GPS для определения местоположения, зачастую сообщают службе WPS MAC-адреса точек доступа Wi-Fi (Basic Service Set Identifier, BSSID). Благодаря этому другие мобильные устройства, не использующие GPS, могут получить данные о местоположении, запросив их у службы WPS.
Такие запросы подразумевают отправку списка близлежащих BSSID и уровня их сигнала. Исследователи объясняют, что WPS обычно отвечает одним из двух способов: либо рассчитывает местоположение клиента и возвращает ему эти координаты, либо возвращает геолокацию полученных BSSID (которые связаны с конкретными точками доступа) и позволяет самому клиенту выполнить расчеты для определения местоположения.
WPS Google работает по первому принципу, а WPS Apple — по второму. При этом исследователи утверждают, что система Apple гораздо более «разговорчива», и изучить удалось только ее, благодаря открытости.
«В дополнение к геолокации BSSID, которые предоставляет клиент, API Apple периодически возвращает геолокацию еще нескольких сотен BSSID, расположенных рядом с запрашиваемым, — рассказывают эксперты. — В версии Apple вы отправляете BSSID для определения геолокации, и система возвращает геолокацию, в которой, по ее мнению, находится этот BSSID. Также она возвращает множество других BSSID (до 400), которые вы не запрашивали, но они находятся поблизости. Дополнительные 400 BSSID были очень важны для нашего исследования, поскольку позволили нам накопить большое количество геолокационных данных за короткий промежуток времени. Кроме того, WPS Apple не требует аутентификации, является бесплатной и не имеет ограничений скорости».
WPS Google, в свою очередь, просто возвращает вычисленное местоположение, к тому же она требует аутентификации, ограничена по скорости и является платной, что делает ее непригодной для проведения исследований такого рода.
Благодаря конструкции системы Apple исследователи смогли собрать базу данных из 490 млн BSSID по всему миру, которую затем использовали для отслеживания перемещений как отдельных людей, так и целых групп.
«Поскольку точность WPS Apple составляет порядка нескольких метров, во многих случаях это позволяет идентифицировать отдельные дома или предприятия, где расположены точки доступа. Из уважения к частной жизни пользователей мы не включаем в это исследование конкретные примеры, которые позволили бы публично раскрыть личности этих людей», — поясняется в статье.
Тем не менее, эксперты пишут, что возможно использовать WPS для определения личностей отдельный людей или групп, в которые они входят, «вплоть до имен, военных частей, баз и стоянок для автофургонов».
В статье рассматриваются различные сценарии подобного злоупотребления WPS, включая оценку ущерба после хакерских атак (отслеживая исчезновение BSSID), индивидуальное отслеживание с помощью BSSID переносных роутеров GL.iNet, а также отслеживание передвижений военных с помощью BSSID терминалов Starlink.
Исследователи уже уведомили о своих выводах компании Apple, Starlink и GL.iNet. Они отмечают, что одним из способов предотвращения попадания BSSID в базы данных WPS является добавление строки _nomap к имени сети Wi-Fi или SSID (SSID задается пользователем, а BSSID является аппаратным идентификатором).
Apple добавила поддержку _nomap в обновлении от 27 марта 2024 года и добавила информацию об этом на страницу поддержки. А WPS Google и WiGLE (краудсорсинговый геолокационный проект) поддерживают _nomap по крайней мере с 2016 года.
Также исследователи отмечают, что Apple намерена предпринять дополнительные меры, чтобы помешать такой слежке.
«Нам известно, что в Apple серьезно отнеслись к нашему отчету, — говорят авторы научной работы. — Надеемся, что предложенные меры помогут защитить конфиденциальность владельцев точек доступа, которые не догадываются добавить _nomap к своему SSID, чтобы предотвратить их попадание в геолокационную базу Apple».
Также эксперты выразили благодарность команде безопасности SpaceX, которая быстро решила проблему, внедрив рандомизацию BSSID в свои продукты.
«Они начали внедрять рандомизацию BSSID в некоторые продукты еще во время нашего исследования в 2023 году, но после нашего общения ускорили внедрение на всех устройствах Starlink, — сообщили эксперты. — Стоит отметить, что эта уязвимость возникла не по вине SpaceX (они не могут контролировать действия Apple или Google), но, тем не менее, они оперативно и правильно устранили проблему. Мы считаем, что рандомизация BSSID является наиболее надежной защитой от WPS-слежки, поскольку генерация случайного идентификатора при каждой загрузке устройства (или при его перемещении) приводит к тому, что для WPS оно выглядит как совершенно другое устройство».
Что касается компании GL.iNet, выпускающей маршрутизаторы для путешествий, ее разработчики оказались менее отзывчивыми. Хотя в компании признали наличие проблемы, разработчики сообщили, что не планируют внедрять в устройства защиту в виде рандомизации BSSID.
Исследователи надеются, что их работа побудит технических специалистов IEEE вплотную заняться этим вопросом, как уже было в прошлом с рандомизацией MAC-адресов.
«В прошлом рандомизация клиентских MAC-адресов страдала от проблем, если производители устройств включали в свои сообщения различные уникальные идентификаторы, отличные от MAC-адреса, или когда проблемы рандомизации иным образом приводили к тому, что несколько случайных MAC-адресов могли оказаться связаны. Производители точек доступа Wi-Fi, внедряющие рандомизацию BSSID, должны быть осторожны, чтобы не повторить эти ошибки», — заключают эксперты.