Уязвимость протокола CTF затрагивает все версии Windows (с Windows XP)

Уязвимость протокола CTF затрагивает все версии Windows (с Windows XP)

Уязвимость протокола CTF затрагивает все версии Windows (с Windows XP)

Малоизвестный протокол Microsoft под названием CTF используется всеми версиями Windows, начиная с Windows XP. Эксперт Google Project Zero Тэвис Орманди считает, что CTF небезопасен и злоумышленник легко может проэксплуатировать протокол в ходе атаки.

Выяснилось, что присутствующий в системе вредонос может использовать CTF для захвата любого привилегированного приложения и даже всей системы целиком.

В настоящее время патча для уязвимостей протокола не существует и его скорого выхода также ждать не стоит — брешь очень прочно обосновалась в самом сердце CTF. По словам Орманди, ему не удалось найти упоминание CTF в документации Microsoft. То есть эксперт даже не может пока расшифровать эту аббревиатуру.

Единственное, что нашёл Орманди в отношении этого протокола: CTF является частью Windows Text Services Framework (TSF) — системы, отвечающей за отображение текста внутри Windows и приложений.

Когда пользователь запускает приложение, Windows параллельно запускает CTF-клиент для этого приложения. Клиент получает инструкции от сервера относительно системного языка ОС и устройств для ввода текста.

Тэвис Орманди обнаружил, что коммуникация между CTF-клиентом и его сервером не требует аутентификации и не имеет других средств защиты. В результате любой желающий может вмешаться в процесс взаимодействия клиента и сервера.

«Таким образом, вы можете подключиться к активной сессии другого пользователя. Это позволит скомпрометировать любое приложение или подождать входа администратора, чтобы перехватить его сессию», — объясняет Орманди.

В результате атакующий сможет отправлять команды приложению, играя роль сервера. Для демонстрации проблемы Орманди записал специальное видео, с которым можно ознакомиться ниже:

Орманди также выложил на GitHub специальный инструмент, который поможет исследователям проверить протокол на другие проблемы безопасности.

В Vim нашли опасную уязвимость: для атаки достаточно просто открыть файл

В текстовом редакторе Vim, которым пользуются миллионы разработчиков и системных администраторов по всему миру, обнаружили опасную уязвимость. Причём речь не об абстрактной опасности, поскольку специально подготовленный файл может запустить произвольные команды в системе сразу после открытия.

Проблема получила оценку 8,2 балла по шкале CVSS, так что история вполне серьёзная.

И особенно неприятно здесь то, насколько легко срабатывает атака: жертве не нужно нажимать на какие-то дополнительные кнопки или подтверждать действия. Достаточно просто открыть вредоносный файл в Vim.

Уязвимость связана с цепочкой из двух ошибок. Первая касается функции modeline, которая позволяет задавать определённые параметры прямо внутри открываемого файла.

В теории это должно быть удобно, но на практике именно здесь и возникла брешь: один из параметров, tabpanel, оказался недостаточно защищён и позволял внедрить выражение, которое не должно было выполняться в таком сценарии.

Дальше включается вторая часть проблемы. Vim распознаёт, что выражение небезопасно, и пытается выполнить его в ограниченной среде — так называемой песочнице. Но тут срабатывает ещё одна ошибка: функция autocmd_add() не выполняет нужную проверку безопасности.

В результате вредоносный код может зарегистрировать автокоманду, которая сработает уже после выхода из песочницы, то есть в обход защитных ограничений.

Именно из-за этой связки багов злоумышленник получает возможность выполнить в системе произвольную ОС-команду с правами того пользователя, который запустил Vim.

Под удар попадают стандартные сборки Vim с поддержкой tabpanel. Как отмечается, это характерно для сборок типа HUGE, а они используются довольно широко. Дополнительный риск создаёт и то, что modeline во многих окружениях включён по умолчанию.

Разработчики Vim уже выпустили срочный патч. Безопасной считается версия 9.2.0272 и новее. Тем, кто пока не может обновиться сразу, советуют хотя бы временно отключить modeline, добавив в .vimrc строку set nomodeline.

RSS: Новости на портале Anti-Malware.ru