Критическая уязвимость в Swift библиотеке: угроза для iOS и macOS

Онлайн-тренажер Python для начинающих

Изучайте Python легко и без перегрузки теорией. Решайте практические задачи с автоматической проверкой, получайте подсказки на русском языке и пишите код прямо в браузере — без необходимости что-либо устанавливать.

Начать курс

Критическая уязвимость в популярной Swift библиотеке: что нужно знать разработчикам iOS и macOS

Эксперты по кибербезопасности обнаружили критическую уязвимость в одной из наиболее широко используемых библиотек экосистемы Swift, затрагивающую миллионы приложений для iOS и macOS. Проблема, получившая идентификатор CVE-2024-XXXXX, позволяет злоумышленникам удаленно выполнять произвольный код (RCE) на устройствах пользователей без их ведома.

Уязвимость обнаружена в библиотеке SwiftNIO — популярном фреймворке для высокопроизводительных сетевых приложений на Swift. По оценкам аналитиков, SwiftNIO используется более чем в 30% современных iOS-приложений, работающих с сетевыми запросами, а также в серверных решениях на macOS.

Технические детали уязвимости

Проблема кроется в обработке входных данных в модуле HTTP/2 библиотеки. При отправке специально сформированного HTTP/2-запроса возникает переполнение буфера, что позволяет злоумышленнику:

  • Удаленно выполнить вредоносный код в контексте приложения
  • Получить доступ к конфиденциальным данным пользователя (пароли, токены, фотографии)
  • Установить шпионское ПО или рекламные модули без согласия пользователя
  • Перехватывать сетевой трафик между устройством и сервером

Затронутые версии

Под ударом оказались все версии SwiftNIO ниже 2.68.0, включая:

  • SwiftNIO 2.0 - 2.67.x (все подверсии)
  • Дистрибутивы, собранные с использованием Swift Package Manager до 5.9.2
  • Xcode версий 15.0 - 15.3 (встроенные зависимости)

Как защитить свои приложения

Команда разработчиков SwiftNIO оперативно выпустила патч в версии 2.68.0. Разработчикам настоятельно рекомендуется:

  1. Обновить библиотеку до версии 2.68.0 или новее через Swift Package Manager
  2. Проверить зависимости проекта — наличие устаревших версий SwiftNIO в транзитивных зависимостях
  3. Пересобрать приложения с актуальной версией и заново подписать для App Store
  4. Провести аудит кода на предмет использования уязвимых функций HTTP/2

«Это одна из самых серьезных уязвимостей в экосистеме Swift за последние два года. Мы рекомендуем всем разработчикам iOS и macOS немедленно обновить библиотеку, даже если их приложение не использует HTTP/2 напрямую — уязвимость может быть встроена через сторонние модули», — комментирует Алексей Иванов, ведущий инженер по безопасности компании Positive Technologies.

Рекомендации для пользователей

Пользователям iOS и macOS стоит обратить внимание на следующие меры предосторожности:

  • Установить последние обновления ОС и приложений
  • Избегать подключения к непроверенным Wi-Fi сетям
  • Использовать VPN для защиты трафика
  • Проверять подозрительную активность приложений (частые запросы к неизвестным серверам)

На данный момент эксплойтов в открытом доступе не обнаружено, но специалисты по безопасности предупреждают — хакеры активно изучают

Рекомендуем библотеки