LightningMods 73f3878b4d etaHEN 1.9B Release
- the elfldr plugin is no longer required for loading plugins (or anything)
- Added Byepervisor (By @PS5Dev) to etaHEN for 2.xx (auto triggers rest mode too)
- [2.xx ONLY] Added Kernel patches for mprotect, the dir_depth limit and MMAP RWX
- Removed the No longer needed Syscore patches
- Added a Lite mode (kstuff or HEN ONLY) mode
- Removed the DB triggers from etaHEN and moved them to itemzflow for all fws
- etaHEN daemon loading time decreased from 5-6 secs to 1 secs
- Shellcore FPKG Required FW patches By @Echo for 2.xx
- Added a Remote Play menu to the etaHEN toolbox (will activate the account for you)
- Added the external HDD menu to the etaHEN toolbox utilites section
- Added an Extras menu to the etaHEN toolbox utilites section which includes the NP enviroment and additional content manager
- Added a Plugin auto start menu (illusion cheats included with Itemzflow)
- etaHEN will now wait for kstuff to fully load before continuing
- Any Plugin not enabled via the Plugin auto start menu will NOT auto start when you load etaHEN
- Clicking the Install the Store button or loading plugins will no longer freeze until they are done, those are now done asynchronously
- after loading etaHEN the etaHEN toolbox will stop the home menu before injecting (see the notification)
- Improved stability when rebooting or shutting down the PS5
- Removed the Cheats menu to add it back later in the next update (ran out of time)
- Added React bundle (all FWs) & Self (only on 2.xx) decryption support to FTP
- etaHEN can now be loaded via Johns Elf loader (mostly for 2.xx since 4.xx requires kstuff being sent to 9020)
- Added support for the UMTX exploit
- Stability improvements for restarting and shutting down (without plugins enabled)
- a lot of changes made internally to etaHEN to focus on stability

- Added a Testkit menu which wont let retails in (for now)
  - Console Info Overlay
    - On [Custom]
    - On + APU Temp
    - On + Service Ports + temp
    - Off

   - Trial System Software Expiration overlay
    - Off
    - (ON) 1 Day left
    - (ON) 2 Days left
    - (ON) Expired

- Added TestKit privacy overlay, when etaHEN is active the serial number, model name, and MAC address in the overlay will be censored
2024-12-25 15:47:34 -05:00
2024-12-25 15:47:34 -05:00
2024-12-25 15:47:34 -05:00
2024-12-24 16:17:16 -05:00
2024-12-25 15:47:34 -05:00

etaHEN - AIO Homebrew enabler

etaHEN

🚀 Support the Project

If you find this project useful and would like to support its continued development, consider buying me a coffee! ko-fi

Official PS5 exploit website (auto loads etaHEN)

Features

  • ★ etaHEN toolbox (debug settings replacement)
  • Custom etaHEN Plugins
  • [Toolbox] Install the Homebrew Store on the console
  • [Toolbox] ★Rest Mode Options
  • [Toolbox] Remote Play Menu
  • [Toolbox] Plugin Menu and Plugin auto start menu
  • [Toolbox] External HDD Menu
  • [Toolbox] TestKit Menu
  • [Toolbox] Blu-Ray license activation
  • [Toolbox] etaHEN credits and supporters
  • [Toolbox] Auto open menu after etaHEN loads
  • React bundle (all FWs) & Self (only on 2.xx) FTP decryption Support
  • 2 seperate daemons for improved stability and reliability
  • the Util daemon willl be auto restarted by the main etaHEN daemon
  • Custom System Software version (custom System info)
  • kstuff for fself and fpkg support
  • etaHEN log in /data/etaHEN
  • (optional) System-wide controller shortcut to open itemzflow
  • Debug Settings
  • Game Dumper (Intrgrated with Itemzflow)
  • HEN config file for settings
  • Jailbreak IPC call (jailbreaks Homebrew apps)
  • Update blocker (unmounts update partition)
  • Optional Illusions cheats/patches Plugin
  • Optional FTP server on port 1337
  • Optional /data allowed inside apps sandboxes
  • Klog server on port 9081
  • elf loader on port 9021 (use Johns elfldr)
  • Optional PS5Debug
  • Itemzflow intergration
  • Optional Discord RPC server on port 8000, click here for setup instructions
  • Optional Direct PKG installer service on port 9090

etaHEN SDK

make your own custom plugins or payload-like ELFs for the HENV plugin via the etaHEN SDK More info Here

Upcoming features

  • [Toolbox] FPS Counter
  • [Toolbox] Cheats Menu
  • [Toolbox] change debug settings text
  • [Toolbox] On-Screen temps and other info (for retails)
  • More userland patches
  • Improved PS5 Game support (itemzflow)
  • More (consider donating)

etaHEN INI Configuration file

etaHEN's ini settings file can be found at /data/etaHEN/config.ini and can be accessed using the built-in FTP and is automatically created when you run etaHEN for the first time

Configuration Layout (toolbox)

INI Key Description Default value
PS5Debug 0 = disables PS5Debug (Sistr0) auto load 1 = enable PS5Debug auto load 1 (enabled)
FTP 0 = disables etaHEN built-in FTP 1 = enables it 1 (enabled)
discord_rpc 0 = disables Discord RPC server 1 = enables it 0 (disabled)
testkit 0 = not testkit 1 = Real Testkits ONLY 0 (disabled)
Allow_data_in_sandbox 0 = disables /data in an apps sandbox 1 = enables it 1 (enabled)
DPI 0 = disables The Direct PKG Installer service 1 = enables it 1 (enabled)
Klog 0 = disables kernel logging, 1 = enables it 0 (disabled)
ALLOW_FTP_DEV_ACCESS 0 = disables FTP developer access, 1 = enables it 0 (disabled)
StartOption 0=None, 1=Home menu, 2=Settings 3=Toolbox, 4=itemzflow 0 (None)
Rest_Mode_Delay_Seconds Delay in seconds before patching shellui coming out rest mode 0 (no delay)
Util_rest_kill 0 = dont kill the util daemon during rest, 1 = Do kill it on rest 0 (disabled)
Game_rest_kill 0 = dont kill the open game during rest, 1 = Do kill it on rest 0 (disabled)

DPI API details for tool creators

etaHEN's Direct PKG Installer currently is very simple and is considered a WIP the service flow is as follows

  1. Connect to etaHEN's TCP server via port 9090 (using the PS5s IP)
  2. Send a URL to etaHEN in the following json format
{ "url" : "http://xxxx" }
  1. etaHEN will then send back the return value (0 on success)
{ "res" : "0" }
  1. etaHEN will close the client socket after the return json is sent

Jailbreaking an app (FPKG) using etaHEN (non-whitelist method, Network required)

enum Commands : int8_t {
  INVALID_CMD = -1,
  ACTIVE_CMD = 0,
  LAUNCH_CMD,
  PROCLIST_CMD,
  KILL_CMD,
  KILL_APP_CMD,
  JAILBREAK_CMD
};

struct HijackerCommand
{
  int magic = 0xDEADBEEF;
  Commands cmd = INVALID_CMD;
  int PID = -1;
  int ret = -1337;
  char msg1[0x500];
  char msg2[0x500];
};

int HJOpenConnectionforBC() {

  SceNetSockaddrIn address;
  address.sin_len = sizeof(address);
  address.sin_family = AF_INET;
  address.sin_port = sceNetHtons(9028); //command serve port
  memset(address.sin_zero, 0, sizeof(address.sin_zero));
  sceNetInetPton(AF_INET, "127.0.0.1", &address.sin_addr.s_addr);

  int socket = sceNetSocket("IPC_CMD_SERVER", AF_INET, SOCK_STREAM, 0);
  if (sceNetConnect(socket, (SceNetSockaddr*)&address, sizeof(address)) < 0) {
    close(socket), socket = -1;
  }

  return socket;
}

bool HJJailbreakforBC(int& sock) {

  // send jailbreak IPC command
  HijackerCommand cmd;
  cmd.PID = getpid();
  cmd.cmd = JAILBREAK_CMD;

  if (send(sock, (void*)&cmd, sizeof(cmd), MSG_NOSIGNAL) == -1) {
      puts("failed to send command");
      return false;
  }
  else {
    // get ret val from daemon
    recv(sock, reinterpret_cast<void*>(&cmd), sizeof(cmd), MSG_NOSIGNAL);
    close(sock), sock = -1;
    if (cmd.ret != 0 && cmd.ret != -1337) {
      puts("Jailbreak has failed");
      return false;
    }
    return true;
  }

  return false;
}

int main()
{

     int ret = HJOpenConnectionforBC();
     if (ret < 0) {
         puts("Failed to connect to daemon");
         return -1;
     }
     if (!HJJailbreakforBC(ret))
     {
          puts("Jailbreak failed");
          return -1;
     }

     return 0;
}

Contributors

Testers

Join us on the Support Discord

Description
No description provided
Readme GPL-3.0 62 MiB
Languages
C++ 50%
C 49%
CMake 0.5%
Python 0.3%