![](https://help.apple.com/assets/6537FB06A074DBB5E802EA07/6537FB31280588A5490B6E1D/ko_KR/52d714626638d3391623c853be0c593b.png)
Intel 기반 Mac용 복구용 OS 및 진단 환경
복구용 OS
복구용 OS는 주요 macOS와 완전히 별개이며 전체 콘텐츠는 BaseSystem.dmg라는 디스크 이미지 파일에 저장됩니다. BaseSystem.dmg의 무결성을 확인하는 데 사용되는 관련 BaseSystem.chunklist도 있습니다. chunklist는 BaseSystem.dmg의 10MB 청크용 일련의 해시입니다. UEFi(Unified Extensible Firmware Interface) 펌웨어는 chunklist 파일의 서명을 평가한 다음, BaseSystem.dmg에서 하나의 청크에 대한 해시를 하나씩 평가합니다. 이를 통해 각 해시가 chunklist에 있는 서명된 콘텐츠와 일치하는지 확인합니다. 이 해시 중 하나라도 일치하지 않으면 로컬 복구용 OS에서의 시동이 중단되고 UEFI 펌웨어가 대신 인터넷 복구용 OS에서 시동을 시도합니다.
확인이 성공적으로 완료되면 UEFI 펌웨어는 BaseSystem.dmg를 RAM 디스크로 마운트하고 그 안에 포함된 boot.efi 파일을 실행합니다. UEFI 펌웨어가 boot.efi에 대한 특정 검사를 수행하거나 boot.efi가 커널을 검사할 필요는 없는데, 이는 이러한 요소가 하위 집합에 불과한 운영 체제의 전체 콘텐츠에 대한 무결성 확인을 이미 완료했기 때문입니다.
Apple 진단
로컬 진단 환경을 시동하는 절차는 대부분 복구용 OS를 실행하는 절차와 동일합니다. AppleDiagnostics.dmg 및 AppleDiagnostics.chunklist 파일은 각자 별도로 사용되지만, 확인되는 방식은 BaseSystem 파일과 동일합니다. UEFI 펌웨어는 boot.efi를 실행하는 대신 디스크 이미지(.dmg 파일) 내부에서 diags.efi라는 이름의 파일을 실행합니다. 이 파일은 하드웨어에 접속하고 하드웨어의 오류를 확인할 수 있는 다양한 기타 UEFI 드라이버를 호출하는 역할을 합니다.
인터넷 복구용 OS 및 진단 환경
로컬 복구 또는 진단 환경을 실행할 때 오류가 발생하는 경우 UEFI 펌웨어는 대안으로 인터넷에서 이미지 다운로드를 시도합니다. 또한, 사용자는 시동 시 보관된 특수 키 시퀀스를 사용하여 인터넷에서 이미지를 가져오도록 특별히 요청할 수 있습니다. 디스크 이미지 및 OS 복구 서버에서 다운로드한 chunklist의 무결성 확인은 저장 장치에서 검색된 이미지와 동일한 방법으로 수행됩니다.
HTTP를 사용하여 OS 복구 서버에 연결하는 동안 앞에서 설명한 대로 다운로드한 전체 콘텐츠의 무결성이 확인됩니다. 따라서 네트워크를 제어하는 공격자의 조작 공격으로부터 보호됩니다. 개별 청크가 무결성 확인에 실패하는 경우 OS 복구 서버에서 무결성 확인을 11회 다시 요청한 다음, 오류를 표시합니다.
2011년형 Mac 컴퓨터에 인터넷 복구와 진단 모드를 추가한 것은 UEFI 펌웨어에서 한층 복잡한 HTTPS 기능을 구현하여 펌웨어의 공격 표면이 늘어나도록 하기보다는 더 간단한 HTTP 전송을 이용하고 chunklist 메커니즘을 통해 콘텐츠 인증을 처리하는 것이 더 효과적이라는 판단을 내렸기 때문입니다.