
CVE-2022-25943
https://jvn.jp/en/vu/JVNVU90673830/
WPS Office — это офисный пакет для Microsoft Windows, macOS, Linux, iOS, Android и HarmonyOS, разработанный китайской компанией Kingsoft, расположенной в Чжухае.
Одна из наиболее приятных функций, которые предлагает WPS, — это облачный сервис для сохранения документов, работы и т.д. По умолчанию этот сервис настроен на ручной запуск; он запускается только при переходе в облако WPS в панели WPS Office, но сервис запускается с привилегиями текущего пользователя (низкие привилегии).
При изучении ранних импортов, выполняемых облачным сервисом WPS после запуска, оказывается, что он сначала пытается импортировать DLL с именем CRYPTSP.DLL и другие из *C:\ProgramData\kingsoft\office6*; если их там нет (а по умолчанию их нет), сервис загрузит их из System32, как вы можете видеть:

Проблема в том, что ACL для этого каталога настроен на чтение и запись для всех пользователей. Злоумышленник может разместить там вредоносную DLL и перезапустить исполняемый файл, но он запускается с текущим уровнем привилегий (пользователь с низкими правами), если только мы не запустим исполняемый файл как службу (поскольку он установлен как таковая) с помощью команды net start wpscloudsvr, которая запустит службу от имени NT AUTHORITY.
Проблема здесь, похоже, скорее в неправильной конфигурации ACL.
Мой эксплойт прост: он копирует подготовленную DLL (с изменением пароля администратора) в целевой каталог, перезапускает службу. Теперь доступ к учетной записи администратора становится возможным, что означает, что я получаю sedebugpriv, оттуда краду токен winlogon и запускаю cmd от имени NT AUTHORITY / System.