Специалист по безопасности из Google Zero Project выявил уязвимость в малоизвестном протоколе CTF, который используются во всех современных версиях Windows. Эксплуатация уязвимости позволяет установить полный контроль над атакуемой машиной.

«Секретный» протокол

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

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

Как именно расшифровывается аббревиатура CTF на данный момент неизвестно – Орманди не удалось отыскать информацию об этом в документации Microsoft. Однако известно, что CTF является частью Windows Text Services Framework (TSF) – системы, которая отвечает за вывод текста в Windows и приложениях для нее.

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

Одна уязвимость, чтобы управлять всем

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

«Хотя CTF-сервер и требует от своего клиента идентификаторы потока, процесса и окна (HWND), однако из-за отсутствия какого-либо механизма аутентификации ничто не мешает передать поддельные данные», – отмечает эксперт.

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

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

Исправление есть, но поможет ли?

ZDNet сообщает, что Microsoft выпустила исправление (CVE-2019-1162), которое решает описанную Орманди проблему в части повышения привилегий. Однако, как отмечают журналисты издания, сам протокол CTF нуждается в модернизации, поскольку уязвим в силу своей архитектуры.

Орманди выложил на Github инструмент, который позволит исследователям самостоятельно протестировать протокол на наличие других проблемы безопасности, а также опубликовал в блоге Google Project Zero более детальное описание проблемы.

Другие проблемы безопасности Windows

Специалисты по безопасности регулярно находят баги и уязвимости в операционных системах Microsoft.

Так, в октябре 2018 г. CNews сообщал о том, что японский исследователь безопасности из Fujitsu Соя Аояма (Soya Aoyama) обнаружил уязвимость в Windows 10, которая позволяет обойти встроенную в систему защиту от троянов-вымогателей Controlled folder access (CFA, «контролируемый доступ к папкам») путем осуществления инъекции вредоносной динамической библиотеки (DLL) в доверенное приложение «Проводник».

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

В конце декабря 2018 г. в Windows 10 был обнаружен баг, получивший название Angrypolarbear или Angrypolarbearbug («Разъяренный полярный медведь»). Его нашла скандально известная исследовательница кибербезопасности SandboxEscaper. Уязвимость позволяет перезаписывать любой файл в системе произвольными данными. При этом пользователю достаточно иметь самые базовые привилегии. В январе 2019 г. компания Acros Security выпустилапромежуточный микропатч для этой проблемы.

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

В апреле 2019 г. эксперт по безопасности компании Dimension Data Набил Ахмед (Nabeel Ahmed) обнаружил ошибку в обработке жестких ссылок Windows, которая позволяла захватить полный контроль над файлом hosts из-под аккаунта обычного пользователя, не имеющего административных разрешений в системе.