New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.
Starred by 5 users
Status: Fixed
Owner:
Email to this user bounced
Closed: Jul 2014
Cc:



Sign in to add a comment
OS X IOKit kernel memory disclosure due to lack of bounds checking in AGPMClient::getPstatesOccupancy
Project Member Reported by ianbeer@google.com, May 2 2014 Back to list
The AGPM (AppleGraphicsPowerManagement) user client is reachable from the chrome gpu process sandbox and the safari renderer sandbox.

The getPStatesOccupancy method fails to bounds check the index it's passed. The oob value which is read is then returned to the userspace caller allowing a sandboxed program to programmatically dump large amounts of kernel memory.

Attached PoC leak_kmem.c will try to dump 256 kB of kernel memory to the file dump.bin.

This is of course a nice kASLR defeat since you can almost certainly find all the pointers you need.

On OS X another interesting attack scenario with a bug like this would be to try to read a sandbox extension - since these are just HMAC'ed strings if you could force another process to request an extension and then read it from kernel memory you could just consume it since extensions aren't tied to a particular process. I don't know how feasible it would be to read the HMAC key, if I have time I'll experiment a bit with this. (Chrome doesn't use sandbox extensions, safari does.)
 
leak_kmem.c
2.4 KB Download
Project Member Comment 1 by ianbeer@google.com, May 2 2014
Labels: Id-605859230 Reported-2014-May-02
Project Member Comment 2 by ianbeer@google.com, May 2 2014
Summary: OS X IOKit kernel memory disclosure due to lack of bounds checking in AGPMClient::getPstatesOccupancy (was: IOKit kernel memory disclosure due to lack of bounds checking in AGPMClient::getPstatesOccupancy)
Project Member Comment 3 by ianbeer@google.com, May 12 2014
Cc: fjserna@google.com
Project Member Comment 4 by ianbeer@google.com, May 23 2014
Cc: lee...@google.com
Project Member Comment 5 by ianbeer@google.com, Jul 3 2014
Labels: CVE-2014-1372
Status: Fixed
Apple advisory: http://support.apple.com/kb/HT6296
Comment 6 by cevans@google.com, Jul 31 2014
Labels: -Restrict-View-Commit
Sign in to add a comment