• iOS越狱开发


    usbmuxd

    使用usbmuxd可以通过USB线来ssh远程连接iOS设备。

    # 启动usbmuxd,将22端口映射到2222端口
    $ python usbmuxd/python-client/tcprelay.py -t 22:2222
    
    # ssh建立连接
    $ ssh root@localhost -p 2222
    
    # scp发送文件
    $ scp -P 2222 file.ext root@localhost:~/file.ext
    

    注意:usbmuxd 1.0.8版尚无法区分,始终连接最后一台接入电脑的iOS设备。

    在iOS 11.1.x越狱的设备运行未签名的App

    需要ssh连接设备,在设备上使用jtool对App进行签名。
    使用jtool进行签名需要entitlement文件,该文件可以从jb目录中任意App中提取出来,也可以自己创建,但必须包含 platform-application 键并且值为 true

    entitlement文件内容:

    <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
    <plist version="1.0">
    <dict>
        <key>platform-application</key>
        <true/>
    </dict>
    </plist>
    

    签名示例:

    # 提取entitlement文件
    $ jtool --ent /jb/usr/local/bin/jtool > plat.ent
    
    # 对MyApp进行签名
    $ jtool --sign platform --ent plat.ent --inplace MyApp
    
    # root目录下是没有权限运行App的,需要将App移动到jb目录下
    $ mv MyApp /jb/usr/local/bin/
    
    # 运行MyApp
    $ /jb/usr/local/bin/MyApp
    

    注意:jtool无法对胖文件进行签名,请先对App进行瘦身再进行签名。鉴于iOS 11开始只能运行arm64的App,所以只需要提取出arm64架构的文件即可。

    使用jtool提取arm64架构文件

    # 从MyApp胖文件中提取arm64架构文件。
    $ jtool -e arch -arch arm64 MyApp
    # 提取出的文件将保存为MyApp.arch_arm64
    

    iOS 11越狱后,如何利用从AppStore下载的ssh终端连接本机

    由于直接连接会被拒绝,所以需要使用dropbear开放非22端口的ssh服务。
    在电脑上ssh连接手机,输入以下命令。

    dropbear -P/var/run/dropbear2.pid -p0.0.0.0:2222 -R --shell /jb/bin/bash
    

    然后在手机上打开终端,连接localhost:2222即可。

  • 相关阅读:
    jquey 阻止表单提交
    Array.prototype.remove 删除数组元素
    <asp:HiddenField> 控件 实现键值对保存
    jquery实现倒计时
    作业
    第六周作业
    第四周作业
    第二次作业
    2021.3.4(四个题)
    增删改查
  • 原文地址:https://www.cnblogs.com/DeviLeo/p/12851927.html
Copyright © 2020-2023  润新知