apple-data 1.0.409 → 1.0.415

Sign up to get free protection for your applications and to get access to all the features.
data/share/sep.yaml CHANGED
@@ -1,210 +1,214 @@
1
1
  ---
2
- services:
3
- - service: SEPD # Incorrect: fixed at ID 0, sepd is a play on launchd
4
- fixed_endpoint: 0
5
- xnu_name: AppleSEPControl
6
- xnu_kext: AppleSEPManager
7
- opcodes:
8
- - id: 0
9
- const: kOpCode_NOP
10
- description: No operation
11
- - id: 2
12
- const: kOpCode_SET_OOL_IN_ADDR
13
- description: set the address of a block of AP memory to be transfered to the SEP for the next request
14
- - id: 3
15
- const: kOpCode_SET_OOL_OUT_ADDR
16
- description: set the address of a block of AP memory to be used to return the result of a given SEP response
17
- - id: 4
18
- const: kOpCode_SET_OOL_IN_SIZE
19
- description: set the size of the memory block to be transfered to the endpoint as a parameter
20
- - id: 5
21
- const: kOpCode_SET_OOL_OUT_SIZE
22
- description: set the size of the memory block allocated to the be written to as a response to a SEP request
23
- - id: 10
24
- const: kOpCode_TTYIN
25
- - id: 12
26
- const: kOpCode_Sleep
27
- description: put the SEP into low power and wait for an external IRQ
28
- - id: 19
29
- name: kOpCode_Nap
30
- description: put the SEP into low power and wake after a timeout
31
- - id: 0x14
32
- const: kOpCode_SECMODE_REQUEST
33
- description: get the current effective security mode of the SEP
34
- - id: 0x18
35
- const: kOpCode_SELFTEST
36
- description: perform diagnostics and internal consistancy checks on the the SEP
37
- - id: 0x25
38
- name: kOpCode_ERASE_INSTALL
39
- description: Queue the system for a wipe and install of IPSW
40
- - id: 0x26
41
- const: kOpCode_L4_PANIC
42
- description: Panic the L4 microkernel
43
- - id: 0x27
44
- const: kOpCode_SEPOSPANIC
45
- description: Panic the SEPOS
46
- - service: slog # Incorrect: notknown - Sep logging service
47
- description: SEP logging service
48
- xnu_name: AppleSEPLogger
49
- xnu_kext: AppleSEPManager
50
- - service: arts # Incorrect: ART storage
51
- description: Anti-replay Token Storage
52
- xnu_name: AppleSEPARTStorage
53
- xnu_kext: AppleSEPManager
54
- - service: artr # Incorrect: not known - SEP anti-replay storage
55
- description: Anti-replay token request
56
- xnu_name:
57
- - service: sepS
58
- description: SEP services endpoint
59
- - service: sbio
60
- description: Secure Biometic Services
61
- - service: skgs
62
- description: Secure Key Generation Service
63
- - service: xarm
64
- description: xART
65
- - service: xars
66
- description: xART
67
- - service: cntl
2
+ metadata:
68
3
  description:
69
- - service: sidv
70
- description:
71
- - service: test
72
- description: Test Service
73
- - service: sars
74
- description: Secure Anti-Replay Service
75
- - service: enti
76
- description: Entitlement Service
77
- - service: debg # Incorrect: not known
78
- description: Debug
79
- xnu_name: AppleSEPDebug
80
- xnu_kext: AppleSEPManager
81
- - service: sks\0
82
- description: Secure Key Storage (AppleKeyStore)
83
- xnu_name: AppleSEPKeyStore
84
- xnu_kext: AppleSEPKeyStore
85
- - service: sse\0
86
- description: Proxy access to the SE (secure element)
87
- xnu_kext: AppleSSE
88
- - service: scrd
89
- description: Secure Credential Manager (AppleCredentialStore)
90
- xnu_kext: AppleCredentialManager
91
- - service: lpol # Incorrect: unknown
92
- name: boot_policy # Incorrect: not known yet
93
- description: Manage Apple Silicon macOS boot policy
94
- opcodes:
95
- - id: 2
96
- name: begin_update_policy
97
- description: Begin a boot policy update operation
98
- - id: 3
99
- name: end_update_policy
100
- - service: disc # Incorrect - not known
101
- fixed_endpoint: 253
102
- name: discovery # Incorrect: not 4CC
103
- description: >-
104
- First advertise, then expose
4
+ credits:
5
+ sep_services:
6
+ "SEPD":
7
+ description: "Incorrect: fixed at ID 0, sepd is a play on launchd"
8
+ fixed_endpoint: 0
9
+ xnu_name: AppleSEPControl
10
+ xnu_kext: AppleSEPManager
11
+ opcodes:
12
+ - id: 0
13
+ const: kOpCode_NOP
14
+ description: No operation
15
+ - id: 2
16
+ const: kOpCode_SET_OOL_IN_ADDR
17
+ description: set the address of a block of AP memory to be transfered to the SEP for the next request
18
+ - id: 3
19
+ const: kOpCode_SET_OOL_OUT_ADDR
20
+ description: set the address of a block of AP memory to be used to return the result of a given SEP response
21
+ - id: 4
22
+ const: kOpCode_SET_OOL_IN_SIZE
23
+ description: set the size of the memory block to be transfered to the endpoint as a parameter
24
+ - id: 5
25
+ const: kOpCode_SET_OOL_OUT_SIZE
26
+ description: set the size of the memory block allocated to the be written to as a response to a SEP request
27
+ - id: 10
28
+ const: kOpCode_TTYIN
29
+ - id: 12
30
+ const: kOpCode_Sleep
31
+ description: put the SEP into low power and wait for an external IRQ
32
+ - id: 19
33
+ name: kOpCode_Nap
34
+ description: put the SEP into low power and wake after a timeout
35
+ - id: 0x14
36
+ const: kOpCode_SECMODE_REQUEST
37
+ description: get the current effective security mode of the SEP
38
+ - id: 0x18
39
+ const: kOpCode_SELFTEST
40
+ description: perform diagnostics and internal consistancy checks on the the SEP
41
+ - id: 0x25
42
+ name: kOpCode_ERASE_INSTALL
43
+ description: Queue the system for a wipe and install of IPSW
44
+ - id: 0x26
45
+ const: kOpCode_L4_PANIC
46
+ description: Panic the L4 microkernel
47
+ - id: 0x27
48
+ const: kOpCode_SEPOSPANIC
49
+ description: Panic the SEPOS
50
+ slog: # Incorrect: notknown - Sep logging service
51
+ description: SEP logging service
52
+ xnu_name: AppleSEPLogger
53
+ xnu_kext: AppleSEPManager
54
+ arts: # Incorrect: ART storage
55
+ description: Anti-replay Token Storage
56
+ xnu_name: AppleSEPARTStorage
57
+ xnu_kext: AppleSEPManager
58
+ artr: # Incorrect: not known - SEP anti-replay storage
59
+ description: Anti-replay token request
60
+ xnu_name:
61
+ sepS:
62
+ description: SEP services endpoint
63
+ sbio:
64
+ description: Secure Biometic Services
65
+ skgs:
66
+ description: Secure Key Generation Service
67
+ xarm:
68
+ description: xART
69
+ xars:
70
+ description: xART
71
+ cntl:
72
+ description:
73
+ sidv:
74
+ description:
75
+ test:
76
+ description: Test Service
77
+ sars:
78
+ description: Secure Anti-Replay Service
79
+ enti:
80
+ description: Entitlement Service
81
+ debg: # Incorrect: not known
82
+ description: Debug
83
+ xnu_name: AppleSEPDebug
84
+ xnu_kext: AppleSEPManager
85
+ "sks\0":
86
+ description: Secure Key Storage (AppleKeyStore)
87
+ xnu_name: AppleSEPKeyStore
88
+ xnu_kext: AppleSEPKeyStore
89
+ "sse\0":
90
+ description: Proxy access to the SE (secure element)
91
+ xnu_kext: AppleSSE
92
+ scrd:
93
+ description: Secure Credential Manager (AppleCredentialStore)
94
+ xnu_kext: AppleCredentialManager
95
+ lpol: # Incorrect: unknown
96
+ name: boot_policy # Incorrect: not known yet
97
+ description: Manage Apple Silicon macOS boot policy
98
+ opcodes:
99
+ - id: 2
100
+ name: begin_update_policy
101
+ description: Begin a boot policy update operation
102
+ - id: 3
103
+ name: end_update_policy
104
+ disc: # Incorrect - not known
105
+ fixed_endpoint: 253
106
+ name: discovery # Incorrect: not 4CC
107
+ description: >-
108
+ First advertise, then expose
105
109
 
106
- `id` is endpoint number
107
- `name` is `'scrd'` or `'sks\0'` for example. (4 char code)
110
+ `id` is endpoint number
111
+ `name` is `'scrd'` or `'sks\0'` for example. (4 char code)
108
112
 
109
- struct app_info
110
- {
111
- uint64_t physical_addr;
112
- uint32_t virtual_base;
113
- uint32_t size;
114
- uint32_t entry;
115
- uint8_t name[12];
116
- uint8_t hash[16];
117
- }
118
- opcodes:
119
- - id: 0
120
- name: advertise
121
- request_struct: |
122
- // Credit: ntrung03
123
- struct ep_advertise_data {
124
- uint8_t id; /* param */
125
- uint32_t name; /* data, Apple 4CC for the applet name */
126
- };
127
- - id: 1
128
- name: expose
129
- request_struct: |
130
- // Credit: ntrung03
131
- struct ep_expose_data {
132
- uint8_t id; /* param */
133
- char ool_in_min_pages;
134
- char ool_in_max_pages;
135
- char ool_out_min_pages;
136
- char ool_out_max_pages;
137
- };
138
- - service: krnl # Incorrect: not known yet
139
- fixed_endpoint: 254
140
- name: L4info
141
- opcodes:
142
- - id: 0
143
- name: L4_Ipc
144
- desciption: Set up ipc between two threads
145
- - id: 4
146
- name: L4_ThreadSwitch
147
- description: Yield execution to thread
148
- - id: 8
149
- name: L4_ThreadControl
150
- description: Create or delete threads
151
- privileged: true
152
- - id: 0xC
153
- name: L4_ExchangeRegisters
154
- description: Exchange registers
155
- - id: 0x10
156
- name: L4_Schedule
157
- description: Set thread scheduling information
158
- - id: 0x14
159
- name: L4_MapControl
160
- description: Map or free virtual memory
161
- privileged: true
162
- - id: 0x18
163
- name: L4_SpaceControl
164
- description: Create a new address space
165
- privileged: true
166
- - id: 0x1C
167
- name: L4_ProcessorControl
168
- description: Sets processor attributes
169
- - id: 0x20
170
- name: L4_CacheControl
171
- description: Cache flushing
172
- - id: 0x24
173
- name: L4_IpcControl
174
- description: Adjust IPC access
175
- privileged: true
176
- - id: 0x28
177
- name: L4_InterruptControl
178
- description: Enable or disable an interrupt
179
- privileged: true
180
- - id: 0x2C
181
- name: L4_GetTimebase
182
- description: Gets the system time
183
- - id: 0x30
184
- name: L4_SetTimeout
185
- description: Set timeout for IPC sessions
186
- - id: 0x34
187
- name: L4_SharedMappingControl
188
- description: Set up a shared mapping
189
- privileged: true
190
- - id: 0x38
191
- name: L4_SleepKernel
192
- description: cause the SEP kernel to sleep until an external inturupt occurs
193
- - id: 0x3C
194
- name: L4_PowerControl
195
- - id: 0x40
196
- name: L4_KernelInterface
197
- description: Get information about the running L4 kernel
198
- - service: sepr # Incorrect: not known yet
199
- fixed_endpoint: 255
200
- name: seprom # Incorrect: not 4CC - name not important as it is always at 255
201
- opcodes:
202
- - id: 01
203
- name: ping
204
- description: request a pong from the SEP
205
- - id: 0x0F
206
- name: panic
207
- description: Common to all Apps, panic
208
- - id: 10
209
- name: random
210
- description: get random bytes from the SEP
113
+ struct app_info
114
+ {
115
+ uint64_t physical_addr;
116
+ uint32_t virtual_base;
117
+ uint32_t size;
118
+ uint32_t entry;
119
+ uint8_t name[12];
120
+ uint8_t hash[16];
121
+ }
122
+ opcodes:
123
+ 0:
124
+ name: advertise
125
+ request_struct: |
126
+ // Credit: ntrung03
127
+ struct ep_advertise_data {
128
+ uint8_t id; /* param */
129
+ uint32_t name; /* data, Apple 4CC for the applet name */
130
+ };
131
+ 1:
132
+ name: expose
133
+ request_struct: |
134
+ // Credit: ntrung03
135
+ struct ep_expose_data {
136
+ uint8_t id; /* param */
137
+ char ool_in_min_pages;
138
+ char ool_in_max_pages;
139
+ char ool_out_min_pages;
140
+ char ool_out_max_pages;
141
+ };
142
+ krnl: # Incorrect: not known yet
143
+ fixed_endpoint: 254
144
+ name: L4info
145
+ opcodes:
146
+ - id: 0
147
+ name: L4_Ipc
148
+ desciption: Set up ipc between two threads
149
+ - id: 4
150
+ name: L4_ThreadSwitch
151
+ description: Yield execution to thread
152
+ - id: 8
153
+ name: L4_ThreadControl
154
+ description: Create or delete threads
155
+ privileged: true
156
+ - id: 0xC
157
+ name: L4_ExchangeRegisters
158
+ description: Exchange registers
159
+ - id: 0x10
160
+ name: L4_Schedule
161
+ description: Set thread scheduling information
162
+ - id: 0x14
163
+ name: L4_MapControl
164
+ description: Map or free virtual memory
165
+ privileged: true
166
+ - id: 0x18
167
+ name: L4_SpaceControl
168
+ description: Create a new address space
169
+ privileged: true
170
+ - id: 0x1C
171
+ name: L4_ProcessorControl
172
+ description: Sets processor attributes
173
+ - id: 0x20
174
+ name: L4_CacheControl
175
+ description: Cache flushing
176
+ - id: 0x24
177
+ name: L4_IpcControl
178
+ description: Adjust IPC access
179
+ privileged: true
180
+ - id: 0x28
181
+ name: L4_InterruptControl
182
+ description: Enable or disable an interrupt
183
+ privileged: true
184
+ - id: 0x2C
185
+ name: L4_GetTimebase
186
+ description: Gets the system time
187
+ - id: 0x30
188
+ name: L4_SetTimeout
189
+ description: Set timeout for IPC sessions
190
+ - id: 0x34
191
+ name: L4_SharedMappingControl
192
+ description: Set up a shared mapping
193
+ privileged: true
194
+ - id: 0x38
195
+ name: L4_SleepKernel
196
+ description: cause the SEP kernel to sleep until an external inturupt occurs
197
+ - id: 0x3C
198
+ name: L4_PowerControl
199
+ - id: 0x40
200
+ name: L4_KernelInterface
201
+ description: Get information about the running L4 kernel
202
+ sepr: # Incorrect: not known yet
203
+ fixed_endpoint: 255
204
+ name: seprom # Incorrect: not 4CC - name not important as it is always at 255
205
+ opcodes:
206
+ - id: 01
207
+ name: ping
208
+ description: request a pong from the SEP
209
+ - id: 0x0F
210
+ name: panic
211
+ description: Common to all Apps, panic
212
+ - id: 10
213
+ name: random
214
+ description: get random bytes from the SEP