The ASAN & UBSAN Installation successfully completes approximately 80% of attempted installations from macOS 12.2 or macOS 12.3 Beta. The HTTP Responses contain only a few bits of delta, likely causing the Error:
kernel: (AppleMobileFileIntegrity_research) static IOReturn AppleMobileFileIntegrityUserClient::isCdhashInTrustCache(OSObject *, void *, IOExternalMethodArguments *): Process 29 is checking if a cdhash is in the trust cache
kernel: (AppleMobileFileIntegrity_research) static IOReturn AppleMobileFileIntegrityUserClient::isCdhashInTrustCache(OSObject *, void *, IOExternalMethodArguments *): Returning IOReturn 0x0 to process 29
cryptexd: [com.apple.libcryptex:codex] <private>: openat: [2: No such file or directory]
kernel: (AppleMobileFileIntegrity_research) Invalid denylist
It is thought that __AppleMobileFileIntegrity_research__ possibly contains the functionality.
Version Info
iOS IPSW
15.4_19E5209h_Restore.ipsw
Darwin Image4 Validator Version 4.2.0: Sun Jan 16 21:08:12 PST 2022; root:AppleImage4-158.100.11~1565/AppleImage4/RELEASE_ARM64E
Host X86_64
Mon Feb 7 16:27:40 EST 2022
kern.version: Darwin Kernel Version 21.3.0: Wed Jan 5 21:37:58 PST 2022; root:xnu-8019.80.24~20/RELEASE_X86_64
kern.osversion: 21D49
kern.iossupportversion: 15.3
kern.osproductversion: 12.2
kern.osproductversioncompat: 10.16
udid name build BORD CHIP ECID
00008101-001418DA3CC0013A SRD0009 19E5209h 0xc 0x8101 0x1418da3cc0013a
00008030-001538D03C40012E SRD0037 19E5209h 0x4 0x8030 0x1538d03c40012e
Apple clang version 13.1.6 (clang-1316.0.19.2)
Target: x86_64-apple-darwin21.3.0
InstalledDir: /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
Darwin Cryptex Management Interface Version 2.0.0: Sun Dec 19 22:28:12 PST 2021; root:libcryptex_executables-169.80.2~9/cryptexctl/WEN_ETA_X86_64
machdep.cpu.brand: 0
machdep.cpu.brand_string: Intel(R) Core(TM) i7-8700B CPU @ 3.20GHz
System Integrity Protection status: disabled.
HOST T8101
Mon Feb 7 16:33:40 EST 2022
kern.version: Darwin Kernel Version 21.4.0: Tue Jan 18 13:02:08 PST 2022; root:xnu-8020.100.406.0.1~18/RELEASE_ARM64_T8101
kern.osversion: 21E5196i
kern.iossupportversion: 15.4
kern.osproductversioncompat: 10.16
kern.osproductversion: 12.3
kern.osproductversioncompat: 10.16
/Applications/Xcode-beta.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
udid name build BORD CHIP ECID
00008101-001418DA3CC0013A SRD0009 19E5209h 0xc 0x8101 0x1418da3cc0013a
00008030-001538D03C40012E SRD0037 19E5209h 0x4 0x8030 0x1538d03c40012e
Apple clang version 13.1.6 (clang-1316.0.19.2)
Target: arm64-apple-darwin21.4.0
InstalledDir: /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Darwin Cryptex Management Interface Version 2.0.0: Tue Jan 25 23:53:01 PST 2022; root:libcryptex_executables-170.100.20~29/cryptexctl/WEN_ETA_ARM64E
machdep.cpu.brand_string: Apple M1
System Integrity Protection status: disabled.
Problem Statement for unsuitable CT policy 0 for this platform/device, rejecting signature
When loading a Trust Cache that contains *SAN Dylibs, and occasionally debugserver, __AppleMobileFileIntegrity_research__ throws to Console Log:
unsuitable CT policy 0 for this platform/device, rejecting signature
Console Log for unsuitable CT policy 0 for this platform/device, rejecting signature
SUMMARY
Subject to Minor Revision. This issue appears infrequently when Unit Testing Pull Request https://github.com/apple/security-research-device/pull/42. It has been found that when using 15.4_19E5209h_Restore.ipsw for personalizing a cryptex, iPhone 11 or iPhone 12, with address sanitizer dylibs including libgmalloc.dylib, and possibly debugserver, when using Apple Feedback Makefile https://github.com/xsscx/srd/blob/main/SecurityResearchTools_21C39/example-cryptex/src/hello/Makefile that __AppleMobileFileIntegrity_research__ will occasionally Write to the Console Log:
UX
Reproduction with example-cryptex
Source Makefile https://github.com/xsscx/srd/blob/main/SecurityResearchTools_21C39/example-cryptex/src/hello/Makefile
Comment
The ASAN & UBSAN Installation successfully completes approximately 80% of attempted installations from macOS 12.2 or macOS 12.3 Beta. The HTTP Responses contain only a few bits of delta, likely causing the Error:
It is thought that __AppleMobileFileIntegrity_research__ possibly contains the functionality.
Version Info
iOS IPSW
Host X86_64
HOST T8101
Problem Statement for unsuitable CT policy 0 for this platform/device, rejecting signature
When loading a Trust Cache that contains *SAN Dylibs, and occasionally debugserver, __AppleMobileFileIntegrity_research__ throws to Console Log:
Console Log for unsuitable CT policy 0 for this platform/device, rejecting signature
cryptexctl -v9 -d9 -ldt install --variant=research --persist --print-info ./com.example.cryptex.cxbd.signed
Quick Repro Instructions
View the logs from the archive
Console Log for Good Cryptex Installation for *SAN Dylibs
Sysdiagnose
srd009-srd0037-github_issue_47-sysdiagnose_2022.02.07_15-37-14-0500_iPhone-OS_iPhone_19E5209h.zip uploaded to app.box.com on MON 7 FEB 2022 1543 EST
Request
Help is be appreciated isolating the Entitlements that are likely the cause(s) of the Console log message to increase to Successful Installation Rates for PR42 https://github.com/apple/security-research-device/pull/42.
Knowledgebase
Workaround
Reported: https://github.com/apple/security-research-device/issues/47