Computer >> 컴퓨터 >  >> 시스템 >> Mac

macOS 루트 버그 해결 방법 – 해커의 Mac 침입을 완전히 차단하기

macOS High Sierra에서 발견된 '루트(root) 접근 취약점' 문제와 해결 방법을 다룹니다. 참고로 macOS 10.13에서 10.13.1로 업그레이드하면 애플이 배포한 수정 사항이 일시적으로 사라지는 현상도 함께 안내합니다.

macOS High Sierra 루트 취약점이란?

2017년 11월 28일(화), macOS High Sierra에서 비밀번호 없이도 관리자(root) 권한에 접근할 수 있는 치명적인 결함이 발견되었습니다. 즉, 사용자 이름에 'root'만 입력하면 별도의 비밀번호 없이 누구나 Mac의 설정을 변경할 수 있었던 것입니다.

예를 들어 공격자가 시스템 환경설정의 '보안 및 개인 정보 보호' 항목에 접근한 뒤, 사용자 이름에 root를 입력하고 비밀번호를 비워두면 관리자 권한을 모두 획득하게 됩니다. 이를 통해 사용자 비밀번호 변경, 앱 다운로드 설정 조작, 키체인 데이터 열람 등 심각한 피해가 가능했습니다.

흥미로운 점은 첫 시도에는 로그인이 실패하지만, 몇 번 반복해서 시도하면 결국 접근이 허용된다는 것입니다. 실제로 직접 테스트한 결과 여섯 번째 시도에서 root 로그인이 받아들여졌습니다.

물리적 접근이 필요한 취약점

이 버그를 악용하려면 해당 Mac 자체에 접근할 수 있어야 합니다. 따라서 악의적인 의도를 가진 사람이 내 Mac을 만질 가능성이 낮다면 크게 걱정할 상황은 아닙니다. 다만 이미 원격으로 Mac에 침입한 공격자가 있다면 이 취약점을 통해 설정에 접근할 수도 있으니 완전히 안심할 수는 없습니다.

Macworld US 팀이 macOS High Sierra 10.13.1이 설치된 MacBook Pro에서 root 로그인을 실제로 시도한 결과, 로그인에 성공했습니다.

다만 한 가지 제한 조건이 있습니다. 이 해킹은 부팅 시 나타나는 로그인 화면에서는 작동하지 않고, 이미 어떤 계정으로든 Mac에 로그인된 상태에서만 가능합니다. 당연히 Mac에는 강력한 비밀번호를 설정해 두어야 하며, 아직이라면 지금 바로 강력한 비밀번호를 만들어 두기 바랍니다.

애플은 신속하게 공식 입장을 내며 수정 작업에 착수했음을 알렸습니다. "당사는 이 문제를 해결하기 위한 소프트웨어 업데이트를 진행 중입니다. 그때까지 루트 비밀번호를 설정하면 무단 접근을 차단할 수 있습니다. Root User를 활성화하고 비밀번호를 설정하는 방법은 안내 페이지를 참고하세요. 이미 Root User가 활성화되어 있다면 '루트 비밀번호 변경' 섹션의 지침에 따라 빈 비밀번호가 설정되지 않았는지 반드시 확인하시기 바랍니다."

애플의 공식 수정 패치

예상대로 애플은 문제가 알려진 지 24시간 이내에 패치를 배포했습니다. 애플은 "화요일 오후 보안 엔지니어들이 문제를 인지한 직후 즉시 업데이트 작업에 착수했으며, 수요일 오전 8시 기준 업데이트 다운로드가 가능해졌다"며, "당일부터 macOS High Sierra 최신 버전(10.13.1)을 실행하는 모든 시스템에 자동 설치될 것"이라고 밝혔습니다.

따라서 가능한 한 빨리 운영체제를 업데이트하는 것이 좋습니다. 다만 가디언(Guardian)의 보도에 따르면 이 패치가 또 다른 문제를 일으켰는데, 일부 사용자가 파일 공유에 연결하지 못하는 현상이 발생했습니다.

보안 업데이트 2017-001 확인 방법

애플은 2017년 11월 29일 macOS High Sierra 10.13 및 10.13.1용 '보안 업데이트 2017-001'을 배포했습니다. 이 업데이트는 관리자 비밀번호 입력 없이 인증을 우회할 수 있던 루트 버그를 해결했습니다.

특히 최근 macOS High Sierra 10.13에서 10.13.1로 업그레이드했다면, 보안 업데이트가 올바르게 적용되도록 반드시 Mac을 재부팅해야 한다고 애플은 강조합니다.

내 Mac에 보안 업데이트 2017-001이 설치되었는지 확인하려면 다음 절차를 따르세요.

  1. 응용 프로그램 폴더 내 유틸리티(Utility) 폴더에 있는 터미널(Terminal) 앱을 실행합니다.
  2. what /usr/libexec/opendirectoryd를 입력한 뒤 Return 키를 누릅니다.
  3. 보안 업데이트 2017-001이 정상 설치되었다면 아래 버전 번호 중 하나가 표시됩니다.
  • macOS High Sierra 10.13 → opendirectoryd-483.1.5
  • macOS High Sierra 10.13.1 → opendirectoryd-483.20.7

애플은 이번 문제에 대해 공식 사과했습니다. "보안은 모든 애플 제품의 최우선 과제이지만, 유감스럽게도 이번 macOS 출시에서 실수를 저질렀습니다. 이러한 취약점이 포함된 상태로 출시한 점과 사용자 여러분께 드린 걱정에 대해 진심으로 사과드립니다. 고객님들은 더 나은 서비스를 받아 마땅합니다. 동일한 일이 재발하지 않도록 개발 프로세스 전반을 감사하고 있습니다."

10.13.1로 업그레이드하면 취약점이 재발하는 문제

파일 공유 문제에 이어 추가적인 결함이 발견되었습니다. 사용자가 macOS 10.13.1로 업그레이드하면 보안 수정 사항이 되돌아가면서 Mac이 다시 루트 접근 취약점에 노출됩니다.

다행히 치명적인 상황은 아닙니다. 업그레이드 이후 Mac을 한 번 재부팅하면 수정 사항이 복원되어 다시 안전해지기 때문입니다. 하지만 평소 재부팅을 자주 하지 않는 사용자라면, 업데이트 후 반드시 한 번은 재부팅했는지 확인하는 것이 좋습니다.

애플도 이 문제를 인지하고 안내 페이지를 갱신하여 "최근 macOS High Sierra 10.13에서 10.13.1로 업데이트했다면, 보안 업데이트가 올바르게 적용되도록 Mac을 재부팅하세요"라고 명시했습니다. 이후 애플은 macOS High Sierra 10.13.2를 배포하여 문제를 완전히 종결했습니다.

직접 수동으로 루트 취약점 수정하기

애플의 패치가 문제를 해결해 주지만, 어떤 이유로든 업데이트를 설치할 수 없거나 원하지 않는 경우 아래 방법으로 직접 수정할 수 있습니다. 핵심은 루트 계정에 비밀번호를 설정하는 것입니다.

  1. Finder를 엽니다.
  2. 메뉴에서 이동 > 폴더로 이동을 클릭합니다.
  3. 입력창에 /System/Library/CoreServices/Applications/를 입력합니다.
  4. 이동 버튼을 클릭합니다.
  5. Command+Space를 눌러 Spotlight를 실행합니다.
  6. Directory Utility(디렉터리 유틸리티) 앱을 검색해 실행합니다.
  7. 변경을 허용하려면 자물쇠 아이콘을 클릭합니다.
  8. 팝업 창에 본인의 이름과 비밀번호를 입력합니다.
    macOS 루트 버그 해결 방법 – 해커의 Mac 침입을 완전히 차단하기
  9. Modify Configuration(구성 수정)을 클릭합니다.
  10. Edit(편집) 메뉴를 클릭합니다.
  11. Change Root Password(루트 비밀번호 변경)를 선택합니다.
  12. 새 비밀번호를 입력하고 확인란에 한 번 더 입력합니다.
  13. OK(확인)를 클릭합니다.
  14. 다시 자물쇠 아이콘을 클릭해 잠급니다. 더 이상 변경되지 않도록 하는 단계입니다.
  15. 디렉터리 유틸리티를 종료합니다.

이제 누군가 root 계정으로 로그인을 시도하면 반드시 비밀번호를 입력해야 하므로, 무단 접근을 효과적으로 차단할 수 있습니다.

맬웨어와 해커로부터 Mac을 보호하는 다른 방법들도 함께 살펴보시기 바랍니다.