
CVE-2022-25943
https://jvn.jp/en/vu/JVNVU90673830/
WPS Office는 중국 주하이에 기반을 둔 소프트웨어 개발사 Kingsoft가 개발한 Microsoft Windows, macOS, Linux, iOS, Android 및 HarmonyOS용 오피스 제품군입니다.
WPS가 제공하는 가장 좋은 기능 중 하나는 문서, 작업 등을 저장할 수 있는 클라우드 서비스입니다. 이 서비스는 기본적으로 수동으로 설정되어 있으며, WPS 오피스 패널에서 WPS 클라우드로 이동할 때만 시작되지만 서비스는 현재 사용자 권한(낮은 권한)으로 시작됩니다.
시작된 후 wps 클라우드 서비스가 수행하는 초기 가져오기를 살펴보면, 먼저 CRYPTSP.DLL이라는 DLL과 다른 DLL들을 *C:\ProgramData\kingsoft\office6*에서 가져오려고 시도하고, 기본적으로 해당 파일이 없으면 System32에서 로드합니다. 아래에서 확인할 수 있습니다:

문제는 해당 디렉터리의 ACL이 모든 사용자에게 읽기 및 쓰기 권한으로 구성되어 있어 공격자가 악성 DLL을 해당 위치에 심고 실행 파일을 다시 시작할 수 있다는 점입니다. 단, 실행 파일은 현재 권한 수준(낮은 권한 사용자)으로 시작됩니다. 단, net start wpscloudsvr과 같은 명령어로 서비스로 실행 파일을 시작하면(서비스로 설치되어 있으므로) NT AUTHORITY로 시작됩니다.
여기서 문제는 ACL 구성 오류에 더 가깝습니다.
제 익스플로잇은 간단합니다. 조작된 DLL(관리자 비밀번호 변경)을 대상 디렉터리에 복사하고 서비스를 다시 시작합니다. 그러면 관리자 계정에 접근할 수 있게 됩니다. 즉, sedebugpriv에 접근할 수 있게 되며, 거기서 winlogon 토큰을 탈취하여 NT AUTHORITY / System으로 cmd를 시작합니다.