SKP(봉인 키 보호)
데이터 보호를 지원하는 Apple 기기에서 KEK(키 암호화 키)는 시스템의 소프트웨어 측정값으로 보호되거나 봉인되며 Secure Enclave에서만 사용할 수 있는 UID에 연결됩니다. Apple Silicon이 탑재된 Mac에서 macOS는 다른 플랫폼에서 지원되지 않는 중요한 보안 정책 변경(예: 보안 시동 또는 SIP 비활성화)을 지원하기 때문에 시스템의 보안 정책에 대한 정보를 통합하여 KEK의 보호를 한층 강화합니다. Apple Silicon이 탑재된 Mac 시스템에서 FileVault는 데이터 보호(클래스 C)를 사용하여 구현되므로 이 보호에는 FileVault 키가 포함됩니다.
사용자 암호, 장기 SKP 키 및 하드웨어 키 1(Secure Enclave의 UID)를 연결하여 파생된 키는 암호 파생 키라고 합니다. 이 키는 지원되는 모든 플랫폼의 User keybag과 KEK(macOS만 해당)를 보호하고 Apple Watch와 같이 다른 기기에서 생체 인식 잠금 해제 또는 자동 잠금 해제를 활성화하는 데 사용됩니다.
Secure Enclave 시동 모니터는 로드된 Secure Enclave OS의 측정값을 캡처합니다. 응용 프로그램 프로세서 Boot ROM에서 LLB에 연결된 Image4 매니페스트를 측정할 때 해당 매니페스트는 로드된 다른 모든 시스템 쌍 펌웨어의 측정값도 포함합니다. LocalPolicy는 로드된 macOS에 대한 핵심 보안 구성을 포함합니다. 또한 LocalPolicy는 macOS Image4 매니페스트의 해시인 nsih
필드를 포함합니다. macOS Image4 매니페스트는 모든 macOS 쌍 펌웨어 및 부트 커널 모음 또는 SSV(서명된 시스템 볼륨) 루트 해시와 같은 핵심 macOS 시동 개체의 측정값을 포함합니다.
위에서 측정한 펌웨어, 소프트웨어 또는 보안 구성 요소를 공격자가 예기치 않게 변경할 수 있는 경우, 하드웨어 레지스터에 저장된 측정값을 수정합니다. 측정값이 수정되면 키 계층의 봉인을 효과적으로 해제하며 암호화 하드웨어 파생 SMRK(시스템 측정 루트 키)가 다른 값으로 유도됩니다. 이는 SMDK(시스템 측정 장치 키)에 접근할 수 없도록 만들고, 이에 따라 KEK를 유발하여 데이터에 접근할 수 없게 됩니다.
하지만 시스템이 공격받고 있는 상황이 아닌 경우 LocalPolicy의 nsih
필드와 펌웨어 측정을 변경하는 합법적 소프트웨어 업데이트를 수용하여 새로운 macOS 측정값을 가리키도록 해야 합니다. 펌웨어 측정 통합을 시도하지만 신뢰할 수 있는 확인된 정보가 없는 다른 시스템에서는 사용자가 보안을 비활성화하고 펌웨어를 업데이트한 다음, 보안을 다시 활성화해야 새로운 측정 기준을 캡처할 수 있습니다. 이로 인해 소프트웨어 업데이트 중 공격자가 펌웨어를 변조할 수 있는 위험이 크게 증가합니다. Image4 매니페스트가 필요한 모든 측정값을 포함한다는 사실은 이 시스템에 도움을 줍니다. 일반적인 시동 과정 중 측정값이 일치하는 경우, SMRK로 SMDK를 암호화 해제하는 하드웨어는 제시된 향후 SMRK로 SMDK를 암호화할 수도 있습니다. 하드웨어는 소프트웨어 업데이트 후 예상되는 측정값을 지정함으로써 현재 운영 체제에서 접근 가능한 SMDK를 암호화하여 향후 운영 체제에서 접근할 수 있게 합니다. 마찬가지로 고객이 LocalPolicy에서 자신의 보안 설정을 합법적으로 변경하는 경우, 다음 재시동 시 LLB가 계산하는 LocalPolicy에 대한 측정값을 기반으로 하여 SMDK를 향후 SMRK로 암호화해야 합니다.