50 likes | 111 Views
Explore the ASLR implementation on Windows and Linux systems, including memory layout examples and binary execution details. Learn the benefits of ASLR in enhancing system security.
E N D
Implementation (32 bit) • Windows Vista • 8 (28 = 256) bits of randomization • Linux 2.6.12 • 16 (216 = 65536) bits of randomization
Process Memory ASLR_DEMO memory layout Buffer 4 bytes EBP 4 bytes Return Address 4 bytes
Process Memory ASLR_DEMO memory layout Buffer AAAA 4 bytes EBP 4 bytes AAAA Return Address \x00\x00\x00\x00 4 bytes
Process Memory ASLR_DEMO memory layout Buffer AAAA 4 bytes EBP 4 bytes AAAA Points to System() System() Address 4 bytes System() Return Address Points to Exit() 4 bytes Binary to execute System() Parameter 4 bytes