네덜란드에 위치한 사이버 보안 기업인 컴퓨테스트(Computest) 연구 부문인 섹터7 연구자가 애플이 개발하는 맥OS에 준비되어 있는 복수 보안 레이어를 돌파해 맥에 존재하는 모든 파일을 읽거나 웹캠을 제어할 수 있는 취약성을 발견했다.
맥에선 재부팅이나 종료를 할 때 재로그인할 때 윈도를 다시 열기 같은 옵션이 표시되어 체크를 하면 이전에 열려 있던 앱이나 윈도를 자동으로 표시해주는 것 외에 앱으로 저장되지 않은 문서를 복원하는 것도 가능하다. 이 기능은 반드시 셧다운할 때 뿐 아니라 백그라운드에서 동작하는 앱 처리를 일시 정지해 전력 소비를 억제하는 앱 냅(App Nap)이라는 프로세스에서도 이용되고 있다.
맥OS는 윈도와 앱을 기록한 파일을 만들고 시작할 때 이런 파일을 읽고 복원한다. 그런데 이런 파일에 포함되어 있는 직렬화된 오브젝트를 악의가 있는 버전으로 바꾸는 프로세스 인젝션 공격을 이용하는 것으로 유해 코드를 실행하는 게 가능하다고 한다.
섹터7은 프로세스 인젝션 공격을 이용해 맥OS에 탑재된 보안 기능인 샌드박스를 피할 수 있다고 밝혔다. 샌드박스는 악성 애플리케이션을 실행해도 영향을 최소화할 수 있게 시스템 리소스에 대한 액세스를 제한하는 방어 시스템이다. 하지만 셧다운과 시동할 때 파일 복원에 더해 악의적 코드를 실행하는 것으로 샌드박스를 통과해 공격 범위를 확장할 수 있었다고 보고하고 있다.
또 특정 자격을 갖춘 앱에 코드를 삽입해 권한 승격을 수행할 수 있었고 맥 기밀 파일에 액세스하는 걸 방지하는 시스템 무결성 보호도 우회할 수 있었다고 한다. 이로 인해 공격자는 모든 파일을 사실상 읽거나 웹캠을 제어할 수 있었다.
연구팀은 기본적으로 한 가지 취약점에서 3가지 다른 공격 범위에 적용할 수 있다며 이렇게 보편적으로 적용할 수 있는 걸 찾는 건 매우 드문 일이라고 밝혔다. 해당 연구자는 2020년 12월 해당 취약성을 발견해 버그 보장금 제도를 통해 애플에 연락해 꽤 좋은 보장금을 얻을 수 있었다고 한다. 애플은 이런 결함을 두 차례 업데이트로 수정하고 있지만 맥OS 몬테레이보다 오래된 맥OS에선 여전히 취약성이 동작할 가능성이 있다고 지적되고 있다.
현재 발견된 취약성이 악용된 증거는 발견되지 않았지만 이번 사례는 공격자가 운영체제 전체를 통해 점점 더 많은 데이터에 액세스할 수 있게 될 가능성을 보여주고 있다. 관련 내용은 이곳에서 확인할 수 있다.