[ESP8266XploitHost] Servidor de exploits en un ESP8266 (NodeMCU y similares) - Versión 2.81b (17/07)

1, 2, 3, 4, 553
c0d3m4st4
No-intro freak
4.275 mensajes
desde jun 2005
Editado 89 veces. Última: 18/07/2018 - 11:42:13 por c0d3m4st4.
Imagen


Tras el PiXploitHost para la Raspberry Pi, he creado lo mismo pero para el ya famoso ESP8266.

Versión actual: 2.81b

Todos los exploits están actualizados a día 17/07/2018

---------------------------------------------------------------------------------------------------------
Datos para los que no leen los manuales. Con esto ya no respondo a dudas de ningún tipo. El resto de cosas que podéis hacer, lo tendréis que leer.

IP: 13.37.13.37
AP: ESP8266XploitHost
Password AP: ps4xploit (la podéis cambiar luego desde el menú de herramientas para el móvil.

FTP user: ps4xploit
FTP password: ps4xploit (si cambiains la del AP, esta se cambia también).
Puerto: 21
---------------------------------------------------------------------------------------------------------


Novedades

[17/07/2018] - ESP8266XploitHost 2.81b (MANUAL EN PROCESO DE ACTUALIZACIÓN):

- Añadido xvortex HEN 1.7 modificado (he quitado el update blocker y en mi caso, que antes fallaba bastante, ni un sólo apagón desde que lo he estado pobando).
- Añadido ReactPSPlus (https://github.com/Zer0xFF/reactPSPLUS)
- Actualizados los payloads de Stooged (App2USB y DBSGBackup)
- Posibilidad de modificar el nombre del AP desde el menú de herramientas para PC/móvil (menú "Device config")
- Finalizado el soporte para SD. Podéis navegar por carpetas y lanzar payloads desde ahí en formato html/js. Es recomendable comprimir todos los ficheros con gzip.
- Añadida la opción de lanzar payloads binarios desde la tarjeta SD (menú de herramientas para móvil/PC). Los ficheros .bin deben colocarse en la carpeta \PS4\bin de la SD.
- Añadido soporte para Nintendo WiiU (sólo para FW 5.5x). Simplemente conecta la WiiU al ESP8266 y desde el navegador ve a cualquier dirección (por ejemplo: http://local.host) y lanza el exploit. El host te redirige directamente al exploit correcto para tu consola.
- Modificado el instalador offline para que en futuras versiones del host, no haya que borrar manualmente la cache. Se autoactualizará la primera vez que conectemos al ESP y abramos el menú principal.


[19/06/2018] - ESP8266XploitHost 2.71:

- Corrección de errores para los isntaldores offline de 4.05 y 4.55 (si estás en 5.05 no necesitas actualizar, no hay nada nuevo para 5.05)
- Para 4.55 hay que hacer un pequeño "apaño" hardware. Hay que mantener activo el interfaz de red, por lo que para que funcione el modo offline hay que mantener activa la opción de conectarse a internet y construir un adaptador loopback para engañarla (como efectivamente no hay conexión real, funcionarán los exploits offline perfectamente, pero si el interfaz de red no está activo, el exploit no funciona, por la manera que tiene éste de ejecutarse).
- Esta es la última versión con soporte para 4.05.


[13/06/2018] - ESP8266XploitHost 2.7:

- Actualziados AppToUSB y DBSGBackup
- Añadido Enable VR
- Añadido "Binary loader" para opder enviar payloads binarios desde el móvil
- Incluidos PS4 Cheater, reactPSPlus y UNReacPSPlus como payloads binarios para ser enviados al "Binary laoder" desde el menú de utilidades para el móvil/PC
- Actualizado xvortex HEN para 4.55 (es la versión que incluye spoof, no sé como funcionará de bien).
- Añadidos instaladores para el modo offline para todas las versiones de FW (sólo probado en 5.05 si alguien prueba las otras y tiene algún fallo, que me comente). El modo offline también funciona desde la guía. Todas las funciones que no tienen sentido sin conexión se han eliminado del modo offline (FTP, BIN loader... incluso Mira).

[31/05/2018] - ESP8266XploitHost 2.6:

- Soporte para 5.07 (las consolas con FW 5.07 son redirigidas a los exploits de 5.05 ya que funcionan en ese FW también)
- Quito el Update Blocker, ya que va incorporado en el HEN de xvortex
- Actualizado el HEN de xvortex a la versión 1.6
- Añadidos App2USB y DBSG Backup

[29/05/2018] - ESP8266XploitHost 2.5:

- Arreglado un fallo tonto que evitaba que pudieras elegir mira desde el menú "diret boot HEN" del menú de herramientas para PC/móvil
- Incluido xvortex HEN 1.5 (sólo HEN, sin mira)

[29/05/2018] - ESP8266XploitHost 2.4:

- Añadido el update blocker de LihtningMods (ejecutar una vez si queréis, y reiniciad la consola).
- Solucionados (al menos aparentemente) los problemas de carga que provocaban ciertos errores de javascript (en una slim tengo un 100% de éxito tras muuuchas pruebas).
- Un par de errores de memoria son perfectamente NORMALES.


[28/05/2018] - ESP8266XploitHost 2.3:

- Soporte para 5.05
- El payload sender ya no muestra la IP del dispositivo desde el que vayamos a enviar los exploits, así que si ahora conectamos móvil y PS4, unicamente se mostrará la IP de la PS4. Si compartimos el ESP con varias consolas, se mostrarán las IPs de todas las consolas.
- Modo "nocturno" (plantilla en negativo). Pulsar R2 o L2 para alternar (la configuración se mantiene cada vez que entremos al host desde la PS4).

[25/05/2018] - ESP8266XploitHost 2.2:

- Añadida opción al menú de utilidades para el móvil para poder cambiar la contraseña del AP (Device config)
- Añadida la versión arreglada del dumper de xvortex

[04/05/2018] - ESP8266XploitHost 2.1:

- Se añade xvortex HEN v1 (a los que les de problemas el v2, que usen este, después de mil pruebas parece que es lo único que funciona, aunque da algunos errores de memoria). Hay ciertas consolas en las que el v2 no funciona, ni el v2 ni ninguna modificación basada en él. Qué es lo que pasa ? Ni idea! En otras consolas como la mía, en la que el v2 funciona al 100% no funciona el v1, ni el Holy Grail. Yo personalmente sólo puedo usar el v2, así que es bastante dificil y lento hacer pruebas (gracias a los testers!!!). Me he cansado de que crashee la consola probando, haciendo cambios en el payload y en el userland, y no he sido capaz. Así que como voy a estar ocupado el resto del mes con otras cosas, incluyo el v1 para los que tengan problemas con el v2.

- Añadido soporte preliminar para tarjetas SD. Esto va a ser opcional. Seguiré usando la memoria flash para lo básico, y utilizaré la SD para meter alguna cosa extra, así que el que quiera cacharrear y añadirlo, que lo haga, y el que no, que esté tranquilo que podrá seguir sin incluir el módulo SD. Esta sólo lo justo para que el que se anime pueda probar que funciona el módulo y la instalación, pero no tiene funcionalidad. Al querer mantener las 2 cosas (flash y SD) hay que hacer bastantes cambios y ahora mismo no voy a tener tiempo, lo retomaré a final de mes.

Para el esquema de instalación, echad un vistazo a la sección "Añadir un módulo SD".

[20/04/2018] - ESP8266XploitHost 2.0b2 (beta):

- Arreglado el problema del scroll con R1/L1 en el menú de 4.05 (y movidos los HEN al principio de éste).
- Reemplazo Enable VR con HEN+VR en 4.05
- Arreglo un fallo estúpido con los payloads de xvortex en 4.05
- Actualizado en HEN+VR de 4.55 a la v2

[15/04/2018] - ESP8266XploitHost 2.0b (beta): añadido HEN Holy Grail tras muchas peticiones (pero da bastantes errores de memoria, que conste), scroll en el menú de exploits con R1/L1 (ojo! sólo funciona en la guía, en el navegador se vuelve loco porque ya utiliza todos los botones del mando), redirección directa al menú de exploits correspondiente según la versión de la consola, ya no hay selector de versión, añadido soporte para los exploits de PS3 de PS3Xploit.com e intalador de HB launcher para Nintendo Switch 3.0

[11/04/2018] - ESP8266XploitHost 1.0 (no beta): actualizados los exploits de Stooge a la última versión, Localizada la causa de los fallos con algunos juegos, vuelvo a la frecuencia normal de trabajo del ESP8266 a 80MHz, plantilla super optimizada (tarda unos 2 segs en cargar) con scroll para no tener todo apelotonado en la pantalla, nueva opción para asignar un exploit a una nueva opción del menú principal (para pruebas, o lanzar exploits no incluidos en el host), pequeños cambios en el diseño del menú de herramientas para el móvil.

[08/04/2018] - Primera beta pública - ESP8266XploitHost 1.0b4


Esto no es una mera plantilla, se ha escrito el software para el ESP8266 desde cero y tratando de optimizar la potencia (que no es mucha) del ESP8266 al máximo,

Flashear la imagen

Para flashear la imagen se utiliza NodeMCU PyFlasher-3.0 (enlace en el apartado de descargas).

Para NodeMCU usad esta configuración (para otras placas basadas en el ESP8266 debería ser la misma, pero no lo sé, buscad en Google si no funciona)

- Serial port: el puerto asignado por el sistema operativo.
- Firmware: el fichero bin qeu descargáis.
- Baud rate: 115200
- Flash mode: DIO (para NodeMCU, para otros debería ser igual, pero si no funciona buscar en Google)
- Erase flash: yes y con la opción de wipe (estamos flasheando una imagen entera de 4M)

Imagen


Características:

- SoftAP con DHCP ("ESP8266XploitHost" con contraseña "ps4xploit")
- Servidor web (13.37.13.37)
- Servidor DNS (para poder acceder desde la guía)
- Servidor FTP (usario "ps4xploit", contraseña "ps4xploit", puerto 21, limitar a 1 conexión simultánea)
- Autoactualizable (se sube el fichero de actualización por FTP, reiiciar, y queda actualizado)
- Direct boot (posibilidad de establecer un exploit fijo con el que arrancar directamente sin pasar por el menú)
- Menú de opciones para móvil/PC vía navegador (podemos subir ficheros sueltos, enviar payloads binarios al exploit de Specter, seleccionar el exploit para el direct boot, formatear la partición de datos de la flash en caso de corrupción, ver información del dispositivo... y más cosas que vendrán) (13.37.13.37/tools)
- Se puede utilizar a configuración de WiFi fácil de la consola. Pasa la prueba de conexión y queda guardada, no hay que teclear IPs a mano.
- Forzado el wifi y la frecuencia de la CPU al máximo que da el ESP8266 para agilizar la carga y evitar errores)
- Soporte para SD para poder cargar payloads en formato HTML+JS o para almacenar payloas binarios para enviarlos con la herramienta "binary payload sender" del menú de herramientas para el móvil/PC
- Soporte para PS4, FW 4.55 y 5.05
- Soporte para PS3
- Soporte para WiiU, FW 5.5x
- Soporte para Nintendo Switch, FW 3.0 (sólamente el instalador para HBL)
- Soporta redirecciones automáticas a la página con los exploits para tu consola/FW correspondiente.


FTP

Servidor FTP escuchando en el puerto 21 (usuario "ps4xploit", password "ps4xploit")

Para Filezilla, tenéis que usar esta configuración en el site manager/gestor de sitios

- Pestaña general: puerto 21, protocolo FTP, y encriptación, plain FTP (insecure)
- En la pestaña de transferencia: modo pasivo y limitar el número de conexiones simultáneas a 1

También podéis usar AndFTP desde Android, funciona muy bien.

No os olvidéis de conectar primero alpunto de acceso ESP8266XploitHost antes de conectar al FTP, porque estáis en distinta red!


Tools menu

He includio un pequeño menú con utilidades para ser utilizado desde el navegador de un PC / móvil. Para los que hagan plantilas.. este menú no es modificable. Está grabado a fuego en el código del ESP, no me gustó una mierda que se apropiaran de mi trabajo en el PiXPloitHost para cambiar las imágenes y sacarlo con otro nombre. Ahora se sabrá quien copia y quien no :)

Para aceder al menú, debéis conectar el WiFi al punto de acceso ESP8266XploitHost , y navegar a la dirección “13.37.13.37/tools” y veréis esto:

Imagen


Upload file

Se usa para subir ficheros sueltos, como una actualización de mi firmware para el ESP8266, o un payload binario para enviar desde el ESP8266 a la consola al exploit de Specter mediante la utilidad "Binary payload sender".

Para subir una plantilla nueva o actualizar ficheros de explits etc, podéis usar FTP, pero para mis pruebas era muy util así que he decidido dejarlo.

Imagen



Send binary payload

Muy util para enviar payloads no incluidos en el ESP8266XploitHost, o no disponibles en formato html+js.

Lista todos los ficheros disponibles con extensión .bin en la partición de datos de la flash.

Para enviarlo , sólo hay que seleccionar el payload, y la IP de la consola. La IP del móvil no sale listada, pero si conectáis varias consolas de las soportadas, os aprecerán todas sus IPs. El DHCP empieza a repartir IPs en riguroso orden empezando por la 13.37.13.136, así que saber cual es la consola es tan fácil como saber en qué orden habéis conectado la PS4, o si no, sólo queda mirar en el apartado de red de la consola.


ImagenImagen


Direct boot HEN

Esta utilidad sirve para establecer un HEN para que arranque directamente, sin pasar por el menú del ESP8266XploitHost.

Se lista una serie de ficheros disponibles, en concreto todos los que tengan la palabra "hen" en ellos, y ".html" (esto para los que quieran hacer plantillas personalizadas y no quieran respetar mis nombres para los html de los exploits. No os equivoquéis de versión al seleccionar, sale listado tanto para 4.05 como para 4.55

Se salva y ya está. La próxima vez que accedamos a la guía o a la dirección 13.37.13.37 dsde el navegador, cargará directamente el HEN que hayamos seleccionado.

Imagen


Reset direct boot settings

Borra la configuración de arranqeu directo que hayamos puesto. Lo podéis usar cuando no queráis arrancar directamente y sin pasar por el menú principal de exploits. Pide confirmación.

Set custom exploit menu

Nos permite añadir un exploit nuevo para lanzarlo desde la opción "Custom" del menú principal del host (la calavera). Simplemente hay que subir los archivos js y html (los js deben estar correctamente referenciados deltro del html o no funcionará) del exploit for ftp, y asignar desde esta herramienta a esa opción del menú el archivo html que lo lanza.

Útil para el que quiera hacer pruebas, o añadir alguna cosa de las que no están en el host.

Imagen


Format SPIFFS

Formatea la partición de datos de la flash. Pide confirmación. Perderéis todos los datos y tendréis que subir de nuevo todos los ficheros por FTP (sólo se borran los datos, los servicios siguen funcionando).

También tendréis que usarlo en caso de corrupción de las flash por cualquier cosa (a mi me ha pasado durante el desarrollo, no sé si por casualidad, o sería algún bug en el código, así que la puse para mi, pero la dejo ahí para todos, por si las moscas). Sabréis que algo ha pasado cuando no cargue páginas, no veáis los iconos, o si acedéis por FTP y veis que sobran archivos, los hay duplicados, y cosas así. Espero que no pase, y que sólo fuera algún bug mía ya solucionado.

Device config

Desde aquí podremos modificar el nombre y la contraseña del AP, para que los vecinos que lean el foro no nos puedan modificar cosas en el ESP8266 al ser la contraseña pública :P Una vez modificados, y guardados los cambios, el ESP se reiniciará solo. Habrá que volver a conectar al nuevo AP. Si no aparece listado es que no se ha reiniciado y tendréis que reiniciar de forma manual. Esto puede ocurrir cuando hacemos el cambio nada más flashearlo sin haberlo reiniciado antes.

Imagen


Device info

Muestra diversos parámetros del ESP8266. Si tenéis algún problema con alguna placa que no sea una NodeMCU intentad cargar esto y poner por aquí la placa en cuestión y un pantallazo de estos datos.

Imagen



Uso del ESP8266

Podéis alimentarlo desde la propia PS4. El LED (en nodeMCU solamente muy posiblemente) se mantendrá encendido hasta que algún dispositivo se conecte al punto de acceso (PS4, móvil, PC, o cualquier cosa que uséis como cliente). Después de eso, solamente parpadeará durante la transferencia de ficheros desde el ESP8266 a la consola o móvil. El resto del tiempo permanecerá apagado.

No tengo más placas para probar ni recompilo para probar a ciegas. Podéis considerar donarlas si queréis que el LED funcione bien en otras placas, hay mil clones, y yo sólo uso clones de NodeMCU, siempre el mismo clon, y comprados siempre al mismo chino para no tener sorpresas xD

En ajustes de red de la consola usad WiFi y configuración fácil. Esperad que aparezca el punto de aceso “ESP8266XploitHost”, conectáis, metéis la contaseña "ps4xploit" sin comillas y testeais la conexión, que la pasará sin problemas, quedando salvada la configuración. No hay que meter absolutamente nada a mano, ni IPs, ni DNS, nada de nada, sólo la contraseña.

Tras conectar, abrir la guía de usuario o ir con el navegador a la dirección 13.37.13.37 y se os mostrara el menú del ESP8266XploitHost


Fallos conocidos

Algunos juegos no funcionan correctamente en 4.55.

Algunas consolas dan problemas con la versión 2 de xvortex, en esas debéis usar la etiqueteda como v1.

Kernel pancs en 5.05.

Es bastante aleatorio, pasa en todos los hosts y todas las consolas tarde o temprano, pero parece que algunas son más propensas a ello. Recomendaciones para intentar minimizarlos:

- No tener conectado nada en los puertos USB de la consola al lanzar el exploit.
- Al arrancar, dejar pasar como unos segundos antes de abrir el navegador o la guía de usuario para cargar el host.


Personalización / Plantillas

Con el acceso por FTP os doy la posibilidad de cambiar la plantilla si no os gusta la mía. No soy diseñador, así que de HTML y CSS, controlo lo justo para hacer cosas simples pero funcionales.

Cosas a tener en cuenta.

- El sistema de ficheros del ESP8266 ahora mismo no soporta directorios, por lo que todo tiene que ir en el raíz. También hay un límite de 32 caracteres para los nombres de archivo.

- Si entráis por FTP todo lo que empieza por "455_" y "505_" son los ficheros necesarios para los exploits, vuestra plantilla debe respetar esas llamadas a los "index.html" que empiecen con esos nombres

- Las páginas iniciales deben ser "ps4_505_index.html" o "ps4_455_index.html". El firmware del ESP se encarga de hacer la redirección correcta dependiendo de vuestro firmware a dichas páginas, si no se llaman así, no las va a encontrar.

- Aunque lo que veáis, va todo en formato gzip, las referencias dentro de vuestra plantilla las hacéis normalmente, sin terminación en ".gz". Mi código se encarga de buscar una versión en formato gzip de cada archivo y es la que envío, modificando las cabeceras. También funciona sin formato gzip, pero hay que dar vidilla al WiFi, así que es recomendable usarlo.

- Para que cargue rápido hay que optimizar el número de peticiones al ESP8266, así que es recomendable incrustar CSS, JS e imágenes en el index, siempre que sea posible. Hay una gran diferencia en los tiempos de carga del menú, de hacerlo a no hacerlo.

- El menú tools no es posible personalizarlo. Lo genera el ESP8266 (si alguien cambia 4 iconos y pretende atribuirse todo el trabajo al distribuir imágenes, esta vez se lo tendrá que currar un poco más, o quedará retratado. A todo el mundo le gustan las flores, pero en vez de robárselas al vecino, planta las tuyas).

Lo suyo ahora es que se distribuyan plantillas, y no la imagen completa. Todo el mundo puede subirlas, con esa idea añadí el servidor FTP.

Si hacéis alguna chula ponedla en el hilo, y la enlazo desde este post.


Notas

Actualicé a 4.55, así que no daré más soporte que lo que hay para 4.05 (tampoco para el PiXploitHost). El menú sigue ahí, pero con lo que está, no voy a actualizar payloads ni añadir nuevas opciones para 4.05.

Podéis postear aquí los problemas que os de, pero no voy a responder a nada que esté en este manual. Leedlo, que a mi me ha costado escribirlo.


Creditos

Gracias a los beta testers, a los desarrolladores de los exploits (flat_z, qwertyoruiopz, Specter, Stooged, xvortex), y a la comunidad del ESP8826, la cantidad de documentación que hay para este bicho es inmensa.

Si quieres distribuir tus propias imágenes para distribuir tus propias plantillas, da los créditos correspondientes. Crear una plantilla no tiene misterio, lo gordo está en lo que no se ve. Una plantilla no es un host por muy bonita que sea, ni les llegan las páginas a los clientes por arte de magia. Hay un montón de trabajo y tiempo metido en este bicho, una plantilla la haces en 10 minutos. No robes el trabajo de los demás sin dar las gracias por lo menos.


Añadir un módulo SD

Para añadir un módulo SD, seguid este esquema. También hay que conectar VDD del módulo SD a 3.3V en el nodeMCU, y VSS a GND.

Imagen


Reutilizando un PCB de SD2Vita como módulo SD

Imagen


Donaciones

Si aprecias mi trabajo y te quieres invitar a un café, puedes hacerlo en esta página. Gracias! :) Realmente lo invertiré en nuevos cacharros electrónicos con los que seguir trasteando :P

https://ko-fi.com/E1E0BN94


Descargas

NodeMCU PyFlasher 3.0

[19/06/2018] ESP8266XploitHost 2.71 (ultima versión con soporte para 4.05)

[17/07/2018] ESP8266XploitHost 2.81b
Danirodri
Dohko caballero de EOL
1.697 mensajes
desde ene 2003
en El Santuario
guau, dos palabras IM PRESIONANTE
hay algun tutorial para personalizar los iconos y fondo
Genial @c0d3m4st4 muchísimas gracias por el curro, mañanas mismo lo pruebo
aureo1
MegaAdicto!!!
1.598 mensajes
desde ene 2007
en guadalajara
Editado 4 veces. Última: 8/04/2018 - 11:21:50 por aureo1.
ENHORABUENA gran curro,probado y funcionando al 100%
c0d3m4st4
No-intro freak
4.275 mensajes
desde jun 2005
Editado 6 veces. Última: 10/04/2018 - 00:55:09 por c0d3m4st4.
Danirodri escribió:guau, dos palabras IM PRESIONANTE
hay algun tutorial para personalizar los iconos y fondo


añadidas varias indicaciones al respecto en el primer post
leonpe
Adicto
183 mensajes
desde ene 2007
en Madrid
Gran trabajo @c0d3m4st4! Muy interesante que se pueda utilizar otro dispositivo para lanzar payloads, así se puede probar todo bien antes de actualizar el .bin, que es lo más coñazo del proceso.

Lo probaré en cuanto tenga ocasión.
tubes
Fiber
1.282 mensajes
desde jun 2016
en Benicàssim
Editado 1 vez. Última: 8/04/2018 - 10:30:11 por tubes.
Me pongo a flashear y trastear con tu nuevo host de inmediato! ratataaaa
Yo soy más de té pero un café siempre va bien para empezar la mañana [sonrisa]
Imagen

Probado y funcionando al 100% con mi ESP8266 v3 de WeMoS (CH340) flasheado con ESPFlashDownloadTool_v3.4.8.2

Imagen
hispahack
Habitual
71 mensajes
desde ene 2005
en BCN
Gran trabajo!

Enhorabuena!
c0d3m4st4
No-intro freak
4.275 mensajes
desde jun 2005
Editado 6 veces. Última: 10/04/2018 - 00:55:27 por c0d3m4st4.
Tengo una duda, no consigo conectarme mediante FTP a la PS4 (si es que es siquiera posible)
He conseguido sin problemas conectarme mediante FTP al ESP8266 por el puerto 21 con Filezilla y usando ps4xploit como usuario y contraseña estando conectado al punto de acceso ESP8266XploitHost.
Pero no soy capaz de hacer lo propio con la PS4.
Lanzo el payload de FTP de xVortex y me sale la notificación en pantalla de servidor (13.37.13.136) y puerto (1337) pero cuando intento establecer la conexión FTP con Filezilla es incapaz.

Imagen
1, 2, 3, 4, 553