Cycript 常用语法
- 开启 Cycript 模式
- Cycript
- Cycript -p 进程 ID
- Cycript -p 进程名称
- 定义变量
- var 变量名 = 变量值
- 用内存地址获取变量对象
- #内存店址
- ObjectiveC.classes
- 已加载的所有 OC 类
- 查询对象的所有成员变量
- *对象
- 递归打印 view 的所有子控件(跟 LLDB 一样的函数)
- view.recursiveDescription().toString()
- 筛选出某种类型的对象
- choose(UIViewController)
- choose(UITableViewCell)
- UIApp
- [UIApplication sharedApplication]
iPhone 越狱 SSH 过程注意的几个点
-
Client 端如何确保自己要连接的服务端是正确的?
答:第一次连接,Client 端在入ssh root@服务端ip地址
地址后,服务端会将自己的公钥以及相关信息通过SHA256
算法加密后发给客户端确认,拿到这个SHA256
之后,Client 端可以去 服务端的官网地址查询,该SHA256
是否一直,借此来确保自己连接的服务端是否正确。 -
Client 端登陆 Server 端,有几种连接方式?
答:两种,密码登陆:比较要输入密码和每次都要输入比较麻烦。免密登陆:将客户端的公钥放到服务端可连接公钥列表中,可以免密登陆。 -
Client 端和 Server 端如何保证数据不被中间人截取?
答:Client 端和 Server 端相互拥有对方的公钥,每次相互传输的数据都是使用对方的公钥进行加密,再进入网络进行传输。因为是非对称加密算法,所以传输的密文,只能使用各自的私钥进行解码。私钥是各自持有,从不经过网络进行传输,所以能避免中间人劫持信息。 -
iPhone 默认是使用 22 端口进行 SSH 通信,采用的 TCP 协议,因为 TCP 是网络传输协议,所以有时候网络差的是会十分卡顿,如何解决?
答:通过usbmuxd
,这是一款 Mac 自带开机启动软件,它可以将 Mac 本地指定端口的 TCP 协议数据,通过 USB 连接转发到 iPhone 的 22 端口,速度非常快。
启动 sh 脚本文件的三种方式
- bash 和 sh方式。
- 当前 shell 环境会启动一个子进程来执行脚本文件,执行后返回到父进程的 shell 环境。
- 执行 cd 时,在子进程会 cd 到目录,但是在父进程中环境并没有改变,也就说目录没有改变。
- source 方式
- 在当前的 shell 环境下执行脚本文件
- 执行 cd 后会跳转到 cd 的目录
- source 可以用一个点“.”来代替,如 “. test.sh”
网友评论