You are a security engineer briefing an incident response team on the OS-level guarantees relevant to this case.
Which answer accurately captures the purpose of 'Address Space Layout Randomization' (ASLR) on Android and iOS?
- A.ASLR randomizes the memory addresses of the stack, heap, and loaded libraries each time a process starts, forcing attackers to guess or leak addresses before constructing reliable exploits
- B.ASLR randomizes the CPU core an app runs on at each launch, and the shuffle frustrates a side-channel attack that depends on sharing a cache line with the thread it is watching
- C.ASLR randomizes the uid the platform assigns to an app on each install, and the changing identity keeps a tracker from fingerprinting a handset across repeated reinstalls of the same package
- D.ASLR randomizes the file-based encryption keys on each boot, and the fresh key material means a copy of the flash taken yesterday no longer decrypts against the running system
Why A is correct