PiXploitHosthttps://github.com/c0d3m4st4/PiXploitHostUsa tu Raspberry Pi (cualquier modelo) para alojar los exploits de diferentes consolas y protegerlas contra actualizaciones no deseadas.
Todo esto se ha hecho en una Raspberry Pi con Raspbian Jessie y con IP estática en una red local. En lugar de usar una IP estática se puede añadir una reserva en el router para que a la Raspberry siempre le asigne la misma dirección IP por DHCP. Cualquiera de los 2 métodos es válido, sólo es necesario que la Raspberry tenga siempre la misma IP.
He escrito la guía después de instalar todo y en un servidor ya funcionando basado en Raspbian Jessie. Espero no haberme dejado ningún paso necesario ni haberme olvidado de ningún paquete por instalar. Si algo no funciona, decidmelo y lo miro.
Tened en cuenta que uso el usuario "pi" por defecto. A lo mejor no es la mejor idea puesto que puede ejecutar cosas con sudo, así que sois libres de borrar el usuario "pi" y usar cualquier otro que hayáis creado. Mi Pi no da servicio fuera de mi red local, así que no debería haber ningún problema de seguridad.
Todos los comandos de la guí se ejecutan desde el terminal en la propia pi.
Sólo están incluidos los exploits para PS4, el resto lo añadiré en un futuro, aunque no tienen mucho sentido (quizá el de WiiU para el que no haya comprado uno de los juegos recomendados en la eShop).
Novedades02/06/2018
- Eliminado soporte para 4.05
- añadido soporte para 5.05
- Si actualizas desde la versión anteior, debes hacer la parte del manual que indica los cambios a realizar en el fichero .htaccess
- Si actualizas desde la versión anterior, también puedes borrar los ficheros no utilizados en el directorio html de tu servidor Apache.
14/03/2018
Añado de nuevo el exploit de Specter para poder enviar payloads en formato bin.
Añadido un script para el envío de payloads en formato bin en PHP. Puedes conectar al servidor web de la RPi desde tu teléfono y enviar el payload seleccionado después de haber cargado el exploit d eSpecter en la consola desde el navegador o la guía de usuario.
Para el script de envío de payloads en formato bin es necesario instalar PHP en la Raspberry Pi. Instrucciones de instaación más adelante en esta guía. Esto es opcional, sólo lo necesitas si pretendes enviar exploits en formato bin.
Tras la instalación de PiXploitHost, necesitas modificar el archivo config.php dentro de /var/www/html/ps4/payload_sender/ , con la IP de tu PS4 (necesitas poner una IP fija para que esto funcione).
nano /var/www/html/ps4/payload_sender/config.php
Los payloads en formato bin deben ser copiados al directorio /var/www/html/ps4/payload_sender/bin_payloads/ PAra hacer esto puedes usar cualquier cliente SFTP como WinSCP (
https://winscp.net) u otro. Haz login a tu RPi con el usuario pi, navega hasta dicho directorio con el cliente SFTP y sube ahí los ficheros bin.
Para acceder al script de envío de payloads en formato bin desde tu teléfono, navega hasta
http://IP_RASPBERRY_PI/ps4/payload_sender/ selecciona el payload a enviar desde el menú y pulsa el botón de enviar.
06/03/2018
Soporte para 4.55
Cómo actualizar desde la versión anterior.
PAra actualizar desde una versión anterior sigue los pasos de la guía desde "Ahora, clonamos el repositorio y los submódulos" de la sección "Clonando el repositorio". Luego sigue la guía para editar el fichero .htaccess y reiniciar el servidor Apache. Eso es todo.
¡OJO! El script de "instalación" moveFiles.sh borrará todos los contenidos del directorio /var/www/html/ así que si usas la RPi para servir otras páginas desde dicho directorio, haz una copia de seguridad antes, o modifica el script según tus necesidades.
19/02/2018
Versión inicial.
Soporte para 4.05
Instalando servidor de DNS DNSmasqInstala el paquete DNSmasq DNS server:
sudo apt-get install dnsmasq
Añadde las entradas DNS "falsas":
sudo nano /etc/dnsmasq.conf
Añadir las siguientes líneas al final del fichero (reemplaza IP_ESTATICA_RPI con la IP de tu Raspberry). Si hay otras direcciones a bloquear, decidmelo, he picoteado de aquí y allá en la recopilación. Espero no haberme dejado nada.
# Wii U Update Blocker
address=/nus.cdn.shop.wii.com/127.0.0.1
address=/nus.cdn.wup.shop.nintendo.net/127.0.0.1
address=/nus.wup.shop.nintendo.net/127.0.0.1
address=/nus.c.shop.nintendowifi.net/127.0.0.1
# PS4 Update Blocker
address=/manuals.playstation.net/**IP_ESTATICA_RPI**
address=/.net.playstation.net/**IP_ESTATICA_RPI**
address=/.ps4.update.playstation.net/**IP_ESTATICA_RPI**
address=/gs2.ww.prod.dl.playstation.net/**IP_ESTATICA_RPI**
address=/.207.net/127.0.0.1
address=/.akadns.net/127.0.0.1
address=/.akamai.net/127.0.0.1
address=/.akamaiedge.net/127.0.0.1
address=/.cddbp.net/127.0.0.1
address=/.ea.com/127.0.0.1
address=/.edgekey.net/127.0.0.1
address=/.edgesuite.net/127.0.0.1
address=/.llnwd.net/127.0.0.1
address=/.playstation.com/127.0.0.1
address=/.playstation.net/127.0.0.1
address=/.playstation.org/127.0.0.1
address=/.ribob01.net/127.0.0.1
address=/.sbdnpd.com/127.0.0.1
address=/.scea.com/127.0.0.1
address=/.sonyentertainmentnetwork.com/127.0.0.1
Control X para salir de nano, luego S + enter para salvar.
Reiniciamos el servicio:
sudo service dnsmasq restart
Comprobar que funciona correctamente. Si haces ping a alguno de los dominios de la lista anterior,el resultado debe ser la IP asignada en el fichero de configuración. Asegurate de que funciona!
ping www.google.com
PING www.google.com (172.217.19.132) 56(84) bytes of data.
64 bytes from par03s12-in-f132.1e100.net (172.217.19.132): icmp_seq=1 ttl=53 time=18.9 ms
ping manuals.playstation.net
PING manuals.playstation.net (**IP_ESTATICA_RPI**) 56(84) bytes of data.
64 bytes from **IP_ESTATICA_RPI**: icmp_seq=1 ttl=64 time=0.065 ms
ping www.sonyentertainmentnetwork.com
PING www.sonyentertainmentnetwork.com (**127.0.0.1**) 56(84) bytes of data.
64 bytes from localhost (**127.0.0.1**): icmp_seq=1 ttl=64 time=0.061 ms
Instalando y configurando el servidor web ApacheInstalar el paquete del servidor Apache
sudo apt-get install apache2 -y
Damos permisos al usuario pi
sudo chown -R pi:www-data /var/www
sudo chmod u+rxw,g+rx-w,o-rwx /var/www
sudo chmod g+s /var/www
Añadimos unas reglas en el fichero var/www/html/.htaccess
Primero vamos a cargar el módulo rewrite de Apache
sudo a2enmod rewrite
Y añadimos las reglas al fichero htaccess
nano /var/www/html/.htaccess
Añadimos estas líneas al fichero (si estás actualizando desde la versión anterior, borra o comenta la línea que tenía el RedirectMatch). El fichero debe quedar así, más tus propias reglas si tienes algo más predefinido.
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_USER_AGENT} "PlayStation 4 5.05" [NC]
RewriteRule ^document/[a-z]{2}/ps4(.*)$ PiXploitHost/ps4/ps4_505_index.html [L,R]
RewriteCond %{HTTP_USER_AGENT} "PlayStation 4 4.55" [NC]
RewriteRule ^document/[a-z]{2}/ps4(.*)$ PiXploitHost/ps4/ps4_455_index.html [L,R]
Control X para salir de nano, luego S + enter para salvar.
Editamos el fichero de configuración de Apache para permitir redirecciones
sudo nano /etc/apache2/apache2.conf
Buscar
<Directory /var/www/>
...
</Directory>
Editar y dejar como esto:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Control X para salir de nano, luego S + enter para salvar.
Reiniciamos Apache para aplicar los cambios:
sudo service apache2 restart
Puedes probar si el servidor Apache está funcionando accediendo desde un navegador en cualquier equipo dentro de la misma red local a
http://**IP_ESTATICA_RPI**Instalación de PHP (opcional, sólo neesario si se quiere usar el script para envío de payloads en formato bin)sudo apt-get install php libapache2-mod-php -y
Clonando el repositorioPrimero, instalamos git.
cd ~
sudo apt-get install -y git dialog
Ahora, clonamos el repositorio y los submódulos
git clone https://github.com/c0d3m4st4/PiXploitHost.git
cd PiXploitHost
git submodule init
git submodule update
Movemos los ficheros del host al document root de Apache. Ejecutar estos comandos desde el directorio PiXploitHost.
sudo chmod +x moveFiles.sh
./moveFiles.sh
cd ..
rm -rf PiXploitHost
Esto moverá todos los ficheros necesarios al document root por defecto de Apache2 en /var/www/
Si has cambiado la ubicación del document root, necesitas modificar el script y la configuración del servidor con las rutas correspondientes. No me meto en detalles, si lo has cambiado, sabrás hacerlo.
Pasos finales en la PS4 Deshabiliatar las actualizaciones automáticas (Menu superior - Ajustes - Sistema - Descargas automáticas - DESHABILITA TODO)
Configuración de red (Menu superior - Ajustes - Red - Configurar conexión a internet - Usar cable (o WiFi si es tu caso) - Personalizado - IP manual - DNS manual - DNS primario: **IP_ESTATICA_RPI** - DNS secundario: 0.0.0.0 - MTU automático - No usar proxy)
Y eso es todo. Si ahora vas a Menú superior - Ajustes - Guía de usaurio, y todo está bien configurado, debería abrir tu host en lugar de la guía, y ya puedes lanzar desde ahí los explits.
CréditosTodos los iconos hechos por Freepik (
http://www.freepik.com) de
http://www.flaticon.comCódigo de los exploits
xvortex (
https://github.com/xvortex)
idc (
https://github.com/idc)
LightningMods (
https://github.com/LightningMods)
Specter (
https://github.com/Cryptogenic)
Stooged (
https://github.com/stooged)