DroidPPPwn
Una interfaz de Android que usa PPPwn_cpp_android
- Incluye una GUI, un binario PPPwn_cpp compilado específicamente para arm-android y x86-android, además de stage1.bin + stage2.bin para todos los firmwares compatibles (7.00-11.00).
- Para los firmwares 9.00, 9.60, 10.xx, 11.00,
stage2.bin
se toma del repositorio Sistr0, es decir, puede cargar la carga útil GoldHEN. - Para firmwares 7.0x, 7.5x, 8.0x, 8.5x, 9.03, 9.04
stage2.bin
se toma de EchoStretch ps4-hen-vtx-pppwn
, es decir, puede cargar la carga útil de PS4HEN. - Puede usar su propio
stage2.bin
colocándolo en su carpeta raíz de almacenamiento externo a través de adb push stage2.bin /sdcard/
Requisitos
- Un dispositivo Android con
root access
, versión mínima Android KitKat 4.4 - Un cable o adaptador USB OTG
- Un adaptador USB Ethernet
- Un cable ethernet
Alternativamente, si su dispositivo tiene un puerto Ethernet integrado, puede usarlo, como en el caso de las cajas de TV Android.
Uso
- Descargue la última versión de este repositorio e instálela en su teléfono Android.
- En tu PS4: sigue las instrucciones del PPPwn original para configurar la conexión ethernet.
- Inicie la aplicación DroidPPPwn y seleccione el firmware de su PS4.
- Presione el botón
Start
en la aplicación y simultáneamente X en su controlador cuando esté en la pantalla Test Internet Connection
. - Espere hasta que el exploit llegue a la etapa 4 y el mensaje se imprima en su monitor.
- Si el exploit falla, haga clic en el botón
Start
nuevamente para detenerlo y repita nuevamente el último paso.
Ejemplo ejecutado aquí: https://youtu.be/SQT7AgTtrDY
Acerca de la creación y empaquetado de binarios PPPwn
Algunas explicaciones sobre los binarios proporcionados en este paquete.
Para obtener permiso de ejecución, tuve que engañar al sistema de empaquetado de Android Studio incluyendo un pppwn.jar
falso (que es un zip, lo encontrarás en la carpeta del proyecto app/libs) para extraer todos los archivos binarios en la aplicación privada predeterminada. carpeta /data/data/it.deviato.droidpppwn/lib/
. Inmediatamente después de la instalación, encontrará 4 archivos extraídos, son bibliotecas falsas llamadas libXXX.so
, que en realidad también son archivos zip, cada uno de los cuales contiene un binario para una arquitectura diferente (más los distintos archivos stage1
y stage2
).
Una vez que abres la aplicación por primera vez, reconoce tu arquitectura y extrae el binario apropiado. Los cuatro archivos y arquitecturas relacionadas son:
- armeabi-v7a/libpppwnkk.so -> for 32bit armv7l, minimum sdk 19 (KitKat 4.4), libc shared build (cannot link static due to some ndk bugs)
- armeabi-v7a/libpppwn.so -> for 32bit armv7l/armv8l, minimum sdk 21 (Lollipop 5.0), static build
- arm64-v8a/libpppwn.so -> for 64bit armv8a+, minimum sdk 21, static build
- x86/libpppwn.so -> for 32bit x86 minimum sdk 21, static build
- x86_64/libpppwn.so -> for 64bit x86 minimum sdk 21, static build
Todos los binarios se compilan a través del NDK r25c oficial de Android, el último compatible con Android 4.4.
Si no le gustan estas versiones o no le funcionan bien, puede simplemente reemplazar el binario pppwn
en la carpeta mencionada anteriormente con su favorito.
Si desea compilarlo usted mismo , bifurqué el repositorio xfangfang original y modifiqué su CMakeLists.txt
para poder compilarlo para Android, tanto con NDK en su máquina Linux como con la aplicación Termux directamente en su dispositivo. Las instrucciones están en la bifurcación aquí PPPwn_cpp_android.
Errores conocidos
- Todos los errores anteriores solucionados
Registro de cambios
1.4.1
- Se recompilaron todos los archivos binarios a la última versión pppwn_cpp 1.1.0.
- Se agregó una opción para seleccionar el nuevo parámetro "old-ipv6" (-old) de pppwn_cpp (se usa solo cuando falla el exploit).
- Stage2.bin actualizado con la nueva versión GoldHEN para todos los firmwares 10.xx.
1.4
- Se agregó una opción para ejecutar automáticamente el exploit al inicio como un servicio en segundo plano. También puede decidir si el dispositivo debe apagarse automáticamente después de que el exploit haya tenido éxito. NOTA: es posible que deba otorgar permiso para que la aplicación se inicie automáticamente, dependiendo de su sistema/dispositivo Android (por ejemplo, para xiaomi, vaya a Configuración->Aplicaciones->Permisos->Inicio automático y marque DroidPPPwn).
- Se limpió el código y se corrigieron algunos errores menores.
1.3.1
- Se actualizaron todos los archivos stage2.bin para la carga útil ps4-hen-vtx a la última versión de EchoStretch (PPPwn-1.0310).
- Ahora también se ha agregado compatibilidad con gallinas para firmwares 7.0x.
1.3
- Se agregó una nueva compilación binaria pppwn para arquitecturas Android x86_64.
- Se agregó soporte a PS4HEN para todos los firmwares restantes. Ahora sólo quedan las versiones 7.0x sin soporte de carga útil, pero sólo con el PoC básico.
- Se agregaron dos opciones a la GUI para configurar parámetros opcionales -nw (no espere un PADI más antes de comenzar) y -rs (use la CPU para un tiempo de suspensión más preciso) para pppwn.
- Se corrigió la compilación incorrecta para x86 de 32 bits.
- Unificó el instalador con un único paquete apk para sistemas estándar y de solo 64 bits.
1.2.3
- Se recompilaron todos los archivos binarios actualizándolos a la última versión de pppwn_cpp, lo que habilita algunos archivos PS4-slim que antes no funcionaban.
- Se agregó soporte para la carga útil de Linux para el firmware 11.00, a través de una casilla de verificación que le permite cambiar entre la versión estándar GoldHen stage2 y LightningMods. Preferí mantener el cargador de carga útil estándar y no incorporar la carga útil de ps4-linux en stage2.bin, para dejarle a usted la elección de las versiones de 2gb, 3gb, 4gb. Si desea reemplazar la carga útil con la suya propia, con el cargador ps4-linux codificado preferido, sobrescriba el archivo /data/data/it.deviato.droidpppwn/lib/linux.1100 con su propio stage2.
1.2.2
- Se actualizaron los archivos stage2.bin a la última versión, ahora tiene GoldHen también para 9.60.
- Para los otros sistemas, a partir de ahora, estos son los stage2.bin incluidos para cada firmware:
- From 7.00 to 8.52 -> PoC by EchoStretch
- 9.00 -> GoldHen by Sistr0
- 9.03 / 9.04 -> LightningMods + ps4-hen-vtx payload by Sistr0 (NEEDS TESTING)
- 9.50 / 9.51 / 9.60 -> GoldHen by Sistr0 (maybe only 9.60 working?)
- 10.00 / 10.01 -> GoldHen by Sistr0
- 10.50 / 10.70 / 10.71 -> LightningMods + ps4-hen-vtx payload by Sistr0 (NEEDS TESTING)
- 11.00 -> GoldHen by Sistr0
- Como de costumbre, siempre puedes colocar tus propios stage1.bin y stage2.bin en la carpeta raíz de tu almacenamiento interno o externo (/storage/emulated/0 o lo que sea a lo que se refiere el enlace simbólico /sdcard)
1.2.1
- Se cambió el método para reconocer la arquitectura del dispositivo, que daba resultados incorrectos en algunos sistemas más antiguos.
- Se agregó un binario más para
armv7
de 32 bits, ahora tiene uno para Android 4.4 creado con libc compartido y otro para armv7l
/ armv8l
para Android 5.0+, vinculado estáticamente. - Recompilé todos los demás binarios con estática
real
(hubo un error en la versión anterior) - Algunas mejoras menores
1.2
- Se agregó soporte para Android x86 y se corrigieron compilaciones arm-v7a de 32 bits y arm-v8a de 64 bits (no más bus_error)
- Recompilé todos los binarios usando el NDK de Android en lugar del entorno Termux (resultado más limpio)
- Se agregó la opción de buscar y seleccionar la interfaz de red preferida.
- Se solucionó el problema por el cual los archivos binarios no se instalaban en dispositivos con versiones anteriores de Android.
1.1
- Se agregó soporte para arm-v7a de 32 bits con binario separado de pppwn
- Se refactorizó todo el proyecto bajando minSdk a la versión 19, por lo que ahora puede ejecutarse en Android KitKat 4.4+
- Se reemplazó stage2.bin para firmwares compatibles con los del repositorio Sistr0 para permitir la carga de cargas útiles.
- Se agregó la posibilidad de usar su propio stage2.bin.
- Otras pequeñas correcciones
1.0