freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

制作iOS内核调试线与调试内核
2018-04-13 09:00:52

*本文原创作者:wooy0ung,本文属FreeBuf原创奖励计划,未经许可禁止转载

0x00 说明

早期A4处理器的机器是能直接调内核的,而且30pin的数据线并没有对内核信息加密,因此我们能够直接读到内核数据。而现在的新机器一律采用加密过的light接口,使得非官方的内核调试基本上消失了。  网上也有不少大佬写过类似的教程,但年代久远,自己动手时还是遇到不少问题。

0x01 准备材料

1. iPhone 4手机一部(iOS 5.1.1 9B208)

2. Apple 30pin转换接口一个

3. FT232RL串口一个

4. mini USB数据线两条

5. 470k欧电阻一个

6. 杜邦线、飞线、焊锡若干

0x001.png

0x02 安装驱动

到官网上下载串口对应的驱动: Virtual COM Port Drivers

安装iTunes,注意redsn0w最后支持iTunes 12.0.1版本,可以在这个网站下载iTunes早期版本:АРХИВ ВЕРСИЙ ITUNES

以前装过较新版本的,需要先卸载以下几个程序,重启

0x002.png

redsn0w的历史版本可以在这下载: Download iOS - Jailbreak Tools

0x03 焊接

0x003.png

1. 27pin(D+)、25pin(D-)、23pin(VCC)、16pin(GND)分别接USB的绿、白、红、黑色线。

2. 13pin(RX)、12pin(TX)、1pin(GND)分别接串口的TX端、RX端、GND端

3. pin1与pin21间焊上一个470k欧的电阻

正面

0x004.png

反面

0x005.png

0x04 编译SerialKDPProxy

安装cywin,官网上下载安装包: Cygwin

编译提示缺少ethernet.h、if_ether.h,下载相应的头文件,扔到对应目录再次编译

0x006.png

设置串口的波特率为115200

0x007.png

打开串口监听

0x008.png

0x05 设置红雪参数调试内核

启动命令

> redsn0w.exe -i iPhone3,1_5.1.1_9B208_Restore.ipsw -j -a "-v debug=0x08"

内核信息输出到串口了

0x009.png

挂起

> redsn0w.exe -i iPhone3,1_5.1.1_9B208_Restore.ipsw -j -a "-v debug=0x09"		# DB_KPRT | DB_HALT => 0x09

但我这里内核并没有挂起,暂时不知道什么原因,也许是系统版本...有知道为什么的大佬还请告知一声^_^

0x06 参考

如何调试iOS内核

如何调试iOS内核-补充说明

SyScanTaipei2011_StefanEsser_iOS_Kernel_Exploitation_IOKit_Edition

iOS内核调试教程

iOS内核调试

*本文原创作者:wooy0ung,本文属FreeBuf原创奖励计划,未经许可禁止转载

# 调试 # iOS内核
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者