看雪安全论坛

 

 

 

 


返回   看雪安全论坛 > 移动平台 > 『iOS安全』
  登陆   注册  

发表新主题 回复
 
主题工具 显示模式
ksmokee
级别:8 | 在线时长:103小时 | 升级还需:14小时级别:8 | 在线时长:103小时 | 升级还需:14小时

初级会员
初级会员

资 料:
注册日期: Jul 2008
帖子: 87 ksmokee 品行端正
精华: 0
现金: 194 Kx
致谢数: 0
获感谢文章数:4
获会员感谢数:5
1 旧 2017-01-10, 19:39:37 默认 【翻译】launchd中虚拟磁盘挂载尺寸分配问题导致UAF
ksmokee 当前离线

点击图片以查看大图

图片名称:	1.jpg
查看次数:	2
文件大小:	45.7 KB
文件 ID :	109830
点击图片以查看大图

图片名称:	2.jpg
查看次数:	1
文件大小:	57.0 KB
文件 ID :	109831
2016年 八月二十二日 星期一
launchd进程在0x10000420D(10.11.6)处的function自动生成MIG代码, msgh_id 437是由其解析而来。

虽然此mig方法采用了out-of-line-ports描述符,但是这个代码并没有校验request_fdsCnt是否等于实际描述符的大小,而且它使用了不受信任的方法去调用mig_deallocate来回收内存。

我们可以在它们运行过程中,通过传递一个较大的值来让后续页面被销毁。

这个bug可以在OS X / iOS中任意的沙箱发生。

如果想要真正的看到这个崩溃,首先你要在一个循环中跑这个POC,然后做一些会导致很多launchd流量的事,比如:
在一个终端:while true; do ./legacy_ipc; done
在另一个终端:while true; do /Applications/Safari.app/Contents/MacOS/Safari&sleep 0.4 && killall Safari; done

测试是基于MacBookAir5,2上的OS X 10.11.6(15G31)进行。

回复时引用此帖 返回顶端
发表新主题 回复

添加到书签

主题工具
显示模式

发帖规则
不可以发表主题
不可以回复帖子
不可以上传附件
不可以编辑自己的帖子
论坛论坛启用 vB 代码
论坛启用 表情图标

相似的主题
主题 主题作者 论坛 回复 最后发表
【翻译】TDI概述 AntBean 『外文翻译』 9 2016-12-27 16:03:32
翻译文章5 哆啦咪 『外文翻译』 4 2016-11-23 14:08:01
翻译文章3 哆啦咪 『外文翻译』 8 2016-11-15 15:49:00
【翻译】翻译文章2 哆啦咪 『外文翻译』 7 2016-11-03 12:25:17
翻译文章2 哆啦咪 『论坛活动』 3 2016-11-02 18:20:54


所有时间均为北京时间, 现在的时间是 01:02:39.


  ©2000-2016 看雪学院(PEdiy.com) |关于我们 | 京ICP备10040895号-17 | 知道创宇提供带宽资源 | 微信公众帐号:ikanxue