Исследователь с "Хабра" обнаружил, что приложение Яндекс.Метро для Android каждые несколько минут отправляет на сервера "Яндекса" ряд идентификаторов телефона, список mac-адресов окружающих точек доступа wi-fi с мощностью их сигнала, идентификатор базовой станции мобильного оператора.
Как пишет автор исследования:
Сервис Яндекса по сбору «статистики» запускается в фоновом режиме при загрузке телефона и не требует запуска самого приложения для работы. Данные отправляются даже если в настройках телефона стоит запрет на определение местоположения.
Приложение Яндекс.Метро действительно запрашивает разрешение на запуск при старте операционной системы, а также доступ к информации об окружающих сетях. Настроек, контролирующих отправку информации на сервера "Яндекса", в приложении нет.
В последнее время большинство компаний-разработчиков мобильных приложений (не говоря о поставщиках мобильных ОС) используют свои приложения для сбора информации о пользователе и его окружении, включая местоположение, список контактов, список установленных на телефоне приложений и т.п. Некоторые компании, занимающиеся мобильной аналитикой, даже специально выпускают массовые популярные бесплатные приложения, единственная цель выпуска которых - агрегация информации о пользователях с целью дальнейшей продажи в виде аналитических исследований и для таргетирования рекламы.
Всего у "Яндекса" больше двадцати мобильных приложений.
(добавлено в 13:40, 6 февраля) Комментарий пресс-службы "Яндекса":
Приложение Яндекс.Метро собирает данные о текущем местоположении смартфона с помощью технологии Яндекс.Локатор. Она позволяет ориентироваться не только по GPS-сигналам, но и по данным от точек wi-fi. Это необходимо, чтобы корректно показывать положение пользователя на карте метро в приложении.
То, что приложение делает запросы об этих данных в фоновом режиме – очень редкая ошибка, её не удалось выявить во время тестирования приложения на многочисленных android-устройствах. Мы исправим её.
Добавить 25 комментариев
Работаем с андройдами всех мастей круглосуточно. Действительно, есть такие сборки, что волосы дыбом встают. Не защищаю Яндекс, но это может быть ошибкой конкретного android устройства.
Например у нас были планшеты, которые вырубали gps и вообще geolocation, если цеплялись к wifi сети. Спасал только ребут. Т.е. устройство отдаёт координаты до тех пор, пока не подключится к wifi. Были устройства, которые отдавали координаты час, потом не отдавали. Были устройства, которые всегда отдавали координаты Китая 0_0.
Прямо как у Эпла, который незаметно для разработчиков логировал гигабайты данных о перемещении юзеров и незаметно для разработчиков отсылал на сервера Эпл, где они незаметно ни для кого хранились
Бывает
Ошибка? Если приложение запрашивает запуск при включении телефона — ошибки быть не может… Вся цель данного запроса — работать и собирать инфу в фоне. А вот эти отмазки, ставшие нормой, уже начинают мешать. Нужели Метро — столь жизненно важная прога, что-бы постоянно собирать данные и работать в фоне? Неужели нельзя обойтись запуском приложения по требованию пользователя?
«запросы об этих данных в фоновом режиме — очень редкая ошибка» — да? А вы не думали, что тут есть и технари, которые понимают что вы ответили?
«Не защищаю Яндекс, но это может быть ошибкой конкретного android устройства.» — по профессии я программист с 15-ти летним стажем. Что-бы волосы дыбом не ставали нужно брать нормальных программистов и делать свою работу на должном уровне.
Рано или поздно производители дождутся появления своих «антиколлекторов», которые будут, к примеру, спамить их сервера недостоверными данными или еще какие пакости делать.
а уже были такие истории :) подключали оборудование IXIA и валили сервера таких «редкоошибочных» разработчиков. Пора уже гуглу порядок навести и для таких запросов со стороны приложений ввести лицензии, что-бы компаниям нужно было обосновывать необходимость данной фичи и оплачивать за это сбор. Вот сразу и такие редкие ошибки пропадут, а гугл немного еще заработает
zulic, вы либо не работали плотно с android устройствами (китайского производства, нонейм), либо ***.
Если первое, приезжайте у нам в офисе со своими «нормальными программистами, которые делают свою работу на должном уровне». Если я не прав, заплачу миллион. Юрий, разбейте.
Когда ты работаешь с техникой apple, всё просто. У тебя одно и то же железо, те же интерфейсы и привычное сочетание памяти/проца.
Однако, когда ты работаешь с андройдом, ты сталкиваешься с хаотичным железом любых производителей, на неизвестных чипах, а если это китай, забудь про контроль качества. Мы покупали 100 планшетов 3q, 30% из них выходило из строя в первую же неделю.
Конкретный случай — надо смотреть. Если беда наблюдается, скажем, на самсунгах — яндекс вор. Если это кастомная ошибка на конкретном устройстве, возможно, это проблема устройства.
1. Виталий, держим себя в руках. Излишняя нервность вредна для здоровья.
2. Я писал про конкретную ошибку коротую легко исключить.
3. Про китайские косяки и левые мборки все верно.
4. Почти все пишут как в книжке, по инструкции разработчиков и очень мало разработчиков юзают конкретные мануалы и кейсы, которых в сети куча и которые дохера косяков устраняют. Конечно, постоянно появляются новые косяки, но это другая историяк
Все подобные приложения легко вычисляются.
1. Ставите бесплатный LBE Security Master . С помощью этого приложения можно для любого установленного приложения (кроме предустановленных) по каждому параметру (GPS, камера, IMEI и т.д.) можно задать «разрешить» — «запретить» — «спросить разрешение».
2. Ставите всем приложениям по всем параметрам «спросить разрешение»
3. Узнаете много интересного о жизни своего смартфона/планшета. Например, при запуске Яндекс.Браузера вдруг появляется запрос на GPS от Яндекс.Метро. А Skype хочет включить камеру сразу при старте. И т.д.
Естественно, LBE Security Master сам сольёт все ваши данные куда-нибудь в Китай.
Залих, спасибо за совет, крепко себя обнял.
1. На самом деле я извиняюсь за резкость, однако, она была необходима в такт вашей же резкости. Я технический человек. Если вдруг кто-то скажет мне, что я мудак, я пройду мимо. Но если мне скажут, что мои технари некомпетентны, я отреагирую резко.
Я встал на защиту яндекса исключительно выбирая худшее из зол. Повторяю, я ни в коем случае не защищаю разработчиков Яши, тем более, что подобным уже промышляли и гугл и эпл и все, кому не лень.
2. Я вам третий раз пишу, что ошибка может быть не на программном, а на железном уровне. От сюда следует ответ на ваше:
3. Именно, очень многое зависит от сборки и от железа.
4. Во-первых, хуже юникса, чем андроид, я не видел. Возможно, мой 10+ опыт работы с юниксами ничтожен, однако, андроид это нечто. Во-вторых, книжки и инструкции это круто, однако, вы уверены, что их читают китайские производители и их разработчики? А я вам скажу, не читают. Регулярно ковыряю китайскую технику, чаще всего мини-роутеры, модемы-свистки итп (от android китайских уже тошнит). То, что установлено на них внутри, это алес полный. Мегафоновский свисток m100-3 (zte 823) теряет коннект и не восстанавливает его по умолчанию. Более того, если во время lte сеанса он не видит lte — он навсегда переключается в 3g режим. Все эти баги исправляются 5-ю строчками кода в прошивке. Этих прошивок, разных в разных местах на модеме — 3 штуки. Я думал, наши намудрили, заказал zte823 из китая, нефига, по умолчанию в готовом устройстве зашита корневая прошивка + 2 неудачные прошивки прошлых версий. Сложно почистить? Или тупо лень?
Сегодня послежу со своих android устройств за приложением Метро яши, однако, совсем не исключаю, что проблема не в приложении, а в конкретном устройстве, которому было сказано «отдавать координаты только во время эфира», а оно решило отдавать их всегда. Это для Android нормально.
Пресс-службе Яндекса тройка с минусом за то, что мне приходится пояснять их ленивые пресс-релизы.
Чтобы не быть голословным, скриншот активности Яндекс.Метро http://s017.radikal.ru/i422/1502/78/0758f02a5068.jpg
Я пытаюсь донести не тех. Детали, а немного иное — данное приложение даже запрашивать доступ работы в фоне не должно. Вот корень ошибки. А про технарей я в целом говорил, не про ваших. Я же даже не знаком с вами и не могу судить…..
2 Qwerty
Повторю очередной раз, могу ошибаться. Из пресс-релиза яндекса понял, что проблема на конкретных устройствах и знаю, что такая тонкость есть. Сегодня к вечеру проверю на армии android разношёрстных.
2 zulic
А я пытаюсь донести, что даже если код твоей программы на android явно указывает, что координаты нужно брать только когда приложение активно (точнее наоборот, возможность собирать координаты в фоне ставится флагом, сервисом), android может решить делать это всегда после единичного запуска.
Сервисы вполне могут зависать в памяти, даже если приложение завершается.
Дефолтные настройки Яндекс Метро на Samsung Galaxy Note. ( При этом сама программа ни разу не запускалась)
http://imhocloud.com/image/fhE
Ради интереса запретил запрашивать локацию — за пару минут 2 отклоненных запроса.
У меня телефон Nexus 4, официальный Android L. Приложения Яндекс.Метро, Яндекс.Карты, Яндекс.Такси сразу после установки, ещё не запущенные мной, уже что-то отправляют в фоне. Я могу их вообще не запускать, после перезагрузки телефона они сами стартуют и отправляют данные. По вашему, это тоже проблема «китайской прошивки»?
В данном конкретном случае не имеет значения сборка. Приложения Яндекса могут определять местоположение без включенного GPS — при помощи технологии Яндекс.Локатор. И вот эти данные отправляются круглосуточно.
Повторю, вы можете установить приложения Яндекса, ни разу их не запустить, но они всё равно будут следить.
@Qwerty, а что это за приложение такое, которое отрывает трекинг? Хочу такое же (потому что задолбали, каждая срань хочет ВСЕГО), но за 5 минут не нашел.
MIUI, например
@Алексей Тутубалин, на скриншоте LBE Security Master
2 saahov и Максим
Если у вас такое на топовых дройдах, тогда всё проще. Яндекс собирает данные + как обычно врёт в пресс-релизе. Одним словом — мудаки.
И я извиняюсь за свою резкость, но т.к. мы каждый день делаем софт под android и это софт для таксистов/грузоперевозчиков, мы сталкиваемся с максимальным количеством самых неадекватных android.
То, о чём ответили в пресс-службе яндекса, явно указывает на ошибку конкретного устройства. Т.е. они прямо говорят, что это редкая ошибка, которая не была выявлена при тестировании на популярных моделях.
Я встал на защиту Яндекса не потому, что души в них не чаю, кто следит за моими комментариями, думаю, знает моё мнение. Я встал на их защиту, т.к. они действительно могли попасть в такую ситуацию из-за бага самого устройства.
У меня не было возможности проверить это сразу, не было под рукой android. Однако, если люди с нексусами и гэлэкси говорят, что так оно и есть — сомнений нет, яндекс собирает инфу на фоне и врёт в пресс-релизах.
Эпл собирала данные. Гугл собирал данные. Яндекс собрал данные. Данные геолокации — где миллионы людей находятся в определенный момент.
Zulus, вы больше всего ругаетесь и негодуете, значит в теме. Помогите понять — нахрена?
Бизнес моделей про использование этих данных мне в голову не приходит. Вернее приходят истории про геосервисы, но не могу вспомнить ни одного, в котором много данных о моих перемещениях дали бы владельцу этих данных какой-то явный профит. Тем более, не могу вспомнить бизнеса, который бы имел бизнес модель, в которой желательно было бы, чтобы пользователь не знал, что данные его расположения отправляются на сервер.
Я к чему веду. Если нет денег, то и ценности для эпла, Гугла и Яндекса забирать данные скрытно нет. То есть больше тянет на ошибку. Или все таки заговор и выгода?
Накопленные (ну и обработанные) данные о геолокации — это очень точная классификация человека.
Где живет, где работает, режим дня, есть/нет машины, где покупает еду/барахло, ходит ли на митинги и на какие, есть ли дети школьного возраста (и в каких школах).
А дальше — хочешь таргетируй рекламу, хочешь — еще что сделай.
Алексей, то есть уже сейчас эти геоданные имеют реальную коммерческую ценность? Спасибо! Я думал, что пока что описанные вами сценарии — это скорее мечты интернет-компаний.
Ну уж географический таргетинг на места частого посещения (проживания) — обязан быть.
Гугл с Эпплом делают это не очень скрытно — свои перемещения можно посмотреть. Впрочем, возможно, эти опция появилась уже после скандала — не помню.
> А дальше — хочешь таргетируй рекламу, хочешь — еще что сделай.
Это только вершина айсберга. За такие данные неплохо платят банки и страховые, не говоря уж про госов. Ну и дофига кто еще.