Evasi0n 所采用的突破口是一个叫做Launch Daemon的进程,或者简称为launchd,它可以允许程序与程序之间进行交流,是一部iOS设备只要一启动运行程序就会载入的主进 程,launchd可以登陆那些需要root权限才能打开的程序。所以说launchd是一个提前于操作系统控制的步骤,用户是默认准许的。这意味着无论 什么时候一个iPhone或iPad进行移动备份,那么它将自动授权访问时区文件,我们也多亏找到了一些方式,可以访问到launchd。
David Wang还讲述了他们在iOS移动备份系统发现launchd漏洞,到最后在核心层绕过代码签名和限制条件的过程:
一 旦它击败了ASLR,越狱就使用iOS的USB界面最后一个漏洞,通过一个核心内存对进程的地址输入,系统就会“天真的”等待用户传回数据。这就让 evasi0n可以在核心的任何地方进行写入。第一个写入的核心部分就是对于改变代码的约束——这样黑客就可以得到更多。只要你能进入核心,就再也没有安 全问题来困扰了,然后我们就胜利了。
pod2g 与 David Wang: