《九阴真经: iOS黑客攻防秘籍》新书发布,干货满满,快来看看吧!

iOS 安全论坛 - 专注于研究 iOS 安全

 找回密码
 立即注册
查看: 1680|回复: 2

体验 iPhone 安装 Android 系统

[复制链接]

117

主题

489

帖子

2008

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2008
发表于 2020-3-10 20:50:26 | 显示全部楼层 |阅读模式
近期 Corellium 团队发布了一个名为 Project Sandcastle 的项目,这个项目可以在 iPhone 上安装 Android 系统,不过暂时只支持 iPhone 7、iPhone 7 Plus、iPod Touch 7G。接下来我们来亲自操作体验一下 iPhone 上安装和运行 Android 系统的效果。
首先需要使用 checkra1n v9.8.1 以上的版本对设备进行越狱,没操作过的朋友可以参考一下这个教程 https://www.ioshacker.net/thread-238-1-1.html ,装好之后如果没有安装 OpenSSH 请手动安装。
访问 https://projectsandcastle.org/status 下载 "Android Build",下载完成解压后文件内容如下:


连接好设备,执行 setup.mac.sh,如果出错没关系,我们看到 setup_mac.sh 这个脚本里的代码功能实际是调用 iproxy 对 SSH 的端口转发,效果和使用 usbmuxd 是一样的,然后复制 isetup 这个文件到手机上的 /tmp/setup.sh,最后执行 /tmp/setup.sh。我们不执行 setup_mac.sh 自己手动操作效果也是一样,使用 usbmuxd 转发,然后手动执行这两条命令,输入密码后等待操作完成后相当于完成 setup_mac.sh 的工作。
  1. scp -P2222 -o StrictHostKeyChecking=no isetup root@127.0.0.1:/tmp/setup.sh
  2. ssh -oStrictHostKeyChecking=no -p2222 root@localhost "chmod 755 /tmp/setup.sh && /tmp/setup.sh
复制代码
中途会到 checkra1n 下载安卓的镜像文件,如果网络不好的话可能会要半小时以上,请耐心等待。查看 setup.sh 脚本代码,可以找到镜像文件的下载连接是:http://assets.checkra.in/downloa ... 08c3ad89a34/nand.gz
保存的目录是:/tmp/mnt/nand.gz,文件大小有 470MB。setup.sh 在执行过程中,我们可以手动查看 /tmp/mnt/nand.gz 文件大小能知道下载的进度。
将手机重启进入 DFU 模式,然后执行 ./start_mac.sh 即可进入 Android 系统。


进入系统之后,连接 Wi-Fi 上网,打开浏览器能够浏览网站,拍照和摄像不行会闪退,使用起来有点卡,比 iOS 要慢多了,不过凑合下简单操作还可以。使用 adb 命令查看当前设备,CORELLIUM-I7 就是这台设备。
  1. $ adb devices
  2. List of devices attached
  3. CORELLIUM-I7    device
复制代码
接下来测试 adb shell 可以操作命令,进入 /mnt/sdcard,这个是 sdcard 的目录,文件内容可读可写。
  1. generic_arm64:/ # cd /mnt/sdcard/                                                                                       
  2. generic_arm64:/mnt/sdcard # ls -al
  3. total 0
  4. drwxrwx--x 12 root sdcard_rw 240 2020-03-10 09:22 .
  5. drwx--x--x  3 root sdcard_rw  60 2020-03-10 09:22 ..
  6. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Alarms
  7. drwxrwx--x  4 root sdcard_rw  80 2020-03-10 09:22 Android
  8. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 DCIM
  9. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Download
  10. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Movies
  11. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Music
  12. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Notifications
  13. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Pictures
  14. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Podcasts
  15. drwxrwx--x  2 root sdcard_rw  40 2020-03-10 09:22 Ringtones
复制代码
安装 apk 正常,上传文件都正常。
  1. adb install ~/Downloads/test.apk
  2. adb -s CORELLIUM-I7 push /Users/exchen/Downloads/test.apk /mnt/sdcard/Download
复制代码
不过有些 apk 安装时会提示出错:
  1. Failure [INSTALL_FAILED_NO_MATCHING_ABIS: Failed to extract native libraries, res=-113]
复制代码
看起来像是 CPU 架构不匹配,具体原因未知,有可能是系统做的不够完善,希望不久的将来 sandcastle 项目能做的更完善。还是一点注意的是如果手机重启后会进入 iOS,相当于安装了双系统,如果想启动 Android,只需进入 DFU 模式,然后执行 ./start_mac.sh 即可,不过重启后之前上传到 sdcard 的数据会被重置。

想了解最新的iOS安全资讯、技术干货请关注 iOS安全论坛(ioshacker.net)微信公众号

回复

使用道具 举报

4

主题

38

帖子

336

积分

中级会员

Rank: 3Rank: 3

积分
336
发表于 2020-3-31 08:52:55 | 显示全部楼层
厉害了,颠覆了。。。。。。
回复

使用道具 举报

0

主题

2

帖子

78

积分

注册会员

Rank: 2

积分
78
发表于 2020-4-24 00:08:57 | 显示全部楼层
本帖最后由 kinken 于 2020-4-24 00:10 编辑

前辈可以写一下或翻译最近的dualboot教程吗?
https://dualbootfun.github.io/dualboot/
我在Patching AMFI的时候遇到了用img4读取不了kc.bpatch,提示格式错误,走不下去了

kernelcache ./img4 -i /Volumes/HackintoshData/iPhone/dualboot/kernelcache/kernelcache.release.n71  -o kernelcache.img4 -M /Volumes/HackintoshData/iPhone/dualboot/kernelcache/IM4M  -A -T rkrn -P kc.bpatch
none
[e] patch: malformed line
[e] cannot apply patch
# AMFI
0x00b6a34c 0xF8 0xE0
0x00b6a34d 0x5F 0x03
0x00b6a343 0xBC 0x00
0x00b6a34f 0xA9 0x32
0x00b6a350 0xF6 0xC0
0x00b6a351 0x57 0x03
0x00b6a352 0x01 0x5F
0x00b6a353 0xA9 0xD6


另外有一个问题,kernelcache是在固件中提取使用没错吧?看了一些资料,好像从iOS 10开始,kc就没加密了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|iOSHacker

GMT+8, 2020-8-4 10:58 , Processed in 0.023310 second(s), 20 queries .

iOS安全论坛

© 2017-2020 iOS Hacker Inc. 京ICP备17074153号-2

快速回复 返回顶部 返回列表