More actions
No edit summary |
m (HydeWing moved page Psvita Reverse Engineering Tools Vita to PS Vita Reverse Engineering Tools without leaving a redirect) |
Revision as of 02:15, 14 Ocak 2023
This article may require cleanup to meet GameBrew's quality standards.
Reason: Needs cleanup |
PS Vita Reverse Engineering Tools | |
---|---|
General | |
Author | Various authors |
Type | PC Utilities |
Version | 1.0 |
License | GPL-3.0 |
Last Updated | 2018/12/07 |
Links | |
Download | |
Website | |
Source | |
This toolkit provides tools that aid in the development of PS Vita homebrews and plugins, as well as PC tools and even emulators, by providing tools that speed up development through automation of processes and gives a more friendly view into complex things of PS Vita OS.
These tools heavily contribute to Wiki and open source SDK improvements.
These tools aided in the development of plugins such as: ReStore, ReNpDrm, repatch, reF00D, NoAVLS, rebgdl.
User guide
List of tools
noASLR (Princess-of-Sleeping):
- Disable a Address Space Layout Randomization of PS Vita.
- Credits: Princess-of-Sleeping.
Princess Silly Mini Log USB (PSMLogUSB) (dots_tb):
- A modified version of PrincessLog to use the USB serial drivers provided by the PSM SDK. This allows for serial stdout without hardware modification.
- Credits: dots_tb, SilicaAndPina (idea), Sysie.
- Req: Yifan Lu, SonicMastr, teakhanirons.
Codename PrincessLog (Princess-of-Sleeping):
- A complete logging solution for any homebrew, user plugin, kernel plugin. It is more efficient and overall nicer than ShipLog.
- Credits: Princess-of-Sleeping, cuevavirus.
ShipLog v2.0 (dots-tb) (Obsolete, use PrincessLog):
- A complete logging solution for any homebrew, user plugin, kernel plugin. It can use network or file logging.
- Credits: xerpi, psxdev for their works on logging solutions. Cpasjuste for net.
That Hooker Got NIDS (dots-tb):
- A PC tool that hooks specified NIDS automatically.
- Credits: xerpi for base code used, TheFlow for db.yml parsing, yasen for the name ideas.
VitaDecompilerMod (dots-tb):
- A free alternative to IDA. It has a great pseudo-C decompilation that offers a quick view thanks to text file exporting.
- Based on vitadecompiler by TheFloW, itself based on prxtool by TyRaNiD.
- Compared to original TheFlow's version it has a few features such as:
- More strings (EVEN MORE), including data section. (homebrew strings now work).
- Generates .c, .h, .txt (NIDs), and db_lookup (<module_name>.yml).
- ELF and fSELF support.
- Compressed fSELF support.
- Fixed issues with NIDS being improperly found.
- Includes offsets and vaddr.
- Automatic entry point (the entry point is retrieved properly from ELF header).
- Automatic entry point location (for badly generated ELFs).
- Relocation support.
- There might be more.
- Credits: TheFloW for original VitaDecompiler and PSP prxtool's contributors.
prxtool for PS Vita (TheFloW):
- An alternative to VitaDecompilerMod: prxtool cannot decompile to pseudo-C but it can decompiles ASM very well.
- Credits: TheFloW and xerpi for PS Vita port and PSP prxtool's contributors
vita-unmake-fself (dots-tb):
- A PC tool that decompresses an unencrypted SELF file (.skprx, .suprx, .self, eboot.bin) into an ELF file (.elf, .velf).
- This tool can't decompress NPDRM encrypted SELF nor System encrypted SELF. That means that you will have to use FAGDec or sceutils to first get a unencrypted SELF.
- Read SELFtoELF documentation for more information.
vita-elf-inject (dots-tb):
- A PC tool that injects an ELF (made by FAGDec or vita-unmake-fself) into a decrypted eboot.bin.
- Credits: dots-tb, Motoharu and CelesteBlue for make-fself rev ur engs.
PSVita-ELF-builder (CelesteBlue-dev):
- Deprecated. A PC tool that rebuilds ELF from decrypted modules' segments. To be used after using vitaDecrypt (never released).
- Credits: zecoxao for the tutorial (how to rebuild ELF from decrypted segments and original SELF), vitasdk for vita-make-fself.
French-American Games Decrypter (FAGDec) (CelesteBlue-dev and dots-tb):
- A PS Vita homebrew that decrypts easily PS Vita user/kernel and games modules and can generate .ppk (compatibility pack for low FWs).
- Credits: Motoharu, Team Molecule, zecoxao for vitadump(new), xerpi, NPS team esp. juliosueiras. Check app for further credits.
ioPlus 0.1, 0.2 (dots-tb):
- A PS Vita kernel plugin that allows more IO operations in userland. Fast, simpler, and efficient alternative to kuio (by Rinnegatamante) (3x smaller).
- It allows elevated IO permissions of user applications and plugins using the original sceIo functions. This includes reading, writing, opening, and folder management within applications such as official games. It may also include getting stats, not sure.
- Version 0.2 is much more inefficient, but supports decryption of files within devices that may open such as PFS devices (WARNING THIS PLUGIN MAY BYPASS SAFE-MODE).
physmem_dumper (xyzz):
- A PS Vita kernel plugin that dumps Non-Secure World (NS kernel + userland) memory using RAM physical range: from 0x40200000 to 0x5FD00000.
- See wiki for more information on PS Vita's physical memory: https://wiki.henkaku.xyz/vita/Physical_Memory.
- The output dump stored in ur0:dump/physmem-dump.bin is aimed to be loaded in IDA PRO using https://github.com/xyzz/vita-ida-physdump.
PSVita-error-code-resolver (SilicaAndPina and Princess-of-Sleeping):
- A PC program that can use the PS Vita error_table.bin to translate error codes.
psp2-kernel-bootimage-extract (CelesteBlue-dev and zecoxa):
- A PC program that extracts kernel modules ELF files from bootimage.elf or PSPemu flash files from pcff.elf.
psp2-kbl-elf-extract (CelesteBlue-dev):
- A PC program that extracts embedded secure kernel modules ELF and Kernel Boot Loader (Non-secure) files from kernel_boot_loader.elf.
psp2-syslibtrace-nids-extract (CelesteBlue-dev):
- A PC program that extracts the functions NIDs-names table from syslibtrace.elf to stdout.
unarzl (TeamMolecule):
- A PC program that extracts ARZL compressed file.
Kdumper (TheFloW and CelesteBlue-dev):
- A PS Vita fSELF to run on any activated TestKit/DevKit running FW <=3.67 in order to dump its kernel.
- Confirmed working between 3.50 and 3.67. Will need some changes for lower FWs (sceMotionDevGetEvaInfo is only on FW >= 3.50).
- Credits: TheFloW for the kernel exploits, CelesteBlue for the many improvements, Mathieulh and LemonHaze for SceNgsUser code.
kdump-extract (dots-tb):
- A PC program that finds and extracts segment 0 of a kernel module from a continous kernel memory dump.
- It outputs a .elf that can be used for RE (see vitadecompiler), for extracting NIDs (see nids-extract).
- It is to be used in conjunction with Kdumper on PS Vita side.
psvitalibdoc:
- Some lists of functions names / NIDs / libraries / modules to be used with vitadump IDA plugin, vitaldr IDA plugin, VitaDecompilerMod or prxtool for PS Vita.
Credits
PS Vita Reverse Engineering Tools by FAPS Team (and other developers).
Further thanks to zecoxao, xerpi, Team_molecule (yifanlu, Davee, Proxima, xyz), Hykem, St4rk, mr.gas, MajorTom, TheFloW, Rinnegatamante, cpasjuste, Freakler, sys (yasen), Nkekev, SilicaAndPina, motoharu, mathieulh, aerosoul, SKGleba, frangarcj, velocity, der0ad (wargio), SKFU, Vita3K, devnoname120, LemonHaze, SocraticBliss, PrincessOfSleeping, Sorvigolova, 173210, qwikrazor87, ColdBird.
External links
- Official Website -
- Github - https://github.com/CelesteBlue-dev/PSVita-RE-tools
- VitaDB -
- Gbatemp -
- Google Source -
- Reddit -
- Gitlab -