
public disclosure
영향을 받는 애플리케이션: MindManager23_setup.exe
플랫폼: Windows
문제: MSI 설치 프로그램 복구 모드를 통한 로컬 권한 상승 (EXE 하이재킹 경쟁 조건)
발견 및 신고: Pawel Karwowski와 Julian Horoszkiewicz (Eviden Red Team)
제안된 완화 조치: https://learn.microsoft.com/en-us/windows/win32/msi/disablemsi
공개 공표 근거: 이 문제를 무기한 보류하는 것은 장기적으로 위협 행위자에게 이익이 됩니다(이 문제는 발견하기가 매우 쉬움). 반면 사용자와 관리자는 위험을 인지하지 못한 채 정보를 얻지 못한 상태로 남게 됩니다.
벤더의 입장은 무엇인가? 벤더에 따르면 취약점이 3rd party 구성 요소(CVE-2021-41526)에 있으므로 책임이 없다는 입장입니다. 그러나 이것이 그들의 소프트웨어가 취약하지 않다는 것을 의미하지는 않습니다. 우리는 원래 이 문제를 2023년 8월 22일에 벤더에게 신고했습니다. 그 이후로 US CERT를 조정 노력에 참여시켰음에도 불구하고 벤더가 수정본을 배포하도록 설득할 수 없었습니다. 오랜 기간에 걸쳐 메시지를 주고받은 끝에, 우리는 CERT와 이 상황에서는 공개 공표가 적절한 조치라는 데 동의했습니다.
취약점은 무엇인가? MindManager23이 설치된 시스템에서는 일반 사용자가 다음 명령을 실행하여 설치 프로그램을 "복구" 모드로 트리거할 수 있습니다: msiexec.exe /fa PATH_TO_INSTALLER_FILE.msi
이로 인해 msiexec 서비스가 트리거되어 복구 프로세스를 수행하며, 여러 작업을 실행하고 그중에서도 C:\Users\pk\AppData\Local\Temp 디렉터리 내부에 파일을 생성합니다. 해당 파일 이름은 "wac<무작위 영문 4자 또는 숫자>.tmp" 패턴으로 동적으로 생성됩니다(예: wac98DF.tmp). 그런 다음 프로세스는 NT AUTHORITY/SYSTEM 권한으로 실행되는 생성된 wac****.tmp 파일(실행 파일)을 사용하여 자기 자신의 이미지를 쓰고 로드합니다.
C:\Users\pk\AppData\Local\ 디렉터리는 일반 사용자가 소유하므로 C:\Users\pk\AppData\Local\Temp\ 디렉터리는 해당 권한을 상속받습니다. 따라서 일반 사용자가 디렉터리의 내용을 간섭할 수 있으며, 예를 들어 동적으로 생성된 DLL\EXE 파일을 덮어쓸 수 있습니다.
Mind Manager 설치 프로그램의 권한 상승은 CVE-2021-41526의 영향을 받는 알려진 취약 구성 요소인 Flexera Installshield를 사용하기 때문에 발생합니다. Mind Manager는 최신 버전의 Flexera Installshield를 사용해야 하며, 또는 "복구 모드"를 지원하지 않도록 MSI를 다시 패키징하거나 실행에 관리자 권한을 요구해야 합니다.
악용 과정은 무엇인가? 악용은 .MSI 파일을 실행하고 관심 대상인 정상 DLL\EXE의 존재 및 생성을 확인하며, PoC DLL\EXE를 Appdata\Local\Temp 디렉터리에 반복적으로 복사하여 정상 DLL\EXE 파일을 효과적으로 덮어쓰는 PowerShell 스크립트를 사용하여 수행됩니다. 실행된 후 PoC DLL\EXE 파일은 이를 호출한 명령줄과 whoami 출력과 함께 C:\Users\Public에 poc.txt 파일을 생성합니다.