专栏名称: 独眼情报
分享有价值的网络安全威胁情报!情报有时效性,加星标可以及时收到推送。
目录
相关文章推荐
高分子科学前沿  ·  加州大学洛杉矶分校裴启兵教授AFM:透明半晶 ... ·  3 小时前  
哈尔滨交通广播  ·  浙江一老板为女儿举办252桌婚宴花50万嫌贵 ... ·  21 小时前  
哈尔滨交通广播  ·  浙江一老板为女儿举办252桌婚宴花50万嫌贵 ... ·  21 小时前  
商业洞察  ·  蔡崇信夫妇,赚翻了 ·  5 天前  
51好读  ›  专栏  ›  独眼情报

一行代码如何让你的 iPhone 变砖

独眼情报  · 公众号  ·  · 2025-04-28 14:32

正文

请到「今天看啥」查看全文


的指针,函数在该指针处返回一个令牌,该令牌可用于调用 notify_set_state ,该函数还接受一个用于状态的 UInt64 值。

通过相同的 notify_register_check 机制,想要获取通知状态的进程可以调用 notify_get_state 来获取其当前状态。这允许 Darwin 通知用于某些类型的事件,但也保留了一些状态,系统上的任何进程都可以在任何给定时间查询这些状态。

漏洞

苹果操作系统(包括 iOS)上的任何进程都可以在其沙盒内注册,以接收任何 Darwin 通知,而无需特殊权限。考虑到第三方应用程序使用的一些系统框架依赖于 Darwin 通知来实现重要功能,这一点是有道理的。

鉴于通过 Darwin 通知传输的数据量非常有限,即使 API 是公开的,并且沙盒应用程序可以注册通知,Darwin 通知对于敏感数据泄露也不是一个重大风险。

然而,正如系统上的任何进程都可以注册以 接收 Darwin 通知一样, 发送 通知也是如此。

总之,Darwin 通知:

  • 接收不需要特殊权限
  • 发送 时无需特殊权限
  • 可作为公共 API 使用
  • 没有用于 验证发件人 的机制

考虑到这些特性,我开始思考 iOS 上是否有使用 Darwin 通知进行强大操作的地方,这些地方可能会被沙盒应用程序利用,从而作为拒绝服务攻击。

你正在阅读这篇博文,所以我已经剧透了:答案是“是的”。

概念验证:EvilNotify

带着这个问题,我抓取了一份全新的 iOS 根文件系统——当时是早期的 iOS 18 beta 版本之一,我想——并开始寻找使用 notify_register_dispatch







请到「今天看啥」查看全文