«Остерегайтесь встроенных в приложения браузеров» — это хорошее практическое правило для любого пользователя мобильного приложения, заботящегося о конфиденциальности, — учитывая возможность того, что приложение может использовать свое внимание пользователя, чтобы следить за тем, что вы просматриваете, с помощью программного обеспечения браузера, которое оно также контролирует. Но поведение встроенного в приложение браузера TikTok вызывает удивление после того, как независимое исследование конфиденциальности , проведенное разработчиком Феликсом Краузе, обнаружило, что приложение социальной сети для iOS внедряет код, который может позволить ему отслеживать все вводы с клавиатуры и нажатия. Ака, кейлоггинг.
«TikTok iOS подписывается на каждое нажатие клавиши (текстовый ввод), происходящее на сторонних веб-сайтах, отображаемое в приложении TikTok. Сюда могут входить пароли, информация о кредитных картах и другие конфиденциальные пользовательские данные», — предупреждает Краузе в своем блоге с подробным описанием результатов. «Мы не можем знать, для чего TikTok использует подписку, но с технической точки зрения это эквивалентно установке кейлоггера на сторонних веб-сайтах». [подчеркните его]
После публикации отчета на прошлой неделе, посвященного возможностям iOS-приложений Meta Facebook и Instagram для отслеживания пользователей их встроенных браузеров, Краузе запустил инструмент под названием InAppBrowser.com , который позволяет пользователям мобильных приложений получать подробную информацию о коде. который вводится браузерами внутри приложения путем перечисления команд JavaScript, выполняемых приложением при отображении страницы. (Примечание: он предупреждает, что инструмент не обязательно перечисляет все выполняемые команды JavaScript и не может отследить, что приложение может выполнять с использованием собственного кода, поэтому в лучшем случае он предлагает беглое представление о потенциально отрывочных действиях.)
Краузе использовал этот инструмент для проведения краткого сравнительного анализа ряда основных приложений, который, по-видимому, поставил TikTok на первое место в отношении поведения по отношению к браузерам внутри приложений — из-за объема входных данных, которые были идентифицированы при подписке. к; и тот факт, что он не предлагает пользователям возможность использовать мобильный браузер по умолчанию (т. е. вместо собственного браузера в приложении) для открытия веб-ссылок. Последнее означает, что невозможно избежать загрузки кода отслеживания TikTok, если вы используете его приложение для просмотра ссылок — единственный способ избежать этого риска для конфиденциальности — полностью отключить его приложение и использовать мобильный браузер для прямой загрузки ссылки ( и если вы не можете скопировать и вставить его, вам нужно будет запомнить URL-адрес, чтобы сделать это).
Краузе осторожно указывает, что только потому, что он обнаружил, что TikTok подписывается на каждое нажатие клавиши, которое пользователь делает на сторонних сайтах, просматриваемых в его браузере в приложении, не обязательно означает, что он делает «что-то злонамеренное» с доступом — как он отмечает у посторонних нет возможности узнать все подробности о том, какие данные собираются, как и передаются ли они или используются. Но, очевидно, само поведение вызывает вопросы и риски для конфиденциальности пользователей TikTok.
Представитель компании отправил это заявление:
«Выводы отчета о TikTok неверны и вводят в заблуждение. Исследователь конкретно говорит, что код JavaScript не означает, что наше приложение делает что-то злонамеренное, и признает, что у них нет возможности узнать, какие данные собирает наш браузер в приложении. Вопреки заявлениям в отчете, мы не собираем информацию о нажатиях клавиш или текстовом вводе с помощью этого кода, который используется исключительно для отладки, устранения неполадок и мониторинга производительности».
TikTok утверждает, что входные данные «нажатие клавиши» и «нажатие клавиши», идентифицированные Краузе, являются общими входными данными, утверждая, что неверно делать предположения об их использовании, основываясь только на коде, выделенном в исследовании.
В подтверждение этого представитель указал на какой-то не относящийся к TikTok тот же код из Github , который, как они предположили, вызовет точно такой же ответ, который упоминается в исследовании как свидетельство неправильного сбора данных, но скорее используется для запуска команды, известной как «StopListening». ', которые, по их словам, специально предотвратят захват приложением того, что печатается.
Они также заявили, что код JavaScript, выделенный в исследовании, используется исключительно для отладки, устранения неполадок и мониторинга производительности браузера в приложении для оптимизации взаимодействия с пользователем, например, для проверки скорости загрузки страницы или ее сбоя. И сказал, что рассматриваемый JavaScript также является частью SDK, который он использует, — далее утверждается, что только потому, что существует определенный код, не означает, что компания его использует. Представитель также подчеркнул различие между разрешениями, позволяющими приложениям получать доступ к определенным категориям информации на устройстве пользователя (т. рассматриваемая информация может быть проанализирована локально на устройстве без сбора самой информации TikTok.
Представитель TikTok также сообщил нам, что он не предлагает пользователям возможность не использовать встроенный в приложение браузер, потому что для этого потребуется направить их за пределы приложения, что, по их утверждениям, сделает работу неуклюжей и менее удобной.
Они также подтвердили предыдущее публичное опровержение TikTok в отношении регистрации нажатий клавиш (т. е. захвата контента), но предположили, что могут использовать информацию о нажатиях клавиш для обнаружения необычных шаблонов или ритмов, например, если каждая набираемая буква — это ровно 1 клавиша в секунду, чтобы помочь защищать от поддельных входов в систему, комментариев, похожих на спам, или другого поведения, которое может угрожать целостности его платформы.
Представитель TikTok предположил, что уровень сбора данных, который он использует, аналогичен другим приложениям, которые также собирают информацию о том, что пользователи ищут в приложении, чтобы иметь возможность рекомендовать соответствующий контент и персонализировать сервис.
Они подтвердили, что пользователи, которые просматривают веб-контент в его приложении, отслеживаются для аналогичной персонализации — например, для выбора релевантных видео для показа в своей ленте For You. TikTok также может собирать данные об активности пользователей в других местах, в приложениях и на веб-сайтах рекламодателя, когда эти сторонние компании решат поделиться с ним такими данными, отметили они далее.
Мета-приложения Instagram, Facebook и FB Messenger также были обнаружены Краузе как модифицирующие сторонние сайты, загружаемые через встроенные в приложения браузеры — с «потенциально опасными» командами, как он выразился, — и мы также обратились к этой технологии. гигант за ответ на выводы.
Конфиденциальность и защита данных регулируются в Европейском союзе законами, в том числе Общим регламентом защиты данных (GDPR) и Директивой о конфиденциальности, поэтому любое отслеживание пользователей в регионе без надлежащей правовой базы может привести к санкциям регулирующих органов.
В последние годы оба гиганта социальных сетей уже подвергались различным процедурам, расследованиям и правоприменениям ЕС в отношении конфиденциальности, данных и защиты прав потребителей, при этом продолжается ряд расследований и надвигаются некоторые важные решения .
Обновление: Комиссия по защите данных Ирландии, которая является ведущим регулятором защиты данных для Meta и TikTok в соответствии с GDPR в Европе, сообщила TechCrunch, что запросила встречу с Meta после сообщений СМИ о проблеме с JavaScript на прошлой неделе. Он также сказал, что будет взаимодействовать с TikTok по этому вопросу.
Краузе предупреждает, что общественный контроль над внедрением кода отслеживания JavaScript в браузере приложений на iOS, вероятно, побудит злоумышленников обновить свое программное обеспечение, чтобы сделать такой код необнаружимым для внешних исследователей — запустив свой код JavaScript в « контексте указанного фрейма и контента ». мир » (он же WKContentWorld), который Apple предоставляет начиная с iOS 14.3; введение этого положения в качестве меры защиты от отпечатков пальцев, и поэтому операторы веб-сайтов не могут вмешиваться в код JavaScript плагинов браузера (но эта технология, очевидно, является обоюдоострым мечом в контексте обфускации отслеживания) — утверждая, что это «более важно, чем когда-нибудь найти решение, позволяющее прекратить использование пользовательских браузеров в приложениях для отображения стороннего контента».
Несмотря на то, что в мобильных приложениях, работающих на iOS, выявляются некоторые тревожные особенности поведения, платформа Apple, как правило, рекламируется как более безопасная для конфиденциальности, чем альтернатива мобильной ОС Google, Android, и стоит отметить, что приложения, которые следуют рекомендациям Apple по использованию Safari (или SFSafariViewController), для просмотра внешних веб-сайтов Краузе счел «надежной стороной» — включая Gmail, Twitter, WhatsApp и многие другие — поскольку, по его словам, рекомендуемый Купертино метод означает, что у приложений нет возможности внедрить какой-либо код на веб-сайты, в том числе путем развертывания вышеупомянутая изолированная система JavaScript (которая в противном случае могла бы использоваться для запутывания кода отслеживания).