iOS 逆向编程(五)通过 (OpenSSH) Wifi 远程连接登录 iPhone

简介: iOS 逆向编程(五)通过 (OpenSSH) Wifi 远程连接登录 iPhone

一、安装 Mac 上提高效率的辅助工具 (可选)

二、简介

1、我们经常在 Mac 的终端上通过敲一些命令行来完成一些操作。

2、iOSMac OS X 都是基于 Darwin (苹果的一个基于 Unix 的开源系统内核) ,所以 iOS 中同样支持终端的命令行操作。

3、在逆向工程中,我们经常会通过命令行来操纵 iPhone

4、为了能够让 Mac 终端中的命令行能作用在 iPhone 上,我们得让 MaciPhone 建立连接。

5、通过 Mac 远程登录到 iPhone 的方式建立连接。

三、SSHOpenSSH

  • Secure Shell 的缩写,意为 安全外壳协议 , 是一种可以为远程登录提供安全保障的协议
  • 使用 SSH ,可以把所有传输的数据进行加密,中间人 攻击方式就不可能实现,能防止 DNS 欺骗和 IP 欺骗,中途拦截篡改数据。
  • OpenSSH
  • SSH 协议的免费开源实现。
  • 可以通过 OpenSSH 的方式让 Mac 远程登录到 iPhone

四、使用 OpenSSH 远程登录到 iPhone,先安装 OpenSSH

  • 默认 iPhone 上是不支持 OpenSSH 的,我们需要通过 Cydia 安装 OpenSSH 工具 (软件源http://apt.saurik.com)
  • 打开 Cydia 搜索 OpenSSH 即可安装,如果搜不到在添加上面的软件源,默认应该是有的,如果网络有问题建议换个网络环境。(附:Cydia 商店安装方式

五、OpenSSH 使用步骤

1、SSH 是通过 TCP 协议通信,所以要确保 MaciPhone 在同一局域网下,比如连接着同一个 WiFi

2、然后在 Mac 的终端输入 ssh 账户名@服务器主机地址 这种格式的命令进行连接 iPhone

3、iOS 下有 2 个常用账户: rootmobile

  • root:最高权限账户,$HOME(路径)是 /var/root
  • mobile:普通权限账户,只能操作一些普通文件,不能操作系统级别的文件, $HOME(路径)是 /var/mobile

4、账户名 我们这里用 root

5、服务器主机地址 也就是 IP 地址,电脑与手机都连接一个 Wifi,然后打开手机 设置 -> 无限局域网 -> 点你连接Wifi后面的叹号 -> 然后就看到 IP 地址了

6、然后通过以上结合的命令就是: ssh root@10.0.89.184,然后在命令行中使用,(OpenSSH 的默认密码都是 alpine)。

dengzemiaodeMacBook-Pro:~ dengzemiao$ ssh root@10.0.89.184
// 这个 IP 地址是没有建立过连接的
The authenticity of host '10.0.89.184 (10.0.89.184)' can't be established.
// 服务器公钥通过 SHA256 加密之后的字符串,如果确定连接将解析出来并存到本地
// 一个方便下次连接不需要再次询问确认,二个以免有同样 IP 地址的服务端冒充
RSA key fingerprint is SHA256:TmFvst8CU2JJqrFZ1QIANzprd1rUckdYjV4lcVaS8Gk.
// 问你是否确定连接,选 yes
// 然后就会将验证公钥解析出来并存到你本地 ~/.ssh/known_hosts 文件夹里面,下次连接使用
// 可以通过命令 $ ssh-keygen -R 10.0.89.184 进行清除存储的公钥,然后再次回到这个询问
Are you sure you want to continue connecting (yes/no)? yes
// 然后需要密码,OpenSSH 的默认密码都是 alpine ,所以你直接输入即可,下面也有修改密码教程
root@10.0.89.184's password: 
// 如果输入成功,就进入到 iPhone 里面了,这里可以通过正常的 cd、ls 等命令操作
iPhone:~ root# 
// exit 退出登录
iPhone:/ root# exit
logout
Connection to 10.0.89.184 closed.

六、修改 rootmobile 用户的登录密码

1、登录 root 账号,只有它才有权限修改。

2、修改 root 账号的密码

// 登录手机 root 账户
dengzemiaodeMacBook-Pro:~ dengzemiao$ ssh root@10.0.89.184
// 输入旧密码
root@10.0.89.184's password: 
// 输入 passwd 命令进行修改密码
iPhone:~ root# passwd
Changing password for root.
// 输入新密码
New password:
// 再次输入新密码
Retype new password:

3、修改 mobile 账号的密码,同样还是在 root 账号里面进行修改

// 通过 passwd 命令进行修改密码,passwd mobile :指的是修改 mobile 账户的密码
iPhone:~ root# passwd mobile
Changing password for mobile.
// 输入新密码
New password:
// 再次输入新密码
Retype new password:

七、(附带扩展知识)根据上面链接手机询问,如何查看比较公私钥?

连接手机成功之后,在电脑上查看一下存储的公钥是什么,之前有说如果确定连接了,公钥会被存到 ~/.ssh/known_hosts 这个文件夹中。

// 进入 ~/.ssh 文件
dengzemiaodeMacBook-Pro:~ dengzemiao$ cd ~/.ssh
// 展示列表文件
dengzemiaodeMacBook-Pro:.ssh dengzemiao$ ls
id_rsa    id_rsa.pub  known_hosts
// 查看 known_hosts 文件
dengzemiaodeMacBook-Pro:.ssh dengzemiao$ cat known_hosts
....... 前面还有很多端口号,我就省略了,找到我们连接的端口号看看就好了
10.0.89.184 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCHckZZQzMFLhuHGwSQleU13ygF7Kv5URZSw88L1MtpL1jRo+Sa6IvNF9HMKScLxRed+XPSorBlt7vxaQbvSd2ESeqn3EW52S44z3Jnc4R4jUPfLqd1QgGbXbXc8emnTnqXv/o6aZcWQNlcNX8WBRJuXU5Tfr8NX9Sp8nERi2tiRKx01uh4S5eAEr7TUXE+Vh5kcXU6m0jQWsqTnwz3nHNTYlKyGz5qCpU/RufhavTxeaQyE9MH3E7RxTpjeSuYb3xNF7p3emXqnlrSZx3/RCvPMELDMiFlUCRRWxVCm6TtvUAkFwS6sMgT1lDWJvsF8ycr3qgUkkgwbAwsp+ZCz6xx
// 客户端电脑的公钥看到了,我们可以看看服务端(手机)上的公钥
dengzemiaodeMacBook-Pro:.ssh dengzemiao$ ssh root@10.0.89.184
root@10.0.89.184's password: 
// 进入 /etc/ssh
iPhone:~ root# cd /etc/ssh
// 在 /etc/ssh 目录下有公私钥数据,我们打开公钥文件
iPhone:/etc/ssh root# cat ssh_host_rsa_key.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCHckZZQzMFLhuHGwSQleU13ygF7Kv5URZSw88L1MtpL1jRo+Sa6IvNF9HMKScLxRed+XPSorBlt7vxaQbvSd2ESeqn3EW52S44z3Jnc4R4jUPfLqd1QgGbXbXc8emnTnqXv/o6aZcWQNlcNX8WBRJuXU5Tfr8NX9Sp8nERi2tiRKx01uh4S5eAEr7TUXE+Vh5kcXU6m0jQWsqTnwz3nHNTYlKyGz5qCpU/RufhavTxeaQyE9MH3E7RxTpjeSuYb3xNF7p3emXqnlrSZx3/RCvPMELDMiFlUCRRWxVCm6TtvUAkFwS6sMgT1lDWJvsF8ycr3qgUkkgwbAwsp+ZCz6xx


相关文章
|
iOS开发 开发者
解决xcode doesn‘t support iphone’s ios 14.6 (18f72)
解决xcode doesn‘t support iphone’s ios 14.6 (18f72)
1047 3
|
开发工具 iOS开发 计算机视觉
|
网络安全 开发工具 数据安全/隐私保护
如何把ipa文件(iOS安装包)安装到iPhone手机上? 附方法汇总
如何把ipa文件(iOS安装包)安装到iPhone手机上? 附方法汇总
|
测试技术 虚拟化 iOS开发
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
这篇文章是iOS自动化测试方案的第二部分,详细介绍了在Xcode开发者工具中构建WebDriverAgent(WDA)应用到iPhone的全过程,包括环境准备、解决构建过程中可能遇到的错误,以及最终成功安装WDA到设备的方法。
1888 0
iOS自动化测试方案(二):Xcode开发者工具构建WDA应用到iphone
|
存储 Web App开发 Android开发
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
1736 1
iOS不支持WebP格式图片解决方案和iPhone 7及其后硬件拍照的HEIC格式图片
|
BI Linux 数据安全/隐私保护
忘了 iOS(iPad、IPhone) 设备上的「屏幕使用时间」密码怎么办?找回屏幕密码
忘了 iOS(iPad、IPhone) 设备上的「屏幕使用时间」密码怎么办?找回屏幕密码
930 0
|
移动开发 网络协议 Linux
We discovered one or more bugs in your app when reviewed on iPhone and iPad running iOS 14.1
We discovered one or more bugs in your app when reviewed on iPhone and iPad running iOS 14.1
367 0
|
网络安全 开发工具 数据安全/隐私保护
如何把 ipa 文件 (iOS 安装包) 安装到 iPhone 手机上? 附方法汇总
如何把 ipa 文件 (iOS 安装包) 安装到 iPhone 手机上? 附方法汇总
|
开发工具 iOS开发
iOS 逆向编程(十一)iPhone 终端支持中文输入与vim命令(编辑文件)
iOS 逆向编程(十一)iPhone 终端支持中文输入与vim命令(编辑文件)
443 0
|
C# iOS开发
iOS(iPhone/iPad)开发新手必读
Objective-C 入门 一个简单的可以快速上手的 Objective-C 入门教程。 iOS概述 本文对构成iOS的基础特性提供了高层的概述,帮助你了解这个平台。 基于Xcode4开发第一个iPhone程序:“Hello World” 由宝玉出品的非常详尽的iOS开发入门教程。
1182 0