Команда Qubes опубликовала бюллетень безопасности QSB-118 об исполнении произвольного кода в Dom0 через обработку ошибок qvm-copy-to-vm. Бюллетени безопасности Qubes обычно содержат сводку, анализ последствий уязвимостей и сведения об установке исправлений.

При копировании файла из Dom0 в вредоносный qube через qvm-copy-to-vm этот qube может внедрить в Dom0 произвольную команду. Эксплуатация возможна после компрометации qube, если пользователь запускает копирование из Dom0 в этот qube, и может привести к захвату управления Qubes OS.

Причина уязвимости в том, что sanitize_remote_filename() оставляет метасимволы командной оболочки, а system() запускает сформированную команду с контролируемым атакующим именем файла. Вариант qvm-copy-to-vm внутри виртуальной машины не затронут, поскольку его обработчик ошибок не использует system().

Уязвимость затрагивает все выпуски Qubes OS. Для Qubes 4.3 исправление в Dom0 входит в qubes-core-dom0-linux версии 4.3.22, а пользователям следует обновляться обычным способом.

Проверка утверждений:

  • Команда Qubes опубликовала бюллетень безопасности QSB-118 об исполнении произвольного кода в Dom0 через обработку ошибок qvm-copy-to-vm. (подтверждено самой публикацией: доказательство; «We have published Qubes Security Bulletin (QSB) 118: Dom0 arbitrary code execution in qvm-copy-to-vm error reporting»)
  • Бюллетени безопасности Qubes обычно содержат сводку и анализ последствий недавно обнаруженных уязвимостей, включая сведения об установке исправлений. (подтверждено самой публикацией: доказательство; «A QSB typically provides a summary and impact analysis of one or more recently-discovered software vulnerabilities, including details about patching to address them.»)
  • При копировании файла из Dom0 в вредоносный qube через qvm-copy-to-vm этот qube может внедрить в Dom0 произвольную команду. (подтверждено самой публикацией: доказательство; «If qvm-copy-to-vm is used to copy a file from dom0 to a malicious qube, that qube can inject an arbitrary command into dom0.»)
  • Эксплуатация возможна, если атакующий скомпрометировал qube и пользователь запускает копирование из Dom0 в этот qube; результатом может стать захват управления Qubes OS. (подтверждено самой публикацией: доказательство; «If an attacker has compromised a qube, and if the user initiates a qvm-copy-to-vm call from dom0 to the compromised qube, then the attacker can exploit this vulnerability in order to inject an arbitrary command into dom0, which allows the attacker to take control of Qubes OS.»)
  • Причина уязвимости в том, что sanitize_remote_filename() оставляет метасимволы командной оболочки, а system() запускает сформированную команду с контролируемым атакующим именем файла. (подтверждено самой публикацией: доказательство; «The problem is that sanitize_remote_filename() removes only non-ASCII characters (and double quotation marks) but leaves shell meta-characters in place. Then, system() runs the constructed command, including the attacker-controlled name via the shell.»)
  • Вариант qvm-copy-to-vm, работающий внутри виртуальной машины, не затронут, поскольку его обработчик ошибок не использует system(). (подтверждено самой публикацией: доказательство; «Note that the VM variant of qvm-copy-to-vm is not affected, as its version of the error reporting function does not use system():»)
  • Уязвимость затрагивает все выпуски Qubes OS. (подтверждено самой публикацией: доказательство; «All Qubes OS releases are affected.»)
  • Для Qubes 4.3 в Dom0 исправление входит в пакет qubes-core-dom0-linux версии 4.3.22. (подтверждено самой публикацией: доказательство; «For Qubes 4.3, in dom0: - qubes-core-dom0-linux, version 4.3.22»)
  • Пользователям следует обновляться обычным способом для получения исправлений; иных действий в ответ на QSB-118 не требуется. (подтверждено самой публикацией: доказательство; «Continue to update normally [1] in order to receive the security updates described in the “Patching” section below. No other user action is required in response to this QSB.»)

Первоисточники:

оценка 79.0 · тип incident · ревизия 1 · истории st-1kg6rrb