D IE H ARDER : ¡ S ECURING ¡ THE ¡H EAP ¡ ¡ Gene ¡Novark ¡& ¡ Emery ¡Berger ¡ University ¡of ¡Massachusetts, ¡ Amherst ¡ [originally ¡presented ¡at ¡CCS ¡2011] ¡ U NIVERSITY ¡OF ¡ M ASSACHUSETTS, ¡ A MHERST ¡ ¡• ¡ ¡Department ¡of ¡Computer ¡Science ¡
DieHard: ¡ProbabilisFc ¡Memory ¡Safety ¡ for ¡C/C++ ¡Programs ¡ [PLDI ¡2005] ¡ Direct ¡inspira4on ¡ for ¡Windows ¡7’s ¡ Fault-‑Tolerant ¡ Heap ¡ (2009) ¡ U NIVERSITY ¡OF ¡ M ASSACHUSETTS, ¡ A MHERST ¡ ¡• ¡ ¡Department ¡of ¡Computer ¡Science ¡
DieHard: ¡ProbabilisFc ¡Memory ¡Safety ¡ for ¡C/C++ ¡Programs ¡ [PLDI ¡2005] ¡ Direct ¡inspira4on ¡ for ¡Windows ¡7’s ¡ Fault-‑Tolerant ¡ Heap ¡ (2009) ¡ U NIVERSITY ¡OF ¡ M ASSACHUSETTS, ¡ A MHERST ¡ ¡• ¡ ¡Department ¡of ¡Computer ¡Science ¡
14 ¡
15 ¡
16 ¡
17 ¡
20 ¡
23 ¡
24 ¡
25 ¡
26 ¡
27 ¡
28 ¡
29 ¡
30 ¡
31 ¡
sensitive ¡ data ¡/ ¡metadata ¡ 32 ¡
sensitive ¡ data ¡/ ¡metadata ¡ All data / metadata sensitive 33 ¡
guard ¡/ ¡unmapped ¡page ¡ 34 ¡
guard ¡/ ¡unmapped ¡page ¡ 35 ¡
36 ¡
37 ¡
38 ¡
Address-‑space ¡layout ¡ randomization ¡ 39 ¡
object free space heap metadata
prev. object object free space object size heap ¡metadata ¡ (GNU ¡libc, ¡others) ¡
x object free space heap metadata
x object free space heap metadata
44 ¡
45 ¡
46 ¡
47 ¡
48 ¡
49 ¡
50 ¡
≈ 4-5 bits of entropy 51 ¡
52 ¡
Maximal entropy: log N bits (e.g., ≈ 25-30) 53 ¡
54 ¡
44.2 sec
44.2 sec 41.6 sec
D IE H ARDER : ¡ S ECURING ¡ THE ¡H EAP ¡ ¡ Gene ¡Novark ¡& ¡ Emery ¡Berger ¡ University ¡of ¡Massachusetts, ¡ Amherst ¡ U NIVERSITY ¡OF ¡ M ASSACHUSETTS, ¡ A MHERST ¡ ¡• ¡ ¡Department ¡of ¡Computer ¡Science ¡
Recommend
More recommend