apple-data 1.0.607 → 1.0.608
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/apple_data/version.rb +1 -1
- data/share/img4.yaml +463 -386
- data/share/pki.yaml +288 -162
- data/share/terms.yaml +173 -169
- metadata +2 -2
data/share/img4.yaml
CHANGED
|
@@ -4,39 +4,51 @@ metadata:
|
|
|
4
4
|
credits:
|
|
5
5
|
types:
|
|
6
6
|
digest-object:
|
|
7
|
-
description: Digest Objects are Firmare or Other Hashable Datastreams.
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
description: Digest Objects are Firmare or Other Hashable Datastreams. They will
|
|
8
|
+
exist in NOR, Disk, or be received over USB. These objects will contain a `DGST`
|
|
9
|
+
value that is the cryptographic hash of the contents. They can contain additional
|
|
10
|
+
properties per object, some of which are standard and others that are object
|
|
11
|
+
specific.
|
|
12
12
|
common_properties:
|
|
13
|
-
ESEC: Effective Security Mode - The security mode after evaluating the chip
|
|
14
|
-
|
|
15
|
-
|
|
13
|
+
ESEC: Effective Security Mode - The security mode after evaluating the chip
|
|
14
|
+
and any demotion request
|
|
15
|
+
EPRO: Effective Production Mode - The peoduction mode after evaluating the chip
|
|
16
|
+
production and demotation request
|
|
17
|
+
EKEY: Effective Key Access - The effective access to teh SEP, used to protect
|
|
18
|
+
data during demotion
|
|
16
19
|
subtypes:
|
|
17
20
|
local-boot-object:
|
|
18
21
|
trust-measurement:
|
|
19
|
-
description: A trust measurement is requested from the processor to ensure
|
|
20
|
-
the boot flow has not changed since a prior time that measurement was
|
|
21
|
-
To date the trust measurement is commonly found on SEP firmware images.
|
|
22
|
+
description: A trust measurement is requested from the processor to ensure
|
|
23
|
+
that the boot flow has not changed since a prior time that measurement was
|
|
24
|
+
taken. To date the trust measurement is commonly found on SEP firmware images.
|
|
22
25
|
ssv-root-hash:
|
|
23
|
-
description: Root Hash values are used to validate the Signature of an APFS
|
|
24
|
-
volume or snapshot. They will be paired to a coresponding disk image. Some
|
|
25
|
-
are paired with `ssv-merkle-tree` which includes the metadata for the
|
|
26
|
+
description: Root Hash values are used to validate the Signature of an APFS
|
|
27
|
+
Signed volume or snapshot. They will be paired to a coresponding disk image. Some
|
|
28
|
+
also are paired with `ssv-merkle-tree` which includes the metadata for the
|
|
29
|
+
volume.
|
|
26
30
|
trust-cache:
|
|
27
31
|
img4-disk-image:
|
|
28
|
-
description: Disk images are often signed IMG4 payloads used for USB boot
|
|
29
|
-
arm64BaseSystem.dmg. IMG4 is used for smaller disk images that
|
|
30
|
-
validated "single shot" unlike larger disks which use SSV
|
|
32
|
+
description: Disk images are often signed IMG4 payloads used for USB boot
|
|
33
|
+
or as the arm64BaseSystem.dmg. IMG4 is used for smaller disk images that
|
|
34
|
+
can be entirely validated "single shot" unlike larger disks which use SSV
|
|
35
|
+
and validate on read.
|
|
31
36
|
img4_tags:
|
|
37
|
+
acdc:
|
|
38
|
+
description:
|
|
32
39
|
acfw:
|
|
33
40
|
description:
|
|
34
41
|
ache:
|
|
35
42
|
description:
|
|
36
43
|
acib:
|
|
37
44
|
description:
|
|
45
|
+
AcID:
|
|
46
|
+
description: Apple Account DSID
|
|
47
|
+
type: integer
|
|
48
|
+
acid:
|
|
38
49
|
aciw:
|
|
39
50
|
description:
|
|
51
|
+
ADCL:
|
|
40
52
|
ader:
|
|
41
53
|
description:
|
|
42
54
|
agfi:
|
|
@@ -44,9 +56,9 @@ img4_tags:
|
|
|
44
56
|
almo:
|
|
45
57
|
description: Some internal iBootable image. Unknown purpose
|
|
46
58
|
AMNM:
|
|
47
|
-
description: allow mix-n-match
|
|
48
|
-
|
|
49
|
-
|
|
59
|
+
description: allow mix-n-match When set to true, img4s can be any valid signed
|
|
60
|
+
version, allowing for unusual AP tickets where some components may be from a
|
|
61
|
+
prior verson
|
|
50
62
|
type: boolean
|
|
51
63
|
anef:
|
|
52
64
|
description: Apple Neural Engine Firmware
|
|
@@ -55,6 +67,7 @@ img4_tags:
|
|
|
55
67
|
- ManifestKey-DataCenter
|
|
56
68
|
anrd:
|
|
57
69
|
description:
|
|
70
|
+
ansf:
|
|
58
71
|
aofi:
|
|
59
72
|
description:
|
|
60
73
|
aopf:
|
|
@@ -71,64 +84,79 @@ img4_tags:
|
|
|
71
84
|
auac:
|
|
72
85
|
description:
|
|
73
86
|
aubt:
|
|
74
|
-
description:
|
|
87
|
+
description: Audio Boot Chime
|
|
75
88
|
augs:
|
|
76
|
-
description:
|
|
77
|
-
|
|
78
|
-
|
|
89
|
+
description: Auxiliary System Image Included in APTicket CA extensions, as well
|
|
90
|
+
as factory manifests. All cryptex manifests, and APTickets other then the root
|
|
91
|
+
APTicket (the one that is used directly from NOR) have this set to 1, indidcating
|
|
92
|
+
that it is an an addition or replacement to APTicket, but only if authroized. It
|
|
93
|
+
also seems to travel with `aubt` and `aupr`
|
|
79
94
|
roots:
|
|
80
|
-
|
|
81
|
-
|
|
95
|
+
- ExtraContent
|
|
96
|
+
- ManifestKey
|
|
82
97
|
aupr:
|
|
83
|
-
description:
|
|
98
|
+
description: Audio Power Attach Chime
|
|
99
|
+
auxh:
|
|
100
|
+
description: User Authorized Kext List Hash
|
|
101
|
+
context:
|
|
84
102
|
auxi:
|
|
85
|
-
title: Auxiliary
|
|
86
|
-
description:
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
into the LocalPolicy to avoid the potential for mixing and matching previously
|
|
91
|
-
system at boot time. If iBoot finds the auxi field
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
103
|
+
title: Auxiliary Image4 Manifest Hash (`auxi`)
|
|
104
|
+
description: 'After the system verifies that the UAKL hash matches what’s found
|
|
105
|
+
in the `auxp` field of the LocalPolicy, it requests that the AuxKC be signed
|
|
106
|
+
by the Secure Enclave processor application that’s responsible for LocalPolicy
|
|
107
|
+
signing. Next, an SHA384 hash of the AuxKC Image4 manifest signature is placed
|
|
108
|
+
into the LocalPolicy to avoid the potential for mixing and matching previously
|
|
109
|
+
signed AuxKCs to an operating system at boot time. If iBoot finds the auxi field
|
|
110
|
+
in the LocalPolicy, it attempts to load the AuxKC from storage and validate
|
|
111
|
+
its signature. It also verifies that the hash of the Image4 manifest attached
|
|
112
|
+
to the AuxKC matches the value found in the auxi field. If the AuxKC fails to
|
|
113
|
+
load for any reason, the system continues to boot without this boot object and
|
|
114
|
+
(so) without any third-party kexts loaded. The auxp field is a prerequisite
|
|
115
|
+
for setting the auxi field in the LocalPolicy. Users change the auxi value implicitly
|
|
116
|
+
when they change the UAKL by approving a kext from the Security & Privacy pane
|
|
117
|
+
in System Preferences.
|
|
118
|
+
|
|
119
|
+
'
|
|
120
|
+
type: digest-object
|
|
121
|
+
subtype: manifest
|
|
99
122
|
access:
|
|
100
123
|
write:
|
|
101
|
-
|
|
124
|
+
- macOS
|
|
102
125
|
auxk:
|
|
103
126
|
description: Auxiliary Kernel Cache
|
|
104
127
|
auxp:
|
|
105
|
-
title: Auxiliary
|
|
106
|
-
description:
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
128
|
+
title: Auxiliary Policy Hash (auxp)
|
|
129
|
+
description: 'The `auxp` is an SHA384 hash of the user-authorized kext list (UAKL)
|
|
130
|
+
policy. This is used at AuxKC generation time to help ensure that only user-authorized
|
|
131
|
+
kexts are included in the AuxKC. `smb2` is a prerequisite for setting this field.
|
|
132
|
+
Users change the `auxp` value implicitly when they change the UAKL by approving
|
|
133
|
+
a kext from the Security & Privacy pane in System Preferences.
|
|
134
|
+
|
|
135
|
+
'
|
|
111
136
|
type: binary
|
|
112
137
|
subtype: sha2-384
|
|
113
138
|
access:
|
|
114
139
|
write:
|
|
115
|
-
|
|
140
|
+
- macOS
|
|
116
141
|
auxr:
|
|
117
142
|
title: Auxiliary Kernel Collection (AuxKC) Receipt Hash (auxr)
|
|
118
|
-
description:
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
some kexts that can be used to break the user-kernel boundary may lead to decreased
|
|
123
|
-
such as an inability to use Apple Pay or play 4K and HDR content.
|
|
124
|
-
opt in to a more restrictive AuxKC inclusion.
|
|
125
|
-
field
|
|
126
|
-
the
|
|
143
|
+
description: 'The `auxr` is an SHA384 hash of the AuxKC receipt, which indicates
|
|
144
|
+
the exact set of kexts that were included into the AuxKC. The AuxKC receipt
|
|
145
|
+
can be a subset of the UAKL, because kexts can be excluded from the AuxKC even
|
|
146
|
+
if they’re user authorized if they’re known to be used for attacks. In addition,
|
|
147
|
+
some kexts that can be used to break the user-kernel boundary may lead to decreased
|
|
148
|
+
functionality, such as an inability to use Apple Pay or play 4K and HDR content.
|
|
149
|
+
Users who want these capabilities opt in to a more restrictive AuxKC inclusion.
|
|
150
|
+
The auxp field is a prerequisite for setting the auxr field in the LocalPolicy.
|
|
151
|
+
Users change the auxr value implicitly when they build a new AuxKC from the
|
|
152
|
+
Security & Privacy pane in System Preferences.
|
|
153
|
+
|
|
154
|
+
'
|
|
127
155
|
type: digest-object
|
|
128
156
|
subtype: sha2-384
|
|
129
157
|
access:
|
|
130
158
|
write:
|
|
131
|
-
|
|
159
|
+
- macOS
|
|
132
160
|
avef:
|
|
133
161
|
description: AV Encryption (DRM) Firmware
|
|
134
162
|
type: digest-object
|
|
@@ -140,18 +168,19 @@ img4_tags:
|
|
|
140
168
|
description: battery image 1
|
|
141
169
|
batf:
|
|
142
170
|
description: battery full image
|
|
171
|
+
batF:
|
|
143
172
|
BLDS:
|
|
144
173
|
description:
|
|
145
|
-
prid:
|
|
146
|
-
description: Encrypted Private Key / Private Key Info
|
|
147
174
|
bles:
|
|
148
175
|
description:
|
|
149
|
-
|
|
150
|
-
description:
|
|
151
|
-
|
|
152
|
-
recovery: true
|
|
176
|
+
BMac:
|
|
177
|
+
description: Bluetooth MAC Address
|
|
178
|
+
manifest: true
|
|
153
179
|
BNCH:
|
|
154
|
-
|
|
180
|
+
title: Boot Nonce Hash
|
|
181
|
+
description: Based on the values of com.apple.System.boot-nonces
|
|
182
|
+
type: nonce
|
|
183
|
+
subtype:
|
|
155
184
|
BORD:
|
|
156
185
|
description: |-
|
|
157
186
|
The board the chip is attached to. With iPhones/iPads this is the variation between device sizes (occasionally
|
|
@@ -161,15 +190,31 @@ img4_tags:
|
|
|
161
190
|
With the T2 this value is unique to all MacBooks with the T2.
|
|
162
191
|
type: integer
|
|
163
192
|
alias:
|
|
164
|
-
|
|
193
|
+
- board-id
|
|
165
194
|
bstc:
|
|
166
|
-
|
|
195
|
+
title: Base Sysetm Trust Cache
|
|
196
|
+
description: 'The Base System Trust Cache is the static trust cache (a file containing
|
|
197
|
+
a list of CDHashes that is to be trusted and executed at platform trust.) that
|
|
198
|
+
coresponds to the Base System (typically arm64BaseSystem.dmg).
|
|
199
|
+
|
|
200
|
+
'
|
|
167
201
|
type: digest-object
|
|
168
202
|
subtype: trust-cache
|
|
169
203
|
bsys:
|
|
170
|
-
|
|
204
|
+
title: Base System Root Hash
|
|
205
|
+
type: digest-object
|
|
206
|
+
subtype: ssv-root-hash
|
|
207
|
+
caos:
|
|
208
|
+
description:
|
|
209
|
+
type: digest-object
|
|
210
|
+
root:
|
|
211
|
+
- ExtraContent
|
|
212
|
+
casy:
|
|
213
|
+
description: App Cryptex SSV Root Hash
|
|
171
214
|
type: digest-object
|
|
172
215
|
subtype: ssv-root-hash
|
|
216
|
+
roots:
|
|
217
|
+
- ExtraContent
|
|
173
218
|
CEPO:
|
|
174
219
|
description: |-
|
|
175
220
|
Certificate/Chip Epoch. This is a unit of roll-forward time (monotonic) that allows for any security issues
|
|
@@ -177,17 +222,13 @@ img4_tags:
|
|
|
177
222
|
nullable: true
|
|
178
223
|
type: boolean
|
|
179
224
|
alias:
|
|
180
|
-
|
|
225
|
+
- chip-epoch
|
|
181
226
|
cfel:
|
|
182
227
|
description:
|
|
183
228
|
chg0:
|
|
184
229
|
description: Charging Image 0
|
|
185
230
|
type: digest-object
|
|
186
231
|
subtype: graphic
|
|
187
|
-
faic:
|
|
188
|
-
description:
|
|
189
|
-
type: integer
|
|
190
|
-
default: 0
|
|
191
232
|
chg1:
|
|
192
233
|
description: Charging Image 1
|
|
193
234
|
type: digest-object
|
|
@@ -197,34 +238,44 @@ img4_tags:
|
|
|
197
238
|
sharing the same GID key
|
|
198
239
|
type: integer
|
|
199
240
|
width: 2
|
|
200
|
-
nsph:
|
|
201
|
-
description: preboot splat manifest hash
|
|
202
241
|
CHMH:
|
|
203
|
-
|
|
242
|
+
title: Chained Manifest Hash
|
|
243
|
+
description: Appears in manfiest / APTickets where the ticket is chained from
|
|
244
|
+
another via `nish` or `nsph`.
|
|
245
|
+
ciof:
|
|
204
246
|
cker:
|
|
205
247
|
description:
|
|
206
248
|
ckih:
|
|
207
249
|
description:
|
|
250
|
+
clas:
|
|
251
|
+
description: Class for Key / Object - Found in FDR objects
|
|
252
|
+
examples:
|
|
253
|
+
roots:
|
|
254
|
+
- ExtraContent
|
|
255
|
+
CLHS:
|
|
256
|
+
clid:
|
|
208
257
|
cmsv:
|
|
209
258
|
description:
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
259
|
+
cnch:
|
|
260
|
+
roots:
|
|
261
|
+
- ExtraContent
|
|
213
262
|
coih:
|
|
214
263
|
title: CustomOS Image4 Manifest Hash (coih)
|
|
215
|
-
description:
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
264
|
+
description: 'The `coih` is an SHA384 hash of CustomOS Image4 manifest. The payload
|
|
265
|
+
for that manifest is used by iBoot (instead of the XNU kernel) to transfer control.
|
|
266
|
+
Users change the `coih` value implicitly when they use the `kmutil` configure-boot
|
|
267
|
+
command-line tool in 1TR.
|
|
268
|
+
|
|
269
|
+
'
|
|
219
270
|
type: digest-object
|
|
220
271
|
subtype: IM4M
|
|
221
272
|
access:
|
|
222
273
|
write:
|
|
223
|
-
|
|
274
|
+
- 1TR
|
|
224
275
|
CPRO:
|
|
225
276
|
description: Chip promotion fuse value (what is burned in)
|
|
226
277
|
alias:
|
|
227
|
-
|
|
278
|
+
- certificate-production-status
|
|
228
279
|
nullable: true
|
|
229
280
|
type: boolean
|
|
230
281
|
CSEC:
|
|
@@ -232,19 +283,10 @@ img4_tags:
|
|
|
232
283
|
type: boolean
|
|
233
284
|
nullable: true
|
|
234
285
|
alias:
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
description: Install / Restore SSV Root Hash
|
|
238
|
-
type: digest-object
|
|
239
|
-
subtype: ssv-root-hash
|
|
240
|
-
dali:
|
|
241
|
-
description:
|
|
242
|
-
data:
|
|
286
|
+
- certificate-security-mode
|
|
287
|
+
csos:
|
|
243
288
|
description:
|
|
244
|
-
casy:
|
|
245
|
-
description: App Cryptex SSV Root Hash
|
|
246
289
|
type: digest-object
|
|
247
|
-
subtype: ssv-root-hash
|
|
248
290
|
roots:
|
|
249
291
|
- ExtraContent
|
|
250
292
|
cssy:
|
|
@@ -253,34 +295,28 @@ img4_tags:
|
|
|
253
295
|
subtype: ssv-root-hash
|
|
254
296
|
roots:
|
|
255
297
|
- ExtraContent
|
|
298
|
+
csys:
|
|
299
|
+
description: Install / Restore SSV Root Hash
|
|
300
|
+
type: digest-object
|
|
301
|
+
subtype: ssv-root-hash
|
|
302
|
+
dali:
|
|
303
|
+
description:
|
|
304
|
+
data:
|
|
305
|
+
description:
|
|
306
|
+
dcp2:
|
|
256
307
|
DGST:
|
|
257
308
|
description: payload digest
|
|
258
309
|
diag:
|
|
259
310
|
description:
|
|
260
|
-
trca:
|
|
261
|
-
description:
|
|
262
|
-
type: digest-object
|
|
263
|
-
roots:
|
|
264
|
-
- ExtraContent
|
|
265
|
-
csos:
|
|
266
|
-
description:
|
|
267
|
-
type: digest-object
|
|
268
|
-
roots:
|
|
269
|
-
- ExtraContent
|
|
270
|
-
trcs:
|
|
271
|
-
description:
|
|
272
|
-
type: digest-object
|
|
273
|
-
roots:
|
|
274
|
-
- ExtraContent
|
|
275
311
|
disk:
|
|
276
312
|
description:
|
|
277
313
|
DPRO:
|
|
278
|
-
description: Demote from Production Request
|
|
279
|
-
|
|
314
|
+
description: Demote from Production Request Value is used by TSS sever to issue
|
|
315
|
+
EPRO values, or effective AP prodctuion state.
|
|
280
316
|
DSEC:
|
|
281
|
-
description: Demote from Secure Request
|
|
282
|
-
|
|
283
|
-
|
|
317
|
+
description: Demote from Secure Request Value is used by TSS server to issue ESEC
|
|
318
|
+
values, or effective AP Security Mode should the requester be authorized. These
|
|
319
|
+
requests are not available to consumers, only to Apple Internal.
|
|
284
320
|
dtre:
|
|
285
321
|
description: device tree
|
|
286
322
|
type: digest-object
|
|
@@ -290,6 +326,7 @@ img4_tags:
|
|
|
290
326
|
type: digest-object
|
|
291
327
|
subtype: device-tree
|
|
292
328
|
recovery: true
|
|
329
|
+
dven:
|
|
293
330
|
ECID:
|
|
294
331
|
description: Exclusive chip identifier. This is burned into an eFuse at time
|
|
295
332
|
of manufacture and unique across all devices sharing the same CHIP
|
|
@@ -313,119 +350,57 @@ img4_tags:
|
|
|
313
350
|
nullable: false
|
|
314
351
|
type: boolean
|
|
315
352
|
EPRO:
|
|
316
|
-
description: Effective chip promotion / demotion state (if CPFM 03 this must be
|
|
353
|
+
description: Effective chip promotion / demotion state (if CPFM 03 this must be
|
|
354
|
+
0 to set ESEC)
|
|
317
355
|
alias:
|
|
318
|
-
|
|
356
|
+
- effective-production-status-ap
|
|
319
357
|
nullable: false
|
|
320
358
|
type: boolean
|
|
321
|
-
secb:
|
|
322
|
-
description: Sets a security value such as `trst` or the FDR signing trust object. "security blob?"
|
|
323
359
|
esca:
|
|
324
360
|
description:
|
|
325
|
-
hrlp:
|
|
326
|
-
title: Has Secure Enclave Signed recoveryOS Local Policy (hrlp)
|
|
327
|
-
description: >
|
|
328
|
-
The `hrlp` indicates whether or not the `prot` value is the measurement of a Secure Enclave–signed
|
|
329
|
-
recoveryOS LocalPolicy. If not, then the recoveryOS LocalPolicy is signed by the Apple online signing server,
|
|
330
|
-
which signs things such as macOS Image4 files.
|
|
331
|
-
type: boolean
|
|
332
|
-
access:
|
|
333
|
-
write:
|
|
334
|
-
- 1TR
|
|
335
|
-
- recoveryOS
|
|
336
|
-
- macOS
|
|
337
361
|
esdm:
|
|
338
362
|
description: Extended Security Domain fuses
|
|
339
363
|
type: integer
|
|
340
364
|
alias:
|
|
341
|
-
|
|
342
|
-
styp:
|
|
343
|
-
description: Crytpex Subtype
|
|
344
|
-
type: u32
|
|
345
|
-
alias:
|
|
346
|
-
- cryptex subtype
|
|
347
|
-
roots:
|
|
348
|
-
- ExtraContent
|
|
349
|
-
acid:
|
|
350
|
-
stID:
|
|
351
|
-
description: Station IDentifier
|
|
352
|
-
AcID:
|
|
353
|
-
description: Apple Account DSID
|
|
354
|
-
type: integer
|
|
355
|
-
WSKU:
|
|
356
|
-
description: Wireless SKU
|
|
357
|
-
WMac:
|
|
358
|
-
description: Wireless MAC Address
|
|
359
|
-
TMac:
|
|
360
|
-
description: Thunderbolt MAC Address
|
|
361
|
-
manifest: true
|
|
362
|
-
BMac:
|
|
363
|
-
description: Bluetooth MAC Address
|
|
364
|
-
manifest: true
|
|
365
|
-
SrNm:
|
|
366
|
-
description: Unit Serial Number
|
|
367
|
-
manifest: true
|
|
368
|
-
ptrp:
|
|
369
|
-
snuf:
|
|
370
|
-
description: Staged next update firmware?
|
|
371
|
-
Regn:
|
|
372
|
-
description: Region Code
|
|
373
|
-
example: LL/A
|
|
374
|
-
type: string
|
|
375
|
-
manifest: true
|
|
376
|
-
Mod#:
|
|
377
|
-
CLHS:
|
|
378
|
-
HmCA:
|
|
379
|
-
FSCl:
|
|
380
|
-
ADCL:
|
|
381
|
-
clid:
|
|
382
|
-
hop0:
|
|
383
|
-
oppd:
|
|
384
|
-
description: Unknown, used by `stg1`/`sepi` - sha384 hash sized
|
|
365
|
+
- esdm-fuses
|
|
385
366
|
ESEC:
|
|
386
367
|
description: Effective security mode
|
|
387
368
|
alias:
|
|
388
|
-
|
|
369
|
+
- effective-security-mode-ap
|
|
389
370
|
euou:
|
|
390
371
|
description: engineering use-only unit
|
|
391
|
-
|
|
392
|
-
description:
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
- ExtraContent
|
|
396
|
-
psmh:
|
|
397
|
-
description: previous stage manifest hash
|
|
398
|
-
|
|
372
|
+
faic:
|
|
373
|
+
description:
|
|
374
|
+
type: integer
|
|
375
|
+
default: 0
|
|
399
376
|
fchp:
|
|
400
377
|
description: Cryptex1,ChipID - Mask
|
|
401
378
|
roots:
|
|
402
379
|
- ExtraContent
|
|
403
380
|
fdrs:
|
|
404
381
|
description:
|
|
405
|
-
rvok:
|
|
406
|
-
description: Trust object revocation list
|
|
407
|
-
trpk:
|
|
408
|
-
description: Trust public keys
|
|
409
|
-
rssl:
|
|
410
|
-
description: The valid CA used for secure communications with the FDR server to obtain the FDR objects. This
|
|
411
|
-
differs from the `trst` object as `rssl` is in transit and `trst` is at rest.
|
|
412
382
|
fdrt:
|
|
413
383
|
description:
|
|
384
|
+
fgpt:
|
|
385
|
+
description: factory glob al pre-release trust
|
|
414
386
|
file:
|
|
415
387
|
description:
|
|
416
388
|
fpgt:
|
|
417
389
|
description:
|
|
390
|
+
FSCl:
|
|
418
391
|
ftab:
|
|
419
|
-
description:
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
392
|
+
description: 'Factory Trust - Auto Boot FTAB images (used for devices such as
|
|
393
|
+
AirPods, etc) are "hacktivated" or pre-APTicket''ed devices as they lack either
|
|
394
|
+
a restore connection, or persistet memory. Common early usage of this was the
|
|
395
|
+
Heywire dongles used for video conversion on the Mac. It was simplest for the
|
|
396
|
+
device to lack NAND and simply receive the firmware from a host on powerup. FTAB
|
|
397
|
+
files are fully ready to run blobs often including RTKit OS based memory images.
|
|
398
|
+
|
|
399
|
+
'
|
|
426
400
|
ftap:
|
|
427
|
-
description:
|
|
428
|
-
|
|
401
|
+
description: 'Factory Trust - Application Processor
|
|
402
|
+
|
|
403
|
+
'
|
|
429
404
|
type: hash
|
|
430
405
|
ftot:
|
|
431
406
|
description: Factory Trust - Other
|
|
@@ -440,6 +415,7 @@ img4_tags:
|
|
|
440
415
|
description:
|
|
441
416
|
glyc:
|
|
442
417
|
description: Gyroscope Calibration
|
|
418
|
+
glyP:
|
|
443
419
|
glyp:
|
|
444
420
|
description:
|
|
445
421
|
hash:
|
|
@@ -448,46 +424,41 @@ img4_tags:
|
|
|
448
424
|
description:
|
|
449
425
|
hime:
|
|
450
426
|
description:
|
|
427
|
+
HmCA:
|
|
451
428
|
hmmr:
|
|
452
429
|
description:
|
|
453
430
|
homr:
|
|
454
431
|
description:
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
464
|
-
|
|
465
|
-
|
|
432
|
+
hop0:
|
|
433
|
+
hrlp:
|
|
434
|
+
title: Has Secure Enclave Signed recoveryOS Local Policy (hrlp)
|
|
435
|
+
description: 'The `hrlp` indicates whether or not the `prot` value is the measurement
|
|
436
|
+
of a Secure Enclave–signed recoveryOS LocalPolicy. If not, then the recoveryOS
|
|
437
|
+
LocalPolicy is signed by the Apple online signing server, which signs things
|
|
438
|
+
such as macOS Image4 files.
|
|
439
|
+
|
|
440
|
+
'
|
|
441
|
+
type: boolean
|
|
442
|
+
access:
|
|
443
|
+
write:
|
|
444
|
+
- 1TR
|
|
445
|
+
- recoveryOS
|
|
446
|
+
- macOS
|
|
466
447
|
hypr:
|
|
467
448
|
description: Hypervisor
|
|
449
|
+
ibd1:
|
|
450
|
+
description: iBoot Data Stage 1
|
|
451
|
+
ibdt:
|
|
452
|
+
description: iBoot Data
|
|
468
453
|
iBEC:
|
|
469
454
|
description: iBoot Epoch Change
|
|
470
455
|
ibot:
|
|
471
456
|
description: iBoot
|
|
472
|
-
ibdt:
|
|
473
|
-
description: iBoot Data
|
|
474
|
-
ibd1:
|
|
475
|
-
description: iBoot Data Stage 1
|
|
476
|
-
glyP:
|
|
477
457
|
ibss:
|
|
478
|
-
dven:
|
|
479
|
-
dcp2:
|
|
480
|
-
ciof:
|
|
481
|
-
batF:
|
|
482
|
-
ansf:
|
|
483
|
-
rfcg:
|
|
484
|
-
type: boolean
|
|
485
458
|
iBSS:
|
|
486
459
|
description: iBoot Second Stage
|
|
487
460
|
ienv:
|
|
488
461
|
description:
|
|
489
|
-
LLB:
|
|
490
|
-
description: Low Level iBoot
|
|
491
462
|
IM4M:
|
|
492
463
|
description:
|
|
493
464
|
IM4P:
|
|
@@ -496,6 +467,8 @@ img4_tags:
|
|
|
496
467
|
description:
|
|
497
468
|
IMG4:
|
|
498
469
|
description:
|
|
470
|
+
inst:
|
|
471
|
+
descryption: The key or file to install
|
|
499
472
|
ipdf:
|
|
500
473
|
description:
|
|
501
474
|
isor:
|
|
@@ -516,84 +489,78 @@ img4_tags:
|
|
|
516
489
|
description:
|
|
517
490
|
krnl:
|
|
518
491
|
description: Kernel
|
|
519
|
-
acdc:
|
|
520
|
-
description:
|
|
521
492
|
kuid:
|
|
522
493
|
title: Key encryption key (KEK) Group UUID (kuid)
|
|
523
|
-
description:
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
494
|
+
description: 'The kuid indicates the volume that was booted. The key encryption
|
|
495
|
+
key has typically been used for Data Protection. For each LocalPolicy, it’s
|
|
496
|
+
used to protect the LocalPolicy signing key. The kuid is set by the user implicitly
|
|
497
|
+
when creating a new operating system install.
|
|
498
|
+
|
|
499
|
+
'
|
|
527
500
|
type: binary
|
|
528
501
|
subtype: sha2-384
|
|
529
502
|
access:
|
|
530
503
|
write:
|
|
531
|
-
|
|
532
|
-
|
|
533
|
-
|
|
504
|
+
- 1TR
|
|
505
|
+
- recoveryOS
|
|
506
|
+
- macOS
|
|
534
507
|
lamo:
|
|
535
508
|
description:
|
|
536
509
|
lckr:
|
|
537
510
|
description:
|
|
511
|
+
LLB:
|
|
512
|
+
description: Low Level iBoot
|
|
538
513
|
LNCH:
|
|
539
514
|
description:
|
|
540
515
|
lobo:
|
|
541
|
-
description: Local Boot Object. Indicates that the object is to be used as the
|
|
542
|
-
and not provided by the server for remote / DFU
|
|
516
|
+
description: Local Boot Object. Indicates that the object is to be used as the
|
|
517
|
+
target of a local boot only and not provided by the server for remote / DFU
|
|
518
|
+
boots.
|
|
543
519
|
logo:
|
|
544
520
|
description: Apple logo image
|
|
545
521
|
love:
|
|
546
|
-
title:
|
|
547
|
-
description:
|
|
548
|
-
|
|
549
|
-
|
|
522
|
+
title: Long Operating System Version (love)
|
|
523
|
+
description: 'The love indicates the OS version that the LocalPolicy is created
|
|
524
|
+
for. The version is obtained from the next state manifest during LocalPolicy
|
|
525
|
+
creation and is used to enforce recoveryOS pairing restrictions.
|
|
526
|
+
|
|
527
|
+
'
|
|
550
528
|
type: string
|
|
551
|
-
example:
|
|
529
|
+
example: 21.3.66.0.0,0
|
|
552
530
|
access:
|
|
553
531
|
write:
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
roots:
|
|
558
|
-
- ManifestKey-DataCenter
|
|
559
|
-
prtp:
|
|
560
|
-
description: Product ID String
|
|
561
|
-
type: string
|
|
562
|
-
example: iPhone16,2
|
|
563
|
-
roots:
|
|
564
|
-
- ManifestKey-DataCenter
|
|
565
|
-
sdkp:
|
|
566
|
-
description: SDK for Product
|
|
567
|
-
type: string
|
|
532
|
+
- 1TR
|
|
533
|
+
- recoveryOS
|
|
534
|
+
- macOS
|
|
568
535
|
roots:
|
|
569
536
|
- ManifestKey-DataCenter
|
|
570
|
-
values:
|
|
571
|
-
- iphoneos
|
|
572
|
-
- macos
|
|
573
537
|
lphp:
|
|
574
538
|
description:
|
|
575
|
-
mspr:
|
|
576
539
|
lpnh:
|
|
577
540
|
title: LocalPolicy Nonce Hash (lpnh)
|
|
578
|
-
description:
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
would need to place a value into the Secure Storage Component, which
|
|
584
|
-
found in the LocalPolicy they want to replay.
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
|
|
588
|
-
|
|
589
|
-
|
|
541
|
+
description: 'The lpnh is used for anti-replay of the LocalPolicy. This is an
|
|
542
|
+
SHA384 hash of the LocalPolicy Nonce (LPN), which is stored in the Secure Storage
|
|
543
|
+
Component and accessible using the Secure Enclave Boot ROM or Secure Enclave.
|
|
544
|
+
The raw nonce is never visible to the Application Processor, only to the sepOS.
|
|
545
|
+
An attacker wanting to convince LLB that a previous LocalPolicy they had captured
|
|
546
|
+
was valid would need to place a value into the Secure Storage Component, which
|
|
547
|
+
hashes to the same lpnh value found in the LocalPolicy they want to replay.
|
|
548
|
+
Normally there is a single LPN valid on the system—except during software updates,
|
|
549
|
+
when two are simultaneously valid—to allow for the possibility of falling back
|
|
550
|
+
to booting the old software in the event of an update error. When any LocalPolicy
|
|
551
|
+
for any operating system is changed, all policies are re-signed with the new
|
|
552
|
+
lpnh value corresponding to the new LPN found in the Secure Storage Component.
|
|
553
|
+
This change happens when the user changes security settings or creates new operating
|
|
554
|
+
systems with a new LocalPolicy for each.
|
|
555
|
+
|
|
556
|
+
'
|
|
590
557
|
type: binary
|
|
591
558
|
subtype: sha2-384
|
|
592
559
|
access:
|
|
593
560
|
write:
|
|
594
|
-
|
|
595
|
-
|
|
596
|
-
|
|
561
|
+
- 1TR
|
|
562
|
+
- recoveryOS
|
|
563
|
+
- macOS
|
|
597
564
|
lpol:
|
|
598
565
|
description: Local Policy
|
|
599
566
|
ltrs:
|
|
@@ -616,29 +583,70 @@ img4_tags:
|
|
|
616
583
|
description:
|
|
617
584
|
mmsv:
|
|
618
585
|
description:
|
|
586
|
+
Mod#:
|
|
619
587
|
mpro:
|
|
620
588
|
description:
|
|
621
589
|
msec:
|
|
622
590
|
description:
|
|
591
|
+
mspr:
|
|
623
592
|
msys:
|
|
624
|
-
description:
|
|
593
|
+
description: 'System Volume Cannonical Metadata Contains a Merkle Tree of the
|
|
594
|
+
System Volume. The Merkle-Tree is used to verify Signed System Volume, in a
|
|
595
|
+
similar way to a Git repository, where every file is included in the tree of
|
|
596
|
+
the folder and so on up to the root node. The root node is validated against
|
|
597
|
+
the coresponding `root_hash`. The inclusion of the merkle tree allows for discovery
|
|
598
|
+
of where the system volume''s data is broken, as the root_hash can only tell
|
|
599
|
+
you if it is broken.
|
|
600
|
+
|
|
601
|
+
'
|
|
625
602
|
mtfw:
|
|
626
603
|
description:
|
|
604
|
+
mtpf:
|
|
627
605
|
name:
|
|
628
606
|
description:
|
|
607
|
+
ndom:
|
|
608
|
+
roots:
|
|
609
|
+
- ExtraContent
|
|
610
|
+
nish:
|
|
611
|
+
title: Next Stage Image4 Manifest Hash (nsih)
|
|
612
|
+
description: 'The nsih field represents an SHA384 hash of the Image4 manifest
|
|
613
|
+
data structure that describes the booted macOS. The macOS Image4 manifest contains
|
|
614
|
+
measurements for all the boot objects—such as iBoot, the static trust cache,
|
|
615
|
+
device tree, Boot Kernel Collection, and signed system volume (SSV) volume root
|
|
616
|
+
hash. When LLB is directed to boot a given macOS, it’s designed to ensure that
|
|
617
|
+
the hash of the macOS Image4 manifest attached to iBoot matches what’s captured
|
|
618
|
+
in the nsih field of the LocalPolicy. In this way, the nsih captures the user
|
|
619
|
+
intention of what operating system the user has created a LocalPolicy for. Users
|
|
620
|
+
change the nsih value implicitly when they perform a software update.
|
|
621
|
+
|
|
622
|
+
'
|
|
623
|
+
type: binary
|
|
624
|
+
subtype: sha2-384
|
|
625
|
+
context:
|
|
626
|
+
lpol:
|
|
627
|
+
access:
|
|
628
|
+
write:
|
|
629
|
+
- 1TR
|
|
630
|
+
- recoveryOS
|
|
631
|
+
- macOS
|
|
629
632
|
nrde:
|
|
630
633
|
description:
|
|
631
634
|
nsih:
|
|
632
635
|
description: Next Stage Image Hash
|
|
636
|
+
nsph:
|
|
637
|
+
description: Next Stage preboot splat manifest hash
|
|
633
638
|
nsrv:
|
|
634
639
|
description:
|
|
635
640
|
OBJP:
|
|
636
|
-
description: Object Properties - Values that may be assigned per "object" (firmawres)
|
|
641
|
+
description: Object Properties - Values that may be assigned per "object" (firmawres)
|
|
642
|
+
that contain a `DGST`
|
|
637
643
|
type: sequence
|
|
638
644
|
omer:
|
|
639
645
|
description:
|
|
640
646
|
ooth:
|
|
641
647
|
description:
|
|
648
|
+
oppd:
|
|
649
|
+
description: Unknown, used by `stg1`/`sepi` - sha384 hash sized
|
|
642
650
|
osev:
|
|
643
651
|
description:
|
|
644
652
|
osrd:
|
|
@@ -647,6 +655,14 @@ img4_tags:
|
|
|
647
655
|
description:
|
|
648
656
|
owns:
|
|
649
657
|
description:
|
|
658
|
+
pave:
|
|
659
|
+
description: 'Pre-authorization Version (XNU) The version of a pre-authorized
|
|
660
|
+
Cryptex.
|
|
661
|
+
|
|
662
|
+
'
|
|
663
|
+
type: string
|
|
664
|
+
roots:
|
|
665
|
+
- ExtraContent
|
|
650
666
|
PAYP:
|
|
651
667
|
description:
|
|
652
668
|
pcrp:
|
|
@@ -667,24 +683,48 @@ img4_tags:
|
|
|
667
683
|
subtype:
|
|
668
684
|
pndp:
|
|
669
685
|
description:
|
|
686
|
+
prid:
|
|
687
|
+
description: Encrypted Private Key / Private Key Info
|
|
670
688
|
prot:
|
|
671
689
|
title: Paired recoveryOS Trusted Boot Policy Measurement (prot)
|
|
672
|
-
description:
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
macOS LocalPolicy, provides a pairing to indicate the recoveryOS LocalPolicy
|
|
677
|
-
macOS LocalPolicy.
|
|
690
|
+
description: 'A paired recoveryOS Trusted Boot Policy Measurement (TBPM) is a
|
|
691
|
+
special iterative SHA384 hash calculation over the Image4 manifest of a LocalPolicy,
|
|
692
|
+
excluding nonces, in order to give a consistent measurement over time (because
|
|
693
|
+
nonces like lpnh are frequently updated). The prot field, which is found only
|
|
694
|
+
in each macOS LocalPolicy, provides a pairing to indicate the recoveryOS LocalPolicy
|
|
695
|
+
that corresponds to the macOS LocalPolicy.
|
|
696
|
+
|
|
697
|
+
'
|
|
678
698
|
type: digest-object
|
|
679
699
|
subtype: trust-measurement
|
|
680
700
|
access:
|
|
681
701
|
write:
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
702
|
+
- 1TR
|
|
703
|
+
- recoveryOS
|
|
704
|
+
- macOS
|
|
705
|
+
prtp:
|
|
706
|
+
description: Product Type String
|
|
707
|
+
type: string
|
|
708
|
+
example: iPhone16,2
|
|
709
|
+
roots:
|
|
710
|
+
- ManifestKey-DataCenter
|
|
711
|
+
psmh:
|
|
712
|
+
description: previous stage manifest hash
|
|
713
|
+
ptrp:
|
|
714
|
+
rans:
|
|
715
|
+
description: Restore Apple NAND Storage Firmware
|
|
716
|
+
type: digest-object
|
|
685
717
|
rbmt:
|
|
686
718
|
description:
|
|
687
|
-
|
|
719
|
+
rcfg:
|
|
720
|
+
description: 'Appears in certificates issues by factory such as `T6031-SDOM1-TssLive-ManifestKey-RevA-Factory`.
|
|
721
|
+
Potentially indicates that the policy is for a recovery boot only.
|
|
722
|
+
|
|
723
|
+
'
|
|
724
|
+
type: boolean
|
|
725
|
+
rcio:
|
|
726
|
+
description: Restore CIO
|
|
727
|
+
rdcp:
|
|
688
728
|
rddg:
|
|
689
729
|
description:
|
|
690
730
|
rdsk:
|
|
@@ -693,16 +733,17 @@ img4_tags:
|
|
|
693
733
|
description:
|
|
694
734
|
recm:
|
|
695
735
|
description:
|
|
696
|
-
|
|
697
|
-
description:
|
|
698
|
-
|
|
699
|
-
|
|
736
|
+
Regn:
|
|
737
|
+
description: Region Code
|
|
738
|
+
example: LL/A
|
|
739
|
+
type: string
|
|
740
|
+
manifest: true
|
|
741
|
+
rfcg:
|
|
700
742
|
type: boolean
|
|
701
743
|
rfta:
|
|
702
744
|
description:
|
|
703
745
|
rfts:
|
|
704
746
|
description:
|
|
705
|
-
rdcp:
|
|
706
747
|
rkrn:
|
|
707
748
|
description: restore kernel
|
|
708
749
|
rlgo:
|
|
@@ -714,78 +755,45 @@ img4_tags:
|
|
|
714
755
|
type: boolean
|
|
715
756
|
ronh:
|
|
716
757
|
title: recoveryOS Nonce Hash (ronh)
|
|
717
|
-
description:
|
|
718
|
-
|
|
719
|
-
|
|
720
|
-
|
|
721
|
-
|
|
722
|
-
Secure Storage Component), while still leaving the system recoveryOS bootable.
|
|
723
|
-
operating systems can be reenabled when the system owner proves
|
|
724
|
-
putting in their iCloud password used for the
|
|
725
|
-
|
|
758
|
+
description: 'The ronh behaves the same way as the lpnh, but is found exclusively
|
|
759
|
+
in the LocalPolicy for system recoveryOS. It’s updated when the system recoveryOS
|
|
760
|
+
is updated, such as on software updates. A separate nonce from the lpnh and
|
|
761
|
+
rpnh is used so that when a device is put into a disabled state by Find My,
|
|
762
|
+
existing operating systems can be disabled (by removing their LPN and RPN from
|
|
763
|
+
the Secure Storage Component), while still leaving the system recoveryOS bootable.
|
|
764
|
+
In this way, the operating systems can be reenabled when the system owner proves
|
|
765
|
+
their control over the system by putting in their iCloud password used for the
|
|
766
|
+
Find My account. This change happens when a user updates the system recoveryOS
|
|
767
|
+
or creates new operating systems.
|
|
768
|
+
|
|
769
|
+
'
|
|
726
770
|
type: binary
|
|
727
771
|
subtype: sha2-384
|
|
728
772
|
access:
|
|
729
773
|
write:
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
|
|
774
|
+
- 1TR
|
|
775
|
+
- recoveryOS
|
|
776
|
+
- macOS
|
|
733
777
|
rosi:
|
|
734
778
|
description:
|
|
735
|
-
nish:
|
|
736
|
-
title: Next Stage Image4 Manifest Hash (nsih)
|
|
737
|
-
description: >
|
|
738
|
-
The nsih field represents an SHA384 hash of the Image4 manifest data structure that describes the booted
|
|
739
|
-
macOS. The macOS Image4 manifest contains measurements for all the boot objects—such as iBoot, the static
|
|
740
|
-
trust cache, device tree, Boot Kernel Collection, and signed system volume (SSV) volume root hash. When
|
|
741
|
-
LLB is directed to boot a given macOS, it’s designed to ensure that the hash of the macOS Image4 manifest
|
|
742
|
-
attached to iBoot matches what’s captured in the nsih field of the LocalPolicy. In this way, the nsih
|
|
743
|
-
captures the user intention of what operating system the user has created a LocalPolicy for. Users
|
|
744
|
-
change the nsih value implicitly when they perform a software update.
|
|
745
|
-
type: binary
|
|
746
|
-
subtype: sha2-384
|
|
747
|
-
context:
|
|
748
|
-
lpol:
|
|
749
|
-
access:
|
|
750
|
-
write:
|
|
751
|
-
- 1TR
|
|
752
|
-
- recoveryOS
|
|
753
|
-
- macOS
|
|
754
|
-
spih:
|
|
755
|
-
description: Cryptex1 Image4 Hash
|
|
756
|
-
stng:
|
|
757
|
-
description: Cryptex1 Generation / Cryptex type?
|
|
758
|
-
auxh:
|
|
759
|
-
description: User Authorized Kext List Hash
|
|
760
|
-
context:
|
|
761
779
|
rpnh:
|
|
762
780
|
title: Remote Policy Nonce Hash (rpnh)
|
|
763
|
-
description:
|
|
764
|
-
|
|
765
|
-
|
|
766
|
-
|
|
781
|
+
description: 'The rpnh behaves the same way as the lpnh but is updated only when
|
|
782
|
+
the remote policy is updated, such as when changing the state of Find My enrollment.
|
|
783
|
+
This change happens when the user changes the state of Find My on their Mac.
|
|
784
|
+
|
|
785
|
+
'
|
|
767
786
|
type: binary
|
|
768
787
|
subtype: sha2-384
|
|
769
788
|
access:
|
|
770
789
|
write:
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
RSCH:
|
|
775
|
-
description: Research mode
|
|
776
|
-
rcio:
|
|
777
|
-
description: Restore CIO
|
|
778
|
-
fgpt:
|
|
779
|
-
description: factory glob al pre-release trust
|
|
780
|
-
UDID:
|
|
781
|
-
description: universal device identifier
|
|
790
|
+
- 1TR
|
|
791
|
+
- recoveryOS
|
|
792
|
+
- macOS
|
|
782
793
|
rsch:
|
|
783
794
|
description: research mode
|
|
784
|
-
|
|
785
|
-
description:
|
|
786
|
-
type: string
|
|
787
|
-
roots:
|
|
788
|
-
- ExtraContent
|
|
795
|
+
RSCH:
|
|
796
|
+
description: Research mode
|
|
789
797
|
rsep:
|
|
790
798
|
description: Restore SEP Image, paired with oppd/tbms
|
|
791
799
|
type: string
|
|
@@ -798,12 +806,31 @@ img4_tags:
|
|
|
798
806
|
description:
|
|
799
807
|
rso3:
|
|
800
808
|
description:
|
|
809
|
+
rssl:
|
|
810
|
+
description: The valid CA used for secure communications with the FDR server to
|
|
811
|
+
obtain the FDR objects. This differs from the `trst` object as `rssl` is in
|
|
812
|
+
transit and `trst` is at rest.
|
|
813
|
+
rtmu:
|
|
814
|
+
description: Restore TMU for AP
|
|
815
|
+
type: digest-object
|
|
816
|
+
firmware: true
|
|
817
|
+
recovery: true
|
|
801
818
|
rtpf:
|
|
802
819
|
description:
|
|
803
820
|
rtsc:
|
|
804
821
|
description:
|
|
822
|
+
rvok:
|
|
823
|
+
description: Trust object revocation list
|
|
805
824
|
scef:
|
|
806
825
|
description:
|
|
826
|
+
sdkp:
|
|
827
|
+
description: SDK Platform
|
|
828
|
+
type: string
|
|
829
|
+
roots:
|
|
830
|
+
- ManifestKey-DataCenter
|
|
831
|
+
values:
|
|
832
|
+
- iphoneos
|
|
833
|
+
- macos
|
|
807
834
|
SDOM:
|
|
808
835
|
description: |-
|
|
809
836
|
Security domain, or which set of certificates govern device security.
|
|
@@ -812,15 +839,18 @@ img4_tags:
|
|
|
812
839
|
0x01 - Main Production certificates
|
|
813
840
|
width: 2
|
|
814
841
|
alias:
|
|
815
|
-
|
|
842
|
+
- security-domain
|
|
843
|
+
secb:
|
|
844
|
+
description: Sets a security value such as `trst` or the FDR signing trust object. "security
|
|
845
|
+
blob?". Known to include `trst` (yes a `trst` partition with a `secb` object with a `trst` object),
|
|
846
|
+
`rssl` (Factory SSL root CA), `rvok` (Revocation list) and `trpk` (trusted public keys?)
|
|
816
847
|
SECM:
|
|
817
848
|
description:
|
|
818
849
|
seid:
|
|
819
850
|
description: Secure Enclave ID
|
|
820
|
-
|
|
821
|
-
description:
|
|
822
|
-
|
|
823
|
-
encoding: sha2-384
|
|
851
|
+
sei3:
|
|
852
|
+
description: Secure Enclave ID (alternate)?
|
|
853
|
+
Appears to have a value identical to `seid`.
|
|
824
854
|
sepi:
|
|
825
855
|
description: SEP Image, contains oppd and tbms in seal
|
|
826
856
|
type: string
|
|
@@ -832,15 +862,18 @@ img4_tags:
|
|
|
832
862
|
sip0:
|
|
833
863
|
description: System Integrity Protection (SIP) 0 Status - Overall
|
|
834
864
|
sip1:
|
|
835
|
-
description: System Integrity Protection (SIP) 1 Status - Signed System Volume
|
|
865
|
+
description: System Integrity Protection (SIP) 1 Status - Signed System Volume
|
|
866
|
+
Status
|
|
836
867
|
sip2:
|
|
837
868
|
description: System Integrity Protection (SIP) 2 Status - Kernel CTRR Status
|
|
838
869
|
sip3:
|
|
839
|
-
description: System Integrity Protection (SIP) 3 Status - Boot Args Filtering
|
|
870
|
+
description: System Integrity Protection (SIP) 3 Status - Boot Args Filtering
|
|
871
|
+
Status
|
|
840
872
|
slvn:
|
|
841
873
|
description:
|
|
842
874
|
smb0:
|
|
843
|
-
description: Secure Multi-Boot 0 - Security Mode - Full Security, Reduced, Disabled
|
|
875
|
+
description: Secure Multi-Boot 0 - Security Mode - Full Security, Reduced, Disabled
|
|
876
|
+
- Setting to 1 sets to reduced
|
|
844
877
|
smb1:
|
|
845
878
|
description: Secure Multi-Boot 1 - Setting to 1 allows Permissive
|
|
846
879
|
smb2:
|
|
@@ -851,31 +884,74 @@ img4_tags:
|
|
|
851
884
|
description: Secure Multi-Boot 3 - DEP-allowed MDM Control
|
|
852
885
|
smb5:
|
|
853
886
|
description: Unknown - but known to exist in Factory signing
|
|
854
|
-
SNON:
|
|
855
|
-
description: SEP Nonce
|
|
856
887
|
snon:
|
|
857
888
|
description: SEP Nonce
|
|
889
|
+
SNON:
|
|
890
|
+
description: SEP Nonce
|
|
891
|
+
snuf:
|
|
892
|
+
description: Staged next update firmware?
|
|
893
|
+
spih:
|
|
894
|
+
description: Cryptex1 Image4 Hash
|
|
895
|
+
SPTM:
|
|
896
|
+
description: Secure Page Table Monitor
|
|
858
897
|
srnm:
|
|
859
898
|
description:
|
|
899
|
+
SrNm:
|
|
900
|
+
description: Unit Serial Number
|
|
901
|
+
manifest: true
|
|
902
|
+
ssca:
|
|
903
|
+
sski:
|
|
904
|
+
description: SHA2 os some kind
|
|
905
|
+
type: binary
|
|
860
906
|
ster:
|
|
861
907
|
description:
|
|
908
|
+
stg1:
|
|
909
|
+
description: stage 1 bootloader
|
|
910
|
+
type: string
|
|
911
|
+
encoding: sha2-384
|
|
912
|
+
stID:
|
|
913
|
+
description: Station IDentifier
|
|
914
|
+
stng:
|
|
915
|
+
description: Cryptex1 Generation / Cryptex type?
|
|
916
|
+
styp:
|
|
917
|
+
description: Crytpex Subtype
|
|
918
|
+
type: u32
|
|
919
|
+
alias:
|
|
920
|
+
- cryptex subtype
|
|
921
|
+
roots:
|
|
922
|
+
- ExtraContent
|
|
862
923
|
svrn:
|
|
863
924
|
description: Server nonce
|
|
925
|
+
tatp:
|
|
926
|
+
description: Target Type (board name)
|
|
927
|
+
roots:
|
|
928
|
+
- ManifestKey-DataCenter
|
|
864
929
|
tbmr:
|
|
865
930
|
description: Trusted Boot Measurement (Recovery/Root?)
|
|
866
931
|
tbms:
|
|
867
932
|
description: Trusted Boot Measurement (Signature?)
|
|
868
933
|
notes: Likely encrypted by the SEP and opaque to the AP
|
|
869
|
-
tatp:
|
|
870
|
-
description: Board Name (such as d84) - Target AP Test
|
|
871
|
-
roots:
|
|
872
|
-
- ManifestKey-DataCenter
|
|
873
934
|
tery:
|
|
874
935
|
description:
|
|
875
936
|
test:
|
|
876
937
|
description:
|
|
877
938
|
tics:
|
|
878
939
|
description:
|
|
940
|
+
TMac:
|
|
941
|
+
description: Thunderbolt MAC Address
|
|
942
|
+
manifest: true
|
|
943
|
+
trca:
|
|
944
|
+
description:
|
|
945
|
+
type: digest-object
|
|
946
|
+
roots:
|
|
947
|
+
- ExtraContent
|
|
948
|
+
trcs:
|
|
949
|
+
description:
|
|
950
|
+
type: digest-object
|
|
951
|
+
roots:
|
|
952
|
+
- ExtraContent
|
|
953
|
+
trpk:
|
|
954
|
+
description: Trust public keys
|
|
879
955
|
trst:
|
|
880
956
|
description: Trust Object
|
|
881
957
|
tsys:
|
|
@@ -885,15 +961,12 @@ img4_tags:
|
|
|
885
961
|
type: integer
|
|
886
962
|
roots:
|
|
887
963
|
- ExtraContent
|
|
888
|
-
caos:
|
|
889
|
-
description:
|
|
890
|
-
type: digest-object
|
|
891
|
-
root:
|
|
892
|
-
- ExtraContent
|
|
893
964
|
ucer:
|
|
894
965
|
description: User Cert
|
|
895
966
|
ucon:
|
|
896
967
|
description:
|
|
968
|
+
UDID:
|
|
969
|
+
description: universal device identifier
|
|
897
970
|
udid:
|
|
898
971
|
description: Unique Device ID
|
|
899
972
|
uidm:
|
|
@@ -905,34 +978,38 @@ img4_tags:
|
|
|
905
978
|
description:
|
|
906
979
|
vkdl:
|
|
907
980
|
description:
|
|
981
|
+
vnum:
|
|
982
|
+
description: Version Number - Update Maximum
|
|
983
|
+
type: string
|
|
984
|
+
roots:
|
|
985
|
+
- ExtraContent
|
|
908
986
|
vuid:
|
|
909
987
|
title: APFS volume group UUID (vuid)
|
|
910
|
-
description:
|
|
911
|
-
|
|
912
|
-
|
|
913
|
-
|
|
988
|
+
description: 'The vuid indicates the volume group the kernel should use as root.
|
|
989
|
+
This field is primarily informational and isn’t used for security constraints.
|
|
990
|
+
This vuid is set by the user implicitly when creating a new operating system
|
|
991
|
+
install.
|
|
992
|
+
|
|
993
|
+
'
|
|
914
994
|
type: binary
|
|
915
995
|
subtype: sha2-384
|
|
916
996
|
access:
|
|
917
|
-
|
|
918
|
-
|
|
919
|
-
|
|
997
|
+
- 1TR
|
|
998
|
+
- recoveryOS
|
|
999
|
+
- macOS
|
|
920
1000
|
ware:
|
|
921
1001
|
description:
|
|
922
|
-
|
|
923
|
-
description:
|
|
924
|
-
type: binary
|
|
925
|
-
inst:
|
|
926
|
-
descryption: The key or file to install
|
|
1002
|
+
WCHF:
|
|
1003
|
+
description: Wireless Charging Firmware
|
|
927
1004
|
wchf:
|
|
928
1005
|
description: Wireless Charging Framework
|
|
1006
|
+
WMac:
|
|
1007
|
+
description: Wireless MAC Address
|
|
1008
|
+
WSKU:
|
|
1009
|
+
description: Wireless SKU
|
|
929
1010
|
xbtc:
|
|
930
1011
|
description: x86 Boot Trust Cache
|
|
931
1012
|
xsys:
|
|
932
1013
|
description: x86 System Root Hash
|
|
933
1014
|
xugs:
|
|
934
1015
|
description:
|
|
935
|
-
SPTM:
|
|
936
|
-
description: Secure Page Table Monitor
|
|
937
|
-
WCHF:
|
|
938
|
-
description: Wireless Charging Firmware
|