|
|
< Previous PageNext Page > |
/dev/mem
and /dev/kmem
One particularly painful surprise to people doing security programming in most UNIX or UNIX-like environments is the existence of /dev/mem
and /dev/kmem
. These device files allow the root
user to arbitrarily access the contents of physical memory and kernel memory, respectively. There is absolutely nothing you can do to prevent this. From a kernel perspective, root is omnipresent and omniscient. If this is a security concern for your program, then you should consider whether your program should be used on a system controlled by someone else and take the necessary precautions.
Note: Support for /dev/kmem
is being phased out. It is not available on Intel-based Macintosh computers in Mac OS X v10.4. In the future, it will be removed entirely.
It is not possible to write device drivers that access PCI device memory through /dev/mem
in Mac OS X. If you need to support such a driver, you must write a kernel stub driver that matches against the device and maps its memory space into the address space of the user process. For more information, read about user clients in I/O Kit Fundamentals.
< Previous PageNext Page > |
Last updated: 2006-11-07
|
Get information on Apple products.
Visit the Apple Store online or at retail locations. 1-800-MY-APPLE Copyright © 2007 Apple Inc. All rights reserved. | Terms of use | Privacy Notice |