printf "e]50;i$(touch /tmp/hack-like-its-1999)ae]50;?a" > cve-2022-45063 cat cve-2022-45063
Проблема вызвана ошибкой при обработке escape-последовательности с кодом 50, применяемой для установки или получения параметров шрифта. Если запрошенный шрифт не существует, операция возвращает заданное в запросе имя шрифта. Напрямую управляющие символы вставить в имя нельзя, но возвращаемая строка может быть завершена последовательностью «^G», которая в zsh при активности режима редактирования строк в стиле vi приводит к выполнению операции раскрытия списка, что может использоваться для запуска команд без явного нажатия клавиши Enter.
Для успешной эксплуатации уязвимости пользователь должен использовать командную оболочку Zsh, а параметр $EDITOR должен быть установлен в значение «vi», который обычно не используется по умолчанию в дистрибутивах. Проблема также не проявляется при выставлении в xterm настроек allowWindowOps=false или allowFontOps=false. Например, настройка allowFontOps=false выставляется в OpenBSD, Debian и RHEL, но не применяются по умолчанию в Arch Linux.
Судя по списку изменений и заявлению выявившего проблему исследователя уязвимость устранена в выпуске xterm 375, но по другим сведениям уязвимость продолжает проявляться в xterm 375 из состава Arch Linux. Проследить за публикацией исправлений дистрибутивами можно на данных страницах: Debian, RHEL, Fedora, SUSE, Ubuntu, Arch Linux, OpenBSD, FreeBSD, NetBSD.
Источник: http://www.opennet.ru/opennews/art.shtml?num=58098