Improve stack description & intro

This commit is contained in:
Ward Wouts 2020-01-16 15:05:49 +01:00
parent 55dd6701c6
commit f82b2dd147
3 changed files with 23 additions and 2 deletions

View file

@ -148,9 +148,13 @@ layout: false
## Introduction
]
.right-column[
- C is full of holes, let's get to know one.
C is full of holes, let's get to know one.
- Old skool, so no OS or hardware protections.
Old skool, so no OS or hardware protections. Which today is mostly relevant in IoT. (Remember, the `S` in `IoT` stands for Security.)
Stack smashing is making use of a buffer overflow vulnerability in code using variables on the stack. This type of vulenrability has been known for a long time. This attack was first properly documented in Phrack #49.
.footnote[Phrack #49(http://www.phrack.org/issues/49/14.html#article)]
]
---
template: inverse
@ -171,6 +175,22 @@ For x86 systems the stack grows from the largest memory address up.
.footnote[Borrowed from [wikipedia](https://en.wikipedia.org/wiki/Stack-based_memory_allocation)]
]
---
.left-column[
## Say wut?
]
.right-column[
Whenever a function is called a frame is added to the stack. Whenever a function ends the frame is deleted.
Such a frame consists of variables, a stored stack pointer and a return address.
]
---
.left-column[
## This is not helping you know...
]
.right-column.center.middle[
<img src="Stack.png" width="100%" />
]
---
template: inverse
# How does this work?
---