-
-
[翻译]IOThunderboltFamily中的OS X内核UAF漏洞分析
-
发表于: 2016-12-20 21:12 3996
-
在没有获得引用的情况下,IOThunderboltFamilyUserClient在+0xE0地址通过IOServiceOpen存储了一个任务结构指针。
通过kill这个任务,我们可以释放掉这个指针,从而为用户端留下一个挂起指针。
IOThunderboltFamilyUserClient使用这个挂起指针来创建可读写的IOMemoryBuffers(假设它可以读写被调用进程的任务)。通过重新分配一个带有权限进程的task struct结构体,以此覆盖被释放掉的那个结构体,我们可以得到IOThunderboltFamilyUserClient来造成内存崩溃。
你也可以利用这个bug引发内核内存崩溃。
build: clang -o thunderbolt_task_uaf thunderbolt_task_uaf.c -framework IOKit
你应该设置gzalloc_min=1024,gzalloc_max=2048 或者类似于UAF的实际错误,否则可能会得到一些奇怪的崩溃。
已在 MacBookAir5,2 ,OS X 10.11.5(15F34)上测试。
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)
赞赏
他的文章
谁下载
看原图
赞赏
雪币:
留言: