@Colin tiene una gran respuesta para el jailbreak de Yulu, pero hice cosas un poco diferentes que pueden ser útiles para las personas. Su respuesta se centra en crear un nuevo demonio con un nuevo nombre para que efectivamente tenga dos demonios ejecutando SSH. Una para el USB y otra para otras conexiones TCP. Quería un oyente que escuchara en todas las interfaces. También estaba en Windows y necesitaba algo que funcionara con eso, lo que Galdolf no hizo. Como resultado fui con un Python Script , que < bifurcado para asegurarte de que nunca desaparezca de mí.
Para usar esto, ejecuta:
python usbmuxd\pythonclient\tcprelay.py -t 22:2222
El puerto 2222 anterior se asigna al puerto 22 remoto. Una vez que esté configurado, puede usar su utilidad SSH favorita para conectarse. Usé Putty .
- Anfitrión: 127.0.0.1
- Puerto: 2222
El nombre de usuario predeterminado de "root" y la contraseña de "alpine", pero también se puede usar un nombre de usuario de "mobile" y una contraseña de "alpine" para conectarse.
NOTA: Si no conoce la contraseña de root, use Filza para cambiar los permisos de /etc/master.passwd a 666, luego a través de SSH como usuario móvil, o utilizando su editor de archivos favorito, edite ese archivo para copiar el hash de "móvil" a "raíz" para que las contraseñas sean las mismas. (El hash para "alpine" es "/ smx7MYTQIi2M", si es necesario). Entonces deberías poder iniciar sesión como root entonces, o usar su.
Una vez que haya iniciado sesión, querrá encontrar las copias de droplist.plist que están actualmente en su máquina. Probablemente hay formas más eficientes de hacer esto, pero usé el siguiente comando:
find . | grep dropbear.plist
Que dio lugar:
./Library/LaunchDaemons/dropbear.plist
./private/var/containers/Bundle/Application/023FF836-8A0A-4593-A578-6801F2A3F34D/yalu102.app/dropbear.plist
La primera entrada es el demonio activo, pero la segunda es más importante. Es el demonio que Yulu implementa cada vez que ejecutas el jailbreak (lo que tienes que hacer con cada reinicio). Si solo edita /Library/LaunchDaemons/dropbear.plist, se reemplazará cada vez que reinicie.
Como resultado, vamos a editar el que viene empaquetado con Yulu, pero si lo descarta, notará que está en formato PLIST binario. Para solucionar este problema, necesitamos Erica Utilities para obtener plutil. A continuación, puede ejecutar:
plutil -xml dropbear.plist
Esto convertirá el dropbear.plist al formato XML. Una vez hecho esto, puede editar el archivo en cualquier editor de texto. Utilicé nano para hacer la edición real.
por ejemplo
nano dropbear.plist
Cuando edites el archivo, quieres deshacerte de "localhost:" de la última entrada de cadena. Esto hará que el oyente se ejecute en todas las interfaces en lugar de solo en la interfaz de bucle de retorno (que solo está disponible a través de USB). Como resultado, su archivo se convierte en:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>ShaiHulud</string>
<key>Program</key>
<string>/usr/local/bin/dropbear</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/dropbear</string>
<string>-F</string>
<string>-R</string>
<string>-p</string>
<string>22</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Una vez que hayas hecho eso, querrás volver a poner el archivo en formato binario:
plutil -binary dropbear.plist
En este punto, le sugiero que reinicie el dispositivo y valide que el archivo Yalu dropbear.plist se copie correctamente cuando vuelva a jailbreak:
por ejemplo
reboot
Después de reiniciar, deberías poder SSH utilizando la dirección IP de tu teléfono y el puerto estándar 22.
por ejemplo
- Host: (IP de configuración - > WiFi - > (NOMBRE WIFI)
- Puerto: 22