Microsoft обнаружила в приложении TikTok для Android серьёзную уязвимость, которая позволяла злоумышленникам взломать учётные записи пользователей одним щелчком мыши. Уязвимость уже была устранена, и никаких доказательств её эксплуатации не выявили.  Для кражи аккаунта было достаточно перехода пользователя по вредоносной ссылке. Затем злоумышленники могли получить доступ к профилю, изменить данные в нём и выгрузить конфиденциальную информацию. Кража аккаунтов была возможной благодаря тому, что хакеры могли заставить приложение загрузить произвольный URL-адрес в WebView, и это давало доступ к подключённым мостам JavaScript WebView.  Исследователь Microsoft по безопасности уведомил TikTok о проблемах в феврале 2022 года. Компания быстро отреагировала, выпустив исправление для устранения обнаруженной уязвимости, идентифицированной как CVE-2022-28799 с оценкой 8,3. Эксплуатация уязвимости зависит от реализации в приложении интерфейсов JavaScript, которые предоставляются компонентом операционной системы Android под названием WebView. WebView позволяет приложениям загружать и отображать веб-страницы, а с помощью вызова API addJavascriptInterface также предоставляет функции моста, которые позволяют коду JavaScript на веб-странице вызывать определённые методы Java определённого класса в приложении. Загрузка ненадёжного веб-контента в WebView с объектами уровня приложения, доступными через код JavaScript, делает приложение уязвимым для внедрения интерфейса JavaScript, что может привести к утечке данных, их повреждению или выполнению произвольного кода. Приведённый ниже код демонстрирует, как используется интерфейс JavaScript. Экземпляр класса JsObject внедряется в WebView (строка 8), и на него ссылается переменная injectObject в коде JavaScript, который загружается с помощью метода API loadUrl (строка 10): Сама уязвимость связана с обработкой приложением конкретной прямой ссылки. В контексте операционной системы Android диплинк — это специальная гиперссылка, которая ссылается на определённый компонент в мобильном приложении и состоит из схемы и (обычно) хост-части. При нажатии на диплинк менеджер пакетов Android опрашивает все установленные приложения, чтобы узнать, какое из них может обработать её, а затем направляет диплинк компоненту. В Microsoft рекомендуют сообществу разработчиков принимать дополнительные меры предосторожности для защиты WebView. В тех случаях, когда невозможно избежать использования интерфейсов JavaScript, предлагается использовать утверждённый список доверенных доменов для загрузки в WebView приложения, чтобы предотвратить загрузку вредоносного или ненадежного веб-контента.  Кроме того, Microsoft предлагает следующие методы безопасного кодирования: использовать браузер по умолчанию, чтобы открывать URL-адреса, не принадлежащие к одобренному списку приложения; поддерживать список включённых доменов; избегать использования методов частичного сравнения строк для сравнения и проверки URL-адреса с утверждённым списком доверенных доменов; не добавлять домены сцены или внутренней сети в одобренный список, так как злоумышленник может подделать их для захвата WebView. Пользователям рекомендуется: не переходить по ссылкам из ненадёжных источников; всегда обновлять устройство и установленные приложения; никогда не устанавливать приложения из ненадёжных источников; немедленно сообщать поставщику о любом странном поведении приложения, например об изменении настроек без вмешательства пользователя. В июне издание BuzzFeed опубликовало расследование, в котором утверждается, что сотрудники TikTok в Китае имели доступ к личным данным американских пользователей. Соцсеть заявила, что её работники могут получить доступ к определённой информации, но для этого они должны пройти ряд внутренних протоколов безопасности. Комиссар Федеральной комиссии по связи США Брендан Карр обратился к главам Apple Тиму Куку и Alphabet Сундару Пичаи с требованием удалить TikTok из магазинов приложений их компаний. По словам Карра, китайское приложение не отвечает правилам App Store и Google Play, поскольку собирает много конфиденциальных данных. В августе американская Oracle начала проверять алгоритмы TikTok и модели модерации контента, чтобы убедиться, что китайские власти не манипулируют ими.  Информационная служба Хабра