SceSblACMgr: Difference between revisions
Jump to navigation
Jump to search
CelesteBlue (talk | contribs) |
CelesteBlue (talk | contribs) |
||
Line 33: | Line 33: | ||
== SceSblACMgrForKernel == | == SceSblACMgrForKernel == | ||
=== PathId === | |||
A code is passed in the header context to decrypt a SELF based on where the SELF file must be located. This is likely a security feature to prevent SELFs that are designed to run from one path (for example <code>os0</code>) from being copied and run from another path. | |||
{| class="wikitable" | |||
|- | |||
! Path !! PathId | |||
|- | |||
| ux0:user || 0 | |||
|- | |||
| sd0 || 1 | |||
|- | |||
| os0 || 2 | |||
|- | |||
| vs0 || 3 | |||
|- | |||
| vd0 || 4 | |||
|- | |||
| tm0 || 5 | |||
|- | |||
| ur0 || 6 | |||
|- | |||
| host0 || 7 | |||
|- | |||
| boot0 || 10 | |||
|- | |||
| ud0 || 11 | |||
|- | |||
| ux0 || 12 | |||
|- | |||
| gro0:app || 13 | |||
|- | |||
| gro0:patch || 14 | |||
|- | |||
| sa0 || 15 | |||
|- | |||
| mfa0 || 16 | |||
|- | |||
| mfb0 || 17 | |||
|- | |||
| lma0 || 18 | |||
|- | |||
| lmb0 || 19 | |||
|- | |||
| lmc0 || 20 | |||
|- | |||
| lmd0 || 21 | |||
|- | |||
| pd0 || 22 | |||
|- | |||
| ux0:app || 23 | |||
|- | |||
| ux0:patch || 24 | |||
|- | |||
| ux0:data || 25 | |||
|- | |||
| uma0 || 27 | |||
|} | |||
=== sceSblACMgrGetPathIdForKernel === | === sceSblACMgrGetPathIdForKernel === | ||
Line 42: | Line 102: | ||
|} | |} | ||
<source lang="C">sceSblACMgrGetPathIdForKernel(const char *path, int* pathId);</source> | <source lang="C"> | ||
/* item_8FA4FC deobfuscated data | |||
item_8FA4FC <0x8FA3A8, 2, 0x8FA43C, 1, 1> ; sd | |||
item_8FA4FC <0x8FA39C, 2, 0x8FA43C, 1, 2> ; os | |||
item_8FA4FC <0x8FA4B8, 2, 0x8FA43C, 1, 3> ; vs | |||
item_8FA4FC <0x8FA17C, 2, 0x8FA43C, 1, 4> ; vd | |||
item_8FA4FC <0x8FA444, 2, 0x8FA43C, 1, 5> ; tm | |||
item_8FA4FC <0x8FA4A0, 2, 0x8FA43C, 1, 6> ; ur | |||
item_8FA4FC <0x8FA0CC, 4, 0x8FA43C, 1, 7> ; host | |||
item_8FA4FC <0x8FA3EC, 2, 0x8FA43C, 1, 0xB> ; ud | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA384, 4, 0x17> ; ux:app | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA468, 5, 0x17> ; ux:/app | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA498, 6, 0x18> ; ux:patch | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA448, 7, 0x18> ; ux:/patch | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA4E4, 5, 0x19> ; ux:data | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA38C, 6, 0x19> ; ux:/data | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA0DC, 5, 0> ; ux:user | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA3BC, 6, 0> ; ux:/user | |||
item_8FA4FC <0x8FA4A8, 2, 0x8FA43C, 1, 0xC> ; ux | |||
item_8FA4FC <0x8FA4C4, 3, 0x8FA384, 4, 0xD> ; gro:app | |||
item_8FA4FC <0x8FA4C4, 3, 0x8FA468, 5, 0xD> ; gro:/app | |||
item_8FA4FC <0x8FA4A4, 3, 0x8FA498, 6, 0xE> ; grw:patch | |||
item_8FA4FC <0x8FA4A4, 3, 0x8FA448, 7, 0xE> ; grw:/patch | |||
item_8FA4FC <0x8FA430, 2, 0x8FA43C, 1, 0xF> ; sa | |||
item_8FA4FC <0x8FA440, 3, 0x8FA43C, 1, 0x10> ; mfa | |||
item_8FA4FC <0x8FA394, 3, 0x8FA43C, 1, 0x11> ; mfb | |||
item_8FA4FC <0x8FA48C, 3, 0x8FA43C, 1, 0x12> ; lma | |||
item_8FA4FC <0x8FA490, 3, 0x8FA43C, 1, 0x13> ; lmb | |||
item_8FA4FC <0x8FA494, 3, 0x8FA43C, 1, 0x14> ; lmc | |||
item_8FA4FC <0x8FA398, 3, 0x8FA43C, 1, 0x15> ; lmd | |||
item_8FA4FC <0x8FA4C8, 2, 0x8FA43C, 1, 0x16> ; pd | |||
item_8FA4FC <0x8FA4B4, 3, 0x8FA43C, 1, 0x1B> ; uma | |||
*/ | |||
struct item_8FA4FC | |||
{ | |||
char *partition; | |||
int partition_len; | |||
char *folder; | |||
int folder_len; | |||
int path_id; | |||
}; | |||
sceSblACMgrGetPathIdForKernel(const char *path, int* pathId); | |||
</source> | |||
== SceSblACMgrForDriver == | == SceSblACMgrForDriver == |
Revision as of 17:09, 19 March 2018
Module
Known NIDs
Version | Name | World | Privilege | NID |
---|---|---|---|---|
1.69 | SceSblACMgr | Non-secure | Kernel | 0xB6E5AEBE |
3.60 | SceSblACMgr | Non-secure | Kernel | 0x7474D6F9 |
Libraries
Known NIDs
Version | Name | World | Visibility | NID |
---|---|---|---|---|
1.69 | SceSblACMgrForKernel | Non-secure | Kernel | 0x11F9B314 |
3.60 | SceSblACMgrForKernel | Non-secure | Kernel | 0x11F9B314 |
1.69 | SceSblACMgrForDriver | Non-secure | Kernel | 0x9AD8E213 |
3.60 | SceSblACMgrForDriver | Non-secure | Kernel | 0x9AD8E213 |
1.69 | SceSblACMgr | Non-secure | User | 0xF069F219 |
3.60 | SceSblACMgr | Non-secure | User | 0xF069F219 |
SceSblACMgrForKernel
PathId
A code is passed in the header context to decrypt a SELF based on where the SELF file must be located. This is likely a security feature to prevent SELFs that are designed to run from one path (for example os0
) from being copied and run from another path.
Path | PathId |
---|---|
ux0:user | 0 |
sd0 | 1 |
os0 | 2 |
vs0 | 3 |
vd0 | 4 |
tm0 | 5 |
ur0 | 6 |
host0 | 7 |
boot0 | 10 |
ud0 | 11 |
ux0 | 12 |
gro0:app | 13 |
gro0:patch | 14 |
sa0 | 15 |
mfa0 | 16 |
mfb0 | 17 |
lma0 | 18 |
lmb0 | 19 |
lmc0 | 20 |
lmd0 | 21 |
pd0 | 22 |
ux0:app | 23 |
ux0:patch | 24 |
ux0:data | 25 |
uma0 | 27 |
sceSblACMgrGetPathIdForKernel
Version | World | NID |
---|---|---|
3.60 | non-secure | 0xD442962E |
/* item_8FA4FC deobfuscated data item_8FA4FC <0x8FA3A8, 2, 0x8FA43C, 1, 1> ; sd item_8FA4FC <0x8FA39C, 2, 0x8FA43C, 1, 2> ; os item_8FA4FC <0x8FA4B8, 2, 0x8FA43C, 1, 3> ; vs item_8FA4FC <0x8FA17C, 2, 0x8FA43C, 1, 4> ; vd item_8FA4FC <0x8FA444, 2, 0x8FA43C, 1, 5> ; tm item_8FA4FC <0x8FA4A0, 2, 0x8FA43C, 1, 6> ; ur item_8FA4FC <0x8FA0CC, 4, 0x8FA43C, 1, 7> ; host item_8FA4FC <0x8FA3EC, 2, 0x8FA43C, 1, 0xB> ; ud item_8FA4FC <0x8FA4A8, 2, 0x8FA384, 4, 0x17> ; ux:app item_8FA4FC <0x8FA4A8, 2, 0x8FA468, 5, 0x17> ; ux:/app item_8FA4FC <0x8FA4A8, 2, 0x8FA498, 6, 0x18> ; ux:patch item_8FA4FC <0x8FA4A8, 2, 0x8FA448, 7, 0x18> ; ux:/patch item_8FA4FC <0x8FA4A8, 2, 0x8FA4E4, 5, 0x19> ; ux:data item_8FA4FC <0x8FA4A8, 2, 0x8FA38C, 6, 0x19> ; ux:/data item_8FA4FC <0x8FA4A8, 2, 0x8FA0DC, 5, 0> ; ux:user item_8FA4FC <0x8FA4A8, 2, 0x8FA3BC, 6, 0> ; ux:/user item_8FA4FC <0x8FA4A8, 2, 0x8FA43C, 1, 0xC> ; ux item_8FA4FC <0x8FA4C4, 3, 0x8FA384, 4, 0xD> ; gro:app item_8FA4FC <0x8FA4C4, 3, 0x8FA468, 5, 0xD> ; gro:/app item_8FA4FC <0x8FA4A4, 3, 0x8FA498, 6, 0xE> ; grw:patch item_8FA4FC <0x8FA4A4, 3, 0x8FA448, 7, 0xE> ; grw:/patch item_8FA4FC <0x8FA430, 2, 0x8FA43C, 1, 0xF> ; sa item_8FA4FC <0x8FA440, 3, 0x8FA43C, 1, 0x10> ; mfa item_8FA4FC <0x8FA394, 3, 0x8FA43C, 1, 0x11> ; mfb item_8FA4FC <0x8FA48C, 3, 0x8FA43C, 1, 0x12> ; lma item_8FA4FC <0x8FA490, 3, 0x8FA43C, 1, 0x13> ; lmb item_8FA4FC <0x8FA494, 3, 0x8FA43C, 1, 0x14> ; lmc item_8FA4FC <0x8FA398, 3, 0x8FA43C, 1, 0x15> ; lmd item_8FA4FC <0x8FA4C8, 2, 0x8FA43C, 1, 0x16> ; pd item_8FA4FC <0x8FA4B4, 3, 0x8FA43C, 1, 0x1B> ; uma */ struct item_8FA4FC { char *partition; int partition_len; char *folder; int folder_len; int path_id; }; sceSblACMgrGetPathIdForKernel(const char *path, int* pathId);
SceSblACMgrForDriver
sceSblACMgrHasCapabilityForDriver
Version | World | NID |
---|---|---|
3.60 | non-secure | 0xC2D1F2FC |
sceSblACMgrIsShellForDriver
Version | World | NID |
---|---|---|
3.60 | non-secure | 0x8612B243 |
sceSblACMgrIsSystemForDriver
Version | World | NID |
---|---|---|
3.60 | non-secure | 0x0948F41C |
sceSblACMgrIsGameProgramForDriver
Version | World | NID |
---|---|---|
3.60 | non-secure | 0x1298C647 |
sceSblACMgrIsNonGameProgramForDriver
Version | World | NID |
---|---|---|
3.60 | non-secure | 0x6C5AB07F |
sceSblACMgrIsDevelopmentModeForDriver
Version | World | NID |
---|---|---|
3.60 | non-secure | 0xE87D1777 |
sceSblACMgrIsPspEmuForDriver
Version | World | NID |
---|---|---|
3.60 | non-secure | 0xFD00C72A |
SceSblACMgr
_sceSblACMgrIsGameProgram
Version | World | NID |
---|---|---|
1.69 | non-secure | 0x3C17A7F7 |
3.60 | non-secure | 0x3C17A7F7 |