iOS 越狱--OpenSSH连接(登录)手机 和 SSH公钥登录(免密登录)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS 越狱--OpenSSH连接(登录)手机 和 SSH公钥登录(免密登录)相关的知识,希望对你有一定的参考价值。
参考技术A OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。 SSH协议可以用来进行远程控制, 或在计算机之间传送文件。OpenSSH连接(登录)手机
1. 在cydia 中安装OpenSSH 包
2. 打开手机wifi设置
3. 连接wifi
4. 读取ip地址
5. 打开终端
6. 运行命令 ssh root@你的ip
7. 输入密码: alpine (可以自定义)
ssh 到你的 iPhone,修改 root/mobile 两个权限下的密码。默认密码是 alpine,使用 passwd 命令修改密码。
修改 root 权限密码
likid$ ssh root@192.168.18.167 // use root role to login
The authenticity of host '192.168.18.167 (192.168.18.167)' can't be established.
RSA key fingerprint is SHA256:xxx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.18.167' (RSA) to the list of known hosts.
root@192.168.18.167's password: // enter original passwordalpine
iPhone:~ root# passwd // change password command
Changing password for root.
New password: // enter your new password
Retype new password: // again
iPhone:~ root#exit // logout
logout
Connection to 192.168.18.167 closed.
修改 mobile 权限密码
Likid$ ssh mobile@192.168.18.167 //use mobile role to login
mobile@192.168.18.167's password: // enter original passwordalpine
iPhone:~ mobile$ su root
Password:
iPhone:/var/mobile root# cd
iPhone:~ root# passwd mobile
Changing password for mobile.
New password:
Retype new password:
iPhone:~ root#exit
logout
Connection to 192.168.18.167 closed.
SSH公钥登录的前提是已经登录过SSH
SSH公钥登录的原理
Mac电脑将自己的公钥发给远程的手机
手机随机生成的一段字符串, 发给Mac电脑
Mac电脑利用私钥加密字符串
手机利用公钥解密字符串
SSH公钥登录步骤:
1. cd ~/.ssh 目录下 (ls 查看当前路径下文件)
Snip20180602_1.png
2. ssh-keygen 创建RSA 密钥
ssh-keygen
使用上述命令创建 RSA的公钥和私钥.
输入命令之后, 一路回车就可以, 生成下图中两个私钥 id_rsa 和公钥 id_rsa.pub
生成密钥
3. ssh-copy-id root@192.168.1.102 拷贝密钥到服务器
ssh-copy-id root@192.168.1.102
这里的ip是你手机wifi的ip地址, 会将文件拷贝到 ~/.ssh/ 目录下
中间会需要你输入链接服务器(手机)的密码
密码默认是: alpine (在OpenSSH源中可以看到)
5. ssh root@192.168.1.102 登录SSH
ssh root@192.168.1.102
苹果有一个服务,叫usbmuxd,这个服务主要用于在USB协议上实现多路TCP连接.
USB 登录需要端口映射,目前有两种方式映射
Python脚本 tcprelay 端口映射:
# 将本地的12345端口映射到设备的TCP端口22# -t 表示能够同时支持多个SSH连接HanDaDaMacBook-Air:~ HanDaDa$python tcprelay.py -t 22:12345
Iproxy端口映射
# 安装libimobiledevice工具 或者usbmuxd
HanDaDaMacBook-Air:~ HanDaDa$brew install libimobiledevice
或者
HanDaDaMacBook-Air:~ HanDaDa$brew install usbmuxd
# 映射端口HanDaDaMacBook-Air:~ HanDaDa$iproxy 12345 22
以上两种方式成功后皆可通过以下SSH连接登录手机
# ssh连接本地的端口12345,由于做了端口映射,所以会通过usb连接对面设备的22端口。# 127.0.0.1 是IP地址# -p 表示端口号HanDaDaMacBook-Air:~HanDaDa$ssh-p12345root@127.0.0.1
!!!注意:要想保持端口映射状态,不能终止此命令行(如果要执行其他终端命令行,请新开一个终端界面),不一定非要10010端口,只要不是保留端口就行
端口映射完毕后,以后如果想跟iPhone的22端口通信,直接跟Mac本地的10010端口通信就可以了
新开一个终端界面,SSH登录到Mac本地的12345端口(以下方式2选1)
ssh root@localhost -p 12345
ssh root@127.0.0.1 -p 12345
localhost是一个域名,指向的IP地址是127.0.0.1,本机虚拟网卡的IP地址
usbmuxd会将Mac本地10010端口的TCP协议数据,通过USB连接转发到iPhone的22端口
也可以用itnl工具来实现端口转发
wangguanxiao-2:~ apple$ itnl --iport 22 --lport 10010
[INFO]Waiting for new TCP connection on port 10010
[INFO]Waiting for device...
[INFO]Device connected: a7aee83045805b75336d38faec08a3b73b6d49d1 - Ignoring(non-USB)
[INFO]Device connected: a0370fce4f5755310d2a26b020b989c59d9780aa - Ignoring(non-USB)
[INFO]Device connected: a0370fce4f5755310d2a26b020b989c59d9780aa
https://www.jianshu.com/p/792443fe1da2
https://www.jianshu.com/p/8b290bed9f64
https://www.jianshu.com/p/836d2f317acb
https://www.jianshu.com/p/05dec177702d
https://www.jianshu.com/p/5241669baa74
看别人iOS应用的界面和头文件。
一、看别人应用界面
1.准备越狱手机一部,网上搜索一键越狱,会有很多应用。
2.越狱完成安装openSSH和cydia substrate
3.拷贝 scp libReveal.dylib [email protected]设备IP地址:/Library/MobileSubstrate/DynamicLibraries/
4.拷贝 scp libReveal.plist [email protected]设备IP地址:/Library/MobileSubstrate/DynamicLibraries/
plist文件内容包括:百度地图、美团外卖、大众点评、微信、万能钥匙、高德地图
<?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>Filter</key> <dict> <key>Bundles</key> <array> <string>com.aladdinlc.edushipaying</string> <string>com.baidu.map</string> <string>com.autonavi.amap</string> <string>com.meituan.itakeaway</string> <string>me.ele.ios.eleme</string> <string>com.meituan.imeituan</string> <string>com.dianping.dpscope</string> <string>com.tencent.xin</string> <string>com.lantern.wifikey.mobile</string> </array> </dict> </dict> </plist>
5.重启iOS设备,打开应用,打开Reveal就可以查看了。
二、看别人应用头文件
http://bbs.iosre.com/t/dumpdecrypted-app/22 这个已经很全面了。
但是有些越狱的手机没有ps -e命令。
在手机cydia中先安装apt-get
安装完命令行更新apt-get update
就可以apt-get install ps。
以上是关于iOS 越狱--OpenSSH连接(登录)手机 和 SSH公钥登录(免密登录)的主要内容,如果未能解决你的问题,请参考以下文章