被kernel限制的函数如何使用

报错提示’ kernel Sandbox: backboardd(734) deny(1) mach-register com.apple.xxxxxx’

  • iOS12.4.6的 CFMessagePortCreateLocal这个函数在backboardd进程里面返回null其他进程正常可以正常使用
  • 在iOS12.4.6之前的系统里面backboardd这个进程这个函数使用起来也没有问题.

可以想到的两个思路

  • 要是自己的daemon或者app可以试试签可以使用该函数的进程的entitlement 测试成功
    • ldid -e /System/Library/CoreServices/SpringBoard.app/SpringBoard >> /tmp/springboardd.plist
    • cp /usr/libexec/backboardd /tmp/ && ldid -Sspringboardd.plist /usr/libexec/backboardd
    • 上面的springboardd.plist里面的某些key应该就是决定该函数能否在backboardd调用的凭证,可以都加进去到backboardd原来的plist里面
  • 系统的进程想在越狱软件里面patch内核教程.反编译看了下checkra1n(目前只有这个软件可以越狱这个系统版本)发现严重混淆.不混淆估计也看不懂
  • 还有别的啥思路吗
1 个赞

checkra1n用的是光,站内应该有人可以解