Базы SQLite позволяют iMessage выполнить вредоносный код на iPhone

Базы SQLite позволяют iMessage выполнить вредоносный код на iPhone

Базы SQLite позволяют iMessage выполнить вредоносный код на iPhone

Злоумышленники могут модифицировать базы данных SQLite и выполнить вредоносный код внутри приложений, хранящих данные в таких базах. Об этом рассказали эксперты Check Point на конференции DEF CON в Лас-Вегасе, в качестве доказательства концепции они использовали iMessage.

Исследователь Омер Галл из Check Point продемонстрировал вредоносную программу, использующую SQLite для укоренения в системе iOS. Также специалист показал, как с помощью базы SQLite можно получить контроль над командным центром вредоносной операции (C&C).

В случае атаки устройств на iOS идея заключается в использовании уязвимостей в процессе чтения данных из баз SQLite сторонними приложениями. Бреши позволяют спрятать вредоносный код в данных БД SQLite.

Когда такое стороннее приложение — в этом случае iMessage — читает данные из скомпрометированной БД, оно одновременно автоматом выполняет скрытый код.

В процессе демонстрации на DEF CON Галл как раз задействовал iMessage. В результате эксперт показал, как злоумышленник может заменить или отредактировать файл AddressBook.sqlitedb, чтобы внедрить вредоносный код в адресную книгу iPhone.

Когда iMessage запрашивает файл SQLite (а это происходит регулярно через определённые интервалы), запускается злонамеренный код, что позволяет вредоносу укрепиться в операционной системе.

Чтобы устранить этот вектор атаки Apple выпустила патчи для уязвимостей под идентификаторами CVE-2019-8600, CVE-2019-8598, CVE-2019-8602, CVE-2019-857.

Подпишитесь на новости

Обновите Telegram для Android: версия 13.2.2 закрыла опасную уязвимость

Telegram исправил уязвимость в HTML-виджетах, которые мессенджер открыл для ботов 9 ноября. Через ошибку скрипт из обычного сообщения мог выйти за пределы песочницы и выполнить машинный код на устройстве. Проблема находилась в движке JavaScript QuickJS, который Telegram использует в собственном форке QuickJS-ng.

Патч описан в журнале изменений песочницы виджетов Telegram на GitHub. Парсер QuickJS принимал конструкцию await using в заголовке цикла даже внутри обычных, неасинхронных функций.

В таком случае движок завершал функцию по пути для асинхронного кода и не закрывал ссылки на ее локальные переменные. Вложенные функции после возврата продолжали обращаться к уже освобожденному участку стека. Такой класс ошибок называют use-after-return.

О проблеме сообщили применительно к Telegram для Android 13.2.1, но, по данным Telegram, она затрагивала все платформы, где собирается форк движка. Исправление внесли 10 ноября: теперь парсер выдает синтаксическую ошибку на такую конструкцию. В тот же день вышла версия Telegram для Android 13.2.2.

Уязвимый код попал в основную ветку QuickJS-ng 16 мая вместе с поддержкой явного управления ресурсами. Ошибку описал разработчик Андреас Рёсдал.

9 ноября он опубликовал в репозитории QuickJS-ng аудит безопасности всего движка, проведенный с помощью модели Claude от Anthropic. В отчете 27 находок, уязвимость с await using в нем третья, с высоким уровнем опасности.

RSS: Новости на портале Anti-Malware.ru