|
|
OS X IOKit kernel memory disclosure due to lack of bounds checking in IOUSBControllerUserClient::ReadRegister | ||||
| Project Member Reported by ianbeer@google.com, May 12 2014 | Back to list | ||||
This one requires local root so isn't maybe so interesting on OS X since root is still equivalent to kernel code execution anyway. It's a different story on iOS, but I don't have any iOS devices to test on (http://theiphonewiki.com/wiki/Kernel has the output of kextstat on iOS 6 and the same driver (IOUSBFamily) is listed.) I'll let Apple figure out if this is something to worry about on iOS. The IOUSBController userclient external method 8 is IOUSBControllerUserClient::ReadRegister. This method fails to bounds check its first argument which is used directly as an offset into kernel memory: mov ecx, r15d <-- r15d controlled mov eax, [rax+rcx] mov [r14], eax <-- will get returned to userspace Severity Low because of the root requirement.
Project Member
Comment 1
by
ianbeer@google.com,
May 12 2014
,
May 23 2014
,
Aug 12 2014
Deadline exceeded - automatically derestricting
,
Feb 5 2015
,
Feb 5 2015
Apple advisory: http://support.apple.com/en-us/HT204244
,
Apr 9 2015
Thankss http://wdfshare.blogspot.com |
|||||
| ► Sign in to add a comment | |||||