Commit Graph

27 Commits

Author SHA1 Message Date
Al Azif
88f95e93a9 Update kpatches 2025-06-24 04:33:14 -07:00
Al Azif
943f06ddc3 Update 900.c 2025-06-24 04:19:56 -07:00
Al Azif
b6bccb39a9 Various tweaks
- Made constants match FreeBSD9 headers
  - Added more constants that are used but were just magic numbers
- Save and reset pinned core and scheduler priority post exploit
  - Use correct size for rtprio, 0x10 vs 8
- Double check value before closing fd or freeing object in post exploit cleanup
2025-06-14 14:27:55 -07:00
Al Azif
315514583d Shrink shellcode a little more 2025-06-11 03:28:59 -07:00
Al Azif
872c5de2c6 Tried explicitly closing everyything in the patch_kernel function
- Didn't change anything, left in but commented out.
2025-06-10 16:29:56 -07:00
Al Azif
88a6b3cfe6 Standardize logs a bit 2025-06-10 14:36:49 -07:00
Al Azif
bca8c9ac74 Make requested changes to payload loader
- Added comments to explain it
2025-06-10 12:46:06 -07:00
Al Azif
9d420c7463 Missed this one 2025-06-10 03:21:23 -07:00
Al Azif
588a70ae91 Acctually restore sysent[661] 2025-06-09 18:02:12 -07:00
Al Azif
0abf863ff2 Removed abc's donation link per abc's request
- Key for wallet is lost
2025-06-08 14:52:24 -07:00
Al Azif
ef2f26ee09 Update CHANGELOG.md 2025-06-07 14:48:04 -07:00
Al Azif
0bfa8c301e Add 7.xx support 2025-06-07 03:06:24 -07:00
Al Azif
c23ef56385 Run linter on everything 2025-06-05 22:38:15 -07:00
Al Azif
93d812737d Don't need to check for *.d files anymore 2025-06-05 16:33:19 -07:00
Al Azif
a7d1fb183c Initial 9.00-9.60 ROP chain, by @janisslsm
- Will need to be tweaked slightly, but it's currently working
- Thanks to @DrYenyen for testing literally everything
2025-06-05 16:12:57 -07:00
Al Azif
3b37a02a1d Update README.md 2025-06-03 22:27:45 -07:00
Al Azif
5f7b502451 Tweak workflows 2025-06-03 22:24:33 -07:00
Al Azif
f690d7b527 Add GitHub workflow for building kpatch shellcode 2025-06-03 22:18:23 -07:00
Al Azif
a74538dee4 8.00-8.52 are now supported 2025-06-03 17:01:27 -07:00
Al Azif
bcbca6a727 Tweaks before tackling the new ROP chains
- Added read8/read16/write8/write16 functions
- Simplify shellcode a little bit more
- Didn't init chain before using it for setuid check
2025-06-03 00:05:44 -07:00
Al Azif
a22678f0a5 Update CHANGELOG.md 2025-06-02 14:34:06 -07:00
Al Azif
5db4f41484 Added loading payload from file.
Check end of `lapse.mjs` to switch what you're using.
2025-06-01 21:28:52 -07:00
Al Azif
fc372f16b4 Reorder make_aliased_pktopts to try an reclaim memory earlier. By abc 2025-06-01 12:59:40 -07:00
Al Azif
3ab19c3a0b Push updates...
1. Cleanup/Linting/Tweaks/Fixes/etc
  - Default Prettier config w/ 999 line length
  - Default eslint config "problems" list trimmed down
2. Fixed corrupt pointer cleanup by abc
3. Fixed `ip6po_rthdr` offset for PS5 by abc
4. Verified the number of blocking requests needed to be two by abc
5. Only run kernel exploit once by checking setuid by @JTAG7371
6. Kernel patches from pOOBs4 by @ChendoChap (Ported for 8.00-9.60)
7. Payload loader from pOOBs4 by @ChendoChap
8. Restore syscall 661 (`sys_aio_submit()`) after patching by @janisslsm
9. Add `PROT_READ`, `PROT_WRITE`, `PROT_EXEC` constants for payload loader by @janisslsm

The ONLY things that should need changes are the `/rop/ps4/*.mjs` files (850, 900, and 950).
Firmware 8.00 appears to be stable/have a good success rate now.
2025-06-01 03:46:23 -07:00
Al Azif
23d3e70647 Add missing CHANGELOG.md link 2025-05-12 14:48:43 -07:00
Al Azif
3e47ad92a0 Prep for multi-fw and publishing on GitHub
### Added

- `.gitignore` for kpatch output
- Auto detect console type and firmware in `config.mjs`
  - Used elsewhere to determine which offsets/patches/ROP chain are used
- WIP: Add 8.50-9.60 support
  - All offsets found
  - Running into some issue here. Wiped out my JOP chains to redo them...

### Fixed

- Call `lapse.mjs` rather than `code.mjs`
- Makefile for kpatch builds all currently available

### Changed

- Use relative locations rather than absolute
- Changed kpatch binaries to just be shellcode vs full ELFs
  - 5,216 bytes to 257 bytes.
- Build kpatch binaries with `-Os` rather than `-O`
  - 257 bytes to 233 bytes.
- Renamed/Formatted `CHANGELOG.md`, `README.md`, and `LICENSE`
2025-05-12 14:42:31 -07:00
Al Azif
b9f5957555 Initial commit 2025-05-12 14:30:43 -07:00