
CVE-2022-25943
https://jvn.jp/en/vu/JVNVU90673830/
WPS Office es una suite ofimática para Microsoft Windows, macOS, Linux, iOS, Android y HarmonyOS desarrollada por el desarrollador de software chino Kingsoft, con sede en Zhuhai.
Una de las mejores funciones que ofrece WPS es un servicio en la nube para guardar tus documentos, trabajos, etc...; este servicio está configurado como manual por defecto; solo se inicia si navegas a la nube de WPS dentro del panel de WPS Office, pero el servicio se inicia con el privilegio del usuario actual (privilegio bajo).
Al examinar las importaciones iniciales realizadas por el servicio en la nube de WPS una vez iniciado, parece que primero intenta importar una DLL llamada CRYPTSP.DLL y otras desde *C:\ProgramData\kingsoft\office6*; si no están allí (y por defecto no lo están), el servicio las cargará desde System32, como se puede ver:

El problema aquí es que la ACL de ese directorio está configurada con permisos de lectura y escritura para todos los usuarios; un atacante puede colocar una DLL maliciosa allí y reiniciar el ejecutable, pero este se inicia con el nivel de privilegio actual (usuario con privilegios bajos), a menos que iniciemos el ejecutable como servicio (ya que está instalado como uno) con algo como net start wpscloudsvr, lo que iniciará el servicio como NT AUTHORITY.
El problema aquí parece ser más una configuración incorrecta de ACL.
Mi exploit es simple: copia la DLL manipulada (cambiar la contraseña de Administrador) al directorio de destino y reinicia el servicio; ahora se tiene acceso a la cuenta de administrador, lo que significa que tengo acceso a sedebugpriv; desde allí robo el token de winlogon e inicio cmd como NT AUTHORITY / System.