Когда в личные сообщения Вконтакте тебе пишет незнакомый человек, который точно уверен в каком районе ты находишься в данный момент, — приятного мало. Сразу активируется паранойя, и мозг начинает искать возможные способы это объяснить. Мое местоположение ему действительно подсказал ВК. Давайте разберемся каким образом.
Разбираемся
Геолокация по какой-либо причине оказалась включена для приложения, но как она утекла — оставалось загадкой. Знаете, где в ВК можно увидеть геолокацию человека? На фотографиях, верно. Вот только фотографий в этом районе я не делал, да и вообще запретил ставить метки смартфону.
Еще варианты? Что же я такого сделал, что меня спалило? Как оказалось я просто зашел в раздел “Добавить друга”, чтоб посмотреть кого мне рекомендуют. В мобильном приложении для Андроид и IOS при переходе в раздел "Друзья" — "Добавить друга" происходит разглашение примерной геолокации пользователя через сервис "Найти рядом со мной".
“Найти рядом со мной” должен раздавать вашу геолокацию и отображать ваше примерное местоположение, в этом его суть. Ранее для того, чтобы это произошло и ваша страница появилась в сервисе "Найти рядом со мной", необходимо было нажать соответствующую кнопку. То есть зайти в сам раздел, где и было написано, что ваша геолокация раздается. В новой версии приложения этого НЕ требуется.
Таким образом любой пользователь, который не ограничил доступ к геолокации приложения и вошел в раздел "Друзья" — "Добавить друга", вне зависимости от собственного желания, демонстрирует свою геолокацию другим пользователям. Причем ему самому это не видно, нет никаких диалоговых окон, оповещений и это вводит его в заблуждение.
Еще раз, пользователь не заходил на уровень ниже в “Найти рядом со мной”, а функция уже активировалась сама. Об этом пользователя не уведомляют и сам он этого не видит.
Тестировалось на IOS и Android на двух разных аккаунтах. Хотите повторить?
- Вам нужно всего лишь 2 телефона и включенная для приложения ВК геолокация
- На одном телефоне заходите в "Друзья" — "Добавить друга"
- На другом в “Найти рядом с мной”
- PROFIT! Вы видите из “Найти рядом со мной” аккаунт второго телефона, пользователь которого и не думал показывать свое местоположение
Резюме
Благодаря этой особенности:
- Пользователь не планировал пользоваться функцией "Найти рядом со мной" ничего для этого не делал, но его там видят
- Пользователю не сообщается, что пользуясь разделом "Добавить друзей" он дает согласие на отображение себя в "Найти рядом со мной", это делается скрыто
- Возможности отключить только "Найти рядом со мной" нет, придется целиком отключить геолокацию в приложении
Так и должно быть? Это не баг, а фича? Об этом стоит тогда рассказать пользователям. Многие не хотели бы, чтобы приложение при использовании сторонних функций незаметно разглашало данные об их местоположении. Так что геолокацию для приложения стоит все же отключать, просто на всякий случай.
Внимание! Перед тем, как рассказать аудитории Хабра об этой проблеме, мной были предприняты попытки сообщить о ней разработчикам через платформу HackerOne. Разработчики посчитали это все “не багом”, а репорт был закрыт в статусе “informative”, на мои дальнейшие комментарии они ничего не ответили и игнорировали меня.