ASLR

From The iPhone Wiki
Revision as of 22:05, 18 January 2012 by Geohot (talk | contribs) (fix typo)
Jump to: navigation, search

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.