Secure Shell(SSH)是建立在应用层基础上的安全协议,用于计算机之间的加密登陆,可以在不安全的网络中为网络服务器提供安全的传输环境。
在做IOS逆向时,用ssh登陆测试的iphone/ipad设备是很基础的一步:
用Wi-Fi连接
- 查看设备的IP:
打开iOS设备的“设置”--》“Wi-Fi”页面-〉选择已连接的网络即可查看设备的IP地址。
- 用SSH连接:
ssh root@192.168.0.106 #假设192.168.0.106是设备的IP地址
- 输入密码:
默认的密码是alpine,这个密码可以在登陆后用passwd命令修改的。
- 免密码登陆:
每次都要输入密码是很麻烦的,可以用下面的方法免密码登陆:
(1)生成密钥对:
ssh-keygen -t rsa
(2)将密码上传到iOS设备
scp ~/.ssh/id_rsa.pub root@192.168.0.106:/var/root/.ssh/authorized_keys
如果iOS设备上不存在/var/root/.ssh/目录,则需要先登陆设备创建目录。
cd /var/root
mkdir .ssh
USB连接网络
Wi-Fi连接设备有一个很大的缺点,这就是如果当网络不好的时候,尤其在动态调试时,会有卡顿的现象。更好的选择是用usb连接
- 安装usbmuxd
brew install libusbmuxd
- 将当前连接的iOS设备的22端口映射到MacOS的2222
iproxy 2222 22
如果多太手机连接到同一Mac,则需要在后面加上设备的UDID。如果只有一台,则可忽略该参数。
- 连接
ssh -p 2222 root@127.0.0.1
用scp传输文件
在配置好SSH之后,可以用scp工具在iOS设备和计算机之间互传文件。
scp -P 2222 ./test.txt root@localhost:/tmp/ #将计算机上的test.txt传到iOS设备(usb连接)
scp -P 2222 root@localhost:/tmp/test.txt ./ #将iOS设备上的test.txt 传输到计算机