Исправление есть, но добраться до него смогут не все Mac.
<div class="articl-text-cover" style="position:relative;width:100%;max-width:800px;margin-left:auto;margin-right:auto;aspect-ratio:1200/675;margin-bottom:2rem;overflow:hidden">
<div itemprop="articleBody"> Обычная локальная учётная запись на Mac с Parallels Desktop получила короткий путь к максимальным системным правам. Команда JFrog Security описала уязвимость CVE-2026-90894 с оценкой 7,8 High по CVSS 3.1, которая позволяет непривилегированному пользователю выполнить код от имени root.
Атака не работает удалённо сама по себе: злоумышленнику сначала нужен код, уже запущенный на Mac с обычными пользовательскими правами. После этого Parallels становится механизмом повышения привилегий. Для эксплуатации не требуется администраторская учётная запись, подтверждение со стороны владельца или запущенная виртуальная машина.
Ключевую роль играет служба prl_disp_service, которую Parallels Desktop запускает с правами root. Локальные процессы подключаются к ней через Unix-сокет /var/run/prl_disp_service.socket, доступный на запись всем пользователям. Проверка PrlSrv_LoginLocal принимает учётные данные процесса, но не требует подписи Parallels и не проверяет членство в группе администраторов.
Дальше ошибка проявляется при установке образа виртуальной машины. Служба собирает команду распаковки tar как единую текстовую строку, а Qt затем снова делит её на аргументы. Специально подобранная кавычка в имени каталога преждевременно завершает путь и превращает оставшийся текст в дополнительные параметры tar, которые служба обрабатывает уже с правами root.
В демонстрации JFrog использовала параметр --use-compress-program, позволяющий tar передать архив внешней программе. Поскольку tar запускает привилегированная служба, указанная атакующим программа тоже получает uid 0. На Parallels Desktop 26.4.0 сборки 57513 цепочка привела к root-оболочке. Проблема находится на стороне macOS-хоста, а не внутри гостевой системы.
Parallels Desktop 27 меняет сам способ запуска tar: вместо повторного разбора текстовой команды программа передаёт фиксированный набор аргументов. JFrog указывает 27.0.0 как первую версию с исправленным поведением, а CVE-запись помечает 27.0.1 как незатронутую. Ветка 26.x, включая 26.4.2, по данным JFrog, нужного изменения в механизме распаковки не содержит.
Команда проверила эксплуатацию непосредственно на версии 26.4.0 и отдельно предупредила, что не тестировала каждую предыдущую сборку. Поэтому для всей старой ветки вывод опирается на наличие прежнего механизма распаковки. В 26.4.2 он сохраняется, хотя эта версия вышла уже 8 сентября и остаётся актуальной для компьютеров Mac с процессорами Intel.
Для владельцев Intel Mac возникает отдельная проблема. Parallels убрала поддержку Intel из версии 27 и оставила таким компьютерам ветку 26 с обещанием дальнейших обновлений безопасности. Поэтому перейти на исправленную JFrog ветку 27 такие системы не могут, а отдельного исправления CVE-2026-90894 для 26.x на момент публикации Parallels не объявила.
Ситуация особенно заметна на фоне других ошибок на границе виртуализации , где защищённая гостевая среда неожиданно открывает путь к хосту. В случае ParaShells направление другое: атакующий уже находится на macOS и использует привилегированную инфраструктуру Parallels как готовый мост от обычной учётной записи к root.
Публичных сообщений об атаках с CVE-2026-90894 пока нет, а доступный материал JFrog описывает демонстрацию уязвимости, а не реальный инцидент. JFrog рекомендует обновить Parallels Desktop до 27.0.0 или новее. На машинах, где переход пока невозможен, компания советует ограничить локальный вход и проверить парк устройств с установленным Parallels Desktop.
<div class="articl-text-cover" style="position:relative;width:100%;max-width:800px;margin-left:auto;margin-right:auto;aspect-ratio:1200/675;margin-bottom:2rem;overflow:hidden">
<div itemprop="articleBody"> Обычная локальная учётная запись на Mac с Parallels Desktop получила короткий путь к максимальным системным правам. Команда JFrog Security описала уязвимость CVE-2026-90894 с оценкой 7,8 High по CVSS 3.1, которая позволяет непривилегированному пользователю выполнить код от имени root.
Атака не работает удалённо сама по себе: злоумышленнику сначала нужен код, уже запущенный на Mac с обычными пользовательскими правами. После этого Parallels становится механизмом повышения привилегий. Для эксплуатации не требуется администраторская учётная запись, подтверждение со стороны владельца или запущенная виртуальная машина.
Ключевую роль играет служба prl_disp_service, которую Parallels Desktop запускает с правами root. Локальные процессы подключаются к ней через Unix-сокет /var/run/prl_disp_service.socket, доступный на запись всем пользователям. Проверка PrlSrv_LoginLocal принимает учётные данные процесса, но не требует подписи Parallels и не проверяет членство в группе администраторов.
Дальше ошибка проявляется при установке образа виртуальной машины. Служба собирает команду распаковки tar как единую текстовую строку, а Qt затем снова делит её на аргументы. Специально подобранная кавычка в имени каталога преждевременно завершает путь и превращает оставшийся текст в дополнительные параметры tar, которые служба обрабатывает уже с правами root.
В демонстрации JFrog использовала параметр --use-compress-program, позволяющий tar передать архив внешней программе. Поскольку tar запускает привилегированная служба, указанная атакующим программа тоже получает uid 0. На Parallels Desktop 26.4.0 сборки 57513 цепочка привела к root-оболочке. Проблема находится на стороне macOS-хоста, а не внутри гостевой системы.
Parallels Desktop 27 меняет сам способ запуска tar: вместо повторного разбора текстовой команды программа передаёт фиксированный набор аргументов. JFrog указывает 27.0.0 как первую версию с исправленным поведением, а CVE-запись помечает 27.0.1 как незатронутую. Ветка 26.x, включая 26.4.2, по данным JFrog, нужного изменения в механизме распаковки не содержит.
Команда проверила эксплуатацию непосредственно на версии 26.4.0 и отдельно предупредила, что не тестировала каждую предыдущую сборку. Поэтому для всей старой ветки вывод опирается на наличие прежнего механизма распаковки. В 26.4.2 он сохраняется, хотя эта версия вышла уже 8 сентября и остаётся актуальной для компьютеров Mac с процессорами Intel.
Для владельцев Intel Mac возникает отдельная проблема. Parallels убрала поддержку Intel из версии 27 и оставила таким компьютерам ветку 26 с обещанием дальнейших обновлений безопасности. Поэтому перейти на исправленную JFrog ветку 27 такие системы не могут, а отдельного исправления CVE-2026-90894 для 26.x на момент публикации Parallels не объявила.
Ситуация особенно заметна на фоне других ошибок на границе виртуализации , где защищённая гостевая среда неожиданно открывает путь к хосту. В случае ParaShells направление другое: атакующий уже находится на macOS и использует привилегированную инфраструктуру Parallels как готовый мост от обычной учётной записи к root.
Публичных сообщений об атаках с CVE-2026-90894 пока нет, а доступный материал JFrog описывает демонстрацию уязвимости, а не реальный инцидент. JFrog рекомендует обновить Parallels Desktop до 27.0.0 или новее. На машинах, где переход пока невозможен, компания советует ограничить локальный вход и проверить парк устройств с установленным Parallels Desktop.
- Источник новости
- www.securitylab.ru