[하루한줄] CVE-2021-30970: New macOS vulnerability, powerdir

URL

New macOS vulnerability, “powerdir,” could lead to unauthorized user data access

Target

Transparency, Consent, and Control

Explain

Microsoft에서 “powerdir”라는 이름의 MacOS 취약점(CVE-2021-30970)을 공개했습니다. 해당 취약점을 악용하면 MacOS의 TCC(Transparency, Consent, and Control) 프레임워크를 우회하고 user data에 접근할 수 있습니다.

TCC 프레임워크는 설치된 응용 프로그램이 사용자의 허가 없이 민감한 사용자 데이터에 접근하는 것을 거부하는 Apple의 subsystem입니다. 이전에도 가짜 TCC.db 파일을 생성하는 방법으로 TCC를 우회하는 취약점(CVE-2021-30920)이 발견되었고 이를 방지하기 위해 full disk access 권한이 있는 응용프로그램만이 TCC.db에 접근할 수 있도록 패치되었습니다.

하지만 사용자의 디렉터리 서비스 entry와 home 디렉터리를 변경하면 kTCCServiceSystemPolicySysAdminFiles 정책이 적용된 응용프로그램으로도 TCC.db에 접근하고 TCC 설정을 변경할 수 있게됩니다.

  1. 가짜 TCC.db를 생성
  2. dsexport 명령어를 사용해 유저 디렉터리 서비스 entry를 export
  3. 유저 디렉터리 서비스 entry와 home 디렉터리를 변경
  4. dsimport를 사용해 유저 디렉터리 서비스 entry를 import
  5. tccd 프로세스를 재시작
sudo dscl .-create /Users/$TARGET_USER NFSHomeDirectory /tmp/fakedir