Mac에서 시스템 무결성 보호를 비활성화하는 방법 (및 그렇게하지 않아야하는 이유)

Mac OS X 10.11 El Capitan은 시스템 무결성 보호라는 새로운 기능으로 시스템 파일과 프로세스를 보호합니다. SIP는 "루트"계정이 수행 할 수있는 작업을 제한하는 커널 수준 기능입니다.

이것은 훌륭한 보안 기능이며 "고급 사용자"와 개발자조차도 거의 모든 사람이이 기능을 활성화 상태로 두어야합니다. 그러나 실제로 시스템 파일을 수정해야하는 경우이를 우회 할 수 있습니다.

시스템 무결성 보호 란 무엇입니까?

관련 : 유닉스 란 무엇이며 왜 중요한가?

Mac OS X 및 Linux를 포함한 기타 UNIX 유사 운영 체제에는 전통적으로 전체 운영 체제에 대한 전체 액세스 권한을 가진 "루트"계정이 있습니다. 루트 사용자가되거나 루트 권한을 얻으면 전체 운영 체제에 액세스하고 모든 파일을 수정 및 삭제할 수 있습니다. 루트 권한을 얻은 맬웨어는 이러한 권한을 사용하여 하위 수준의 운영 체제 파일을 손상시키고 감염시킬 수 있습니다.

보안 대화 상자에 비밀번호를 입력하면 애플리케이션 루트 권한이 부여됩니다. 이것은 많은 Mac 사용자가 이것을 깨닫지 못했을 수도 있지만 전통적으로 운영 체제에 무엇이든 할 수있게합니다.

시스템 무결성 보호 ( "루트없는"라고도 함)는 루트 계정을 제한하여 작동합니다. 운영 체제 커널 자체는 루트 사용자의 액세스를 확인하고 보호 된 위치를 수정하거나 보호 된 시스템 프로세스에 코드를 삽입하는 것과 같은 특정 작업을 수행하도록 허용하지 않습니다. 모든 커널 확장은 서명되어야하며 Mac OS X 자체 내에서 시스템 무결성 보호를 비활성화 할 수 없습니다. 상승 된 루트 권한이있는 응용 프로그램은 더 이상 시스템 파일을 조작 할 수 없습니다.

다음 디렉토리 중 하나에 쓰기를 시도하면이를 알 수 있습니다.

  • /체계
  • /큰 상자
  • / usr
  • / sbin

OS X에서는이를 허용하지 않으며 "작업이 허용되지 않음"메시지가 표시됩니다. OS X는 또한 이러한 보호 된 디렉토리 중 하나 위에 다른 위치를 마운트하는 것을 허용하지 않으므로이 문제를 해결할 방법이 없습니다.

보호 된 위치의 전체 목록은 Mac의 /System/Library/Sandbox/rootless.conf에 있습니다. 여기에는 Mac OS X에 포함 된 Mail.app 및 Chess.app 앱과 같은 파일이 포함되어 있으므로 루트 사용자로 명령 줄에서도 제거 할 수 없습니다. 이것은 또한 맬웨어가 이러한 응용 프로그램을 수정하고 감염시킬 수 없음을 의미합니다.

우연이 아니라 디스크 유틸리티의 "디스크 권한 복구"옵션 (다양한 Mac 문제 해결에 오랫동안 사용됨)이 이제 제거되었습니다. 시스템 무결성 보호는 중요한 파일 권한이 변경되는 것을 방지해야합니다. 디스크 유틸리티가 재 설계되었으며 여전히 오류 복구를위한 "First Aid"옵션이 있지만 권한 복구 방법은 없습니다.

시스템 무결성 보호를 비활성화하는 방법

경고 : 그럴만 한 이유가 있고 무엇을하고 있는지 정확히 아는 경우가 아니면이 작업을 수행하지 마십시오! 대부분의 사용자는이 보안 설정을 비활성화 할 필요가 없습니다. 이는 시스템을 엉망으로 만드는 것을 방지하기위한 것이 아니라 맬웨어 및 기타 잘못 작동하는 프로그램이 시스템을 엉망으로 만드는 것을 방지하기위한 것입니다. 그러나 일부 저수준 유틸리티는 무제한 액세스가있는 경우에만 작동 할 수 있습니다.

관련 : 복구 모드에서 액세스 할 수있는 8 가지 Mac 시스템 기능

시스템 무결성 보호 설정은 Mac OS X 자체에 저장되지 않습니다. 대신 각 Mac의 NVRAM에 저장됩니다. 복구 환경에서만 수정할 수 있습니다.

복구 모드로 부팅하려면 Mac을 재시동하고 부팅 할 때 Command + R을 길게 누릅니다. 복구 환경으로 들어갑니다. "유틸리티"메뉴를 클릭하고 "터미널"을 선택하여 터미널 창을 엽니 다.

터미널에 다음 명령을 입력하고 Enter를 눌러 상태를 확인하십시오.

csrutil 상태

시스템 무결성 보호가 활성화되었는지 여부가 표시됩니다.

시스템 무결성 보호를 비활성화하려면 다음 명령을 실행하십시오.

csrutil 비활성화

나중에 SIP를 사용하려면 복구 환경으로 돌아가 다음 명령을 실행하십시오.

csrutil 활성화

Mac을 재시동하면 새로운 시스템 무결성 보호 설정이 적용됩니다. 이제 루트 사용자는 전체 운영 체제와 모든 파일에 대한 무제한 액세스 권한을 갖게됩니다.

Mac을 OS X 10.11 El Capitan으로 업그레이드하기 전에 이러한 보호 된 디렉토리에 파일이 저장되어 있었다면 파일이 삭제되지 않았습니다. Mac의 / Library / SystemMigration / History / Migration- (UUID) / QuarantineRoot / 디렉토리로 이동 된 것을 찾을 수 있습니다.

이미지 크레딧 : Flickr의 신지