| .. | .. |
|---|
| 302 | 302 | Memory poisoning |
|---|
| 303 | 303 | ---------------- |
|---|
| 304 | 304 | |
|---|
| 305 | | -When releasing memory, it is best to poison the contents (clear stack on |
|---|
| 306 | | -syscall return, wipe heap memory on a free), to avoid reuse attacks that |
|---|
| 307 | | -rely on the old contents of memory. This frustrates many uninitialized |
|---|
| 308 | | -variable attacks, stack content exposures, heap content exposures, and |
|---|
| 309 | | -use-after-free attacks. |
|---|
| 305 | +When releasing memory, it is best to poison the contents, to avoid reuse |
|---|
| 306 | +attacks that rely on the old contents of memory. E.g., clear stack on a |
|---|
| 307 | +syscall return (``CONFIG_GCC_PLUGIN_STACKLEAK``), wipe heap memory on a |
|---|
| 308 | +free. This frustrates many uninitialized variable attacks, stack content |
|---|
| 309 | +exposures, heap content exposures, and use-after-free attacks. |
|---|
| 310 | 310 | |
|---|
| 311 | 311 | Destination tracking |
|---|
| 312 | 312 | -------------------- |
|---|