В свободном архиваторе 7-Zip выявлена уязвимость (CVE-2022-29072), позволяющая выполнить произвольные команды с привилегиями SYSTEM через перемещение специально оформленного файла с расширением .7z в область c подсказкой, показываемой при открытии меню “Help>Contents”. Проблема проявляется только на платформе Windows и вызвана сочетанием неверной настройки библиотеки 7z.dll и переполнением буфера.
Примечательно, что после уведомления о проблеме разработчики 7-Zip не признали уязвимость и заявили, что источником уязвимости является процесс Microsoft HTML Helper (hh.exe), запускающий код при перемещении файла. Исследователь, выявивший уязвимость, считает, что hh.exe лишь косвенно участвует в эксплуатации уязвимости, а указанная в эксплоите команда запускается в 7zFM.exe как дочерний процесс.
Причинами возможности проведения атаки через подстановку команд (command injection) называются переполнение буфера в процессе 7zFM.exe и неверная настройка прав для библиотеки 7z.dll.
В качестве примера продемонстрирован пример файла справки, запускающего “cmd.exe”. Также заявлено о подготовке эксплоита, позволяющего получить привилегии SYSTEM в Windows, но его код планируют опубликовать после выпуска обновления 7-Zip с устранением уязвимости.
Так как исправления пока не опубликованы в качестве обходного пути защиты предлагается ограничить программе 7-zip доступ только возможностью чтения и запуска.