[**이전에 언급한 것처럼**](./#what-is-mdm-mobile-device-management)**,** 조직에 장치를 등록하려면 해당 조직에 속하는 일련 번호만 필요합니다. 장치가 등록되면 여러 조직에서 새 장치에 민감한 데이터를 설치할 수 있습니다: 인증서, 애플리케이션, WiFi 비밀번호, VPN 구성 [등등](https://developer.apple.com/enterprise/documentation/Configuration-Profile-Reference.pdf).\
따라서, 등록 프로세스가 올바르게 보호되지 않은 경우 공격자에게 위험한 진입점이 될 수 있습니다.
DEP 체크인은 `CPFetchActivationRecord` 및 `CPGetActivationRecord` 함수를 사용하여 개인 Configuration Profiles 프레임워크에서 Activation Record를 가져옵니다. `CPFetchActivationRecord`는 XPC를 통해 `cloudconfigurationd`와 협력하여 작동합니다.
DEP 체크인은 `cloudconfigurationd`가 암호화되고 서명된 JSON 페이로드를 _iprofiles.apple.com/macProfile_로 전송하는 것을 포함합니다. 페이로드에는 장치의 일련 번호와 "RequestProfileConfiguration" 작업이 포함됩니다. 사용되는 암호화 방식은 내부적으로 "Absinthe"로 참조됩니다. 이 방식을 해체하는 것은 복잡하며 여러 단계를 거치게 되었으며, Activation Record 요청에 임의의 일련 번호를 삽입하기 위한 대안적인 방법을 탐구하게 되었습니다.
Charles Proxy와 같은 도구를 사용하여 _iprofiles.apple.com_으로의 DEP 요청을 가로채고 수정하려는 시도는 페이로드 암호화 및 SSL/TLS 보안 조치로 인해 방해를 받았습니다. 그러나 `MCCloudConfigAcceptAnyHTTPSCertificate` 구성을 활성화하면 서버 인증서 유효성 검사를 우회할 수 있지만, 페이로드의 암호화된 특성으로 인해 복호화 키 없이 일련 번호를 수정할 수 없습니다.
`cloudconfigurationd`와 같은 시스템 이진 파일에 Instrumentation을 적용하려면 macOS에서 System Integrity Protection (SIP)를 비활성화해야 합니다. SIP가 비활성화된 경우 LLDB와 같은 도구를 사용하여 시스템 프로세스에 연결하고 DEP API 상호 작용에 사용되는 일련 번호를 수정할 수 있습니다. 이 방법은 권한과 코드 서명의 복잡성을 피할 수 있기 때문에 선호됩니다.