Difference between revisions of "ASLR"

From The iPhone Wiki
Jump to: navigation, search
m (dyld_shared_cache: presumably a formatting typo)
m (fix typo)
Line 11: Line 11:
 
==dyld_shared_cache==
 
==dyld_shared_cache==
 
*The system libraries are now stored in a big cache file, see [http://www.iphonedevwiki.net/index.php/Dyld_shared_cache]
 
*The system libraries are now stored in a big cache file, see [http://www.iphonedevwiki.net/index.php/Dyld_shared_cache]
*This is address randomized at boot time, in many possible places
+
*This address randomized at boot time, in many possible places, higher in the address space than the program
 
*The functions retain a fixed offset to each other.
 
*The functions retain a fixed offset to each other.

Revision as of 22:05, 18 January 2012

Address Space Layout Randomization

First added

  • with iOS 4.3

Program and dyld

  • On program load, the address space offset of the program is randomized between 0x0 and 0x100000
  • It always falls on a 0x1000 page boundary
  • dyld is included in this sliding section

dyld_shared_cache

  • The system libraries are now stored in a big cache file, see [1]
  • This address randomized at boot time, in many possible places, higher in the address space than the program
  • The functions retain a fixed offset to each other.