没什么高深,都只是工具的使用。
先设定一个目标:远程登陆苹果手机,再运行一个hello world。
前提:这是一台越狱的手机,而且你还能手动操作它。
(一)登陆工具:ssh
(1)基本操作
在手机端安装ssh(打开cydia,搜索openssl或ssh connect等,安装即可)。
在手机的wifi页面,找出当前使用的ip。
在电脑上(我的是mac机,ssh已自带),使用ssh勾搭手机:ssh root@ip
(2)基础概念
ssh登陆到iphone,之后操作的就是iphone,pc上的键盘就是iphone的键盘。
iphone的两个默认账号:
root,默认密码:alpine
mobile,默认密码:alpine
ssh登陆示例:
$ ssh root@192.168.1.101
或者:
$ ssh -l root 192.168.1.100
-----
root@192.168.1.101's password:(输入密码,回车)
810:~ root#
登陆后,修改root密码:
# passwd
登陆后,修改mobile密码:
# passwd mobile
ssh到手机是要经过密码验证的,为了建立这个信任,mac端可以安装ssh证书(制作id_rsa,记住密码,之后登陆就不用输入密码):
cd /opt/iosopendev/bin --前提是,已经安装了iosopendev
./iosod sshkey -h 192.168.1.101
(二)拷贝工具:scp
示例,把hellowrold文件,拷贝到iphone的root用户的根目录,命名为hello:
scp helloworld root@192.168.1.100:hello
在机子外,拷贝机子里面的内容到电脑:
scp root@192.168.2.21:/User/Documents/Cracked/* ./
(三)演练一下,让手机重启
ssh root@192.168.1.101
(810:~ root#) killall SpringBoard
(四)演练一下,让手机say hello
首先编译出执行文件,使用clang:
clang -o helloworld -arch armv7 helloworld.c -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.0.sdk
拷贝执行文件到手机:
scp helloworld root@192.168.1.100:hello
登陆手机并执行:
ssh root@192.168.1.101
cd /
chmod +x hello
./hello
(五)如果你遇到这样的问题
(1)10.x系统,越狱后,ssh登陆不上,而且scp不能用。
对于ios10.1.1(其它10.x也一样),在越狱后,用ssh是登陆不上的,原因参考 http://blog.csdn.net/dianshanglian/article/details/62422627
以下为这个网页内容摘录:
1、SSH连接不上
在手机上安装Mterminal,运行su,输入root密码,进入root权限,执行ps aux|grep dropbear
(1)如果你看到的进程没有dropbear
执行/usr/local/bin/dropbear -F -R -p 22
然后就可以连接了,重启依然有效
(2)如果你看到进程是这样:/usr/local/bin/dropbear -F -R -p 127.0.0.1:22
意思是只能数据线重定向连接SSH,如果你想改成WIFI可以访问
那么用Filza修改/private/var/containers/Bundle/Application/{UUID}/ yalu102.app/dropbear.plist
把里面有个参数127.0.0.1:22改成22保存,重启手机即可
UUID在每个人手机上不一样
2、修复SCP
你会发现yalu102自带的SSH无法用WINSCP传输文件,因为缺少了scp
很简单
(1)cydia里面安装wget
(2)在mterminal里面登陆root权限
(3)执行以下命令
wget mila432.com/scp
ldid -S scp
chmod 777 scp
mv scp /usr/bin/scp
https://mp.weixin.qq.com/s/zYRmmcqYh4EsMyn615ueHQ