Skip to content

Commit 5519232

Browse files
committed
initial population
0 parents  commit 5519232

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

97 files changed

+9413
-0
lines changed

LICENSE

Lines changed: 438 additions & 0 deletions
Large diffs are not rendered by default.

Makefile

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
IMAGES = $(wildcard images/*.png)
2+
3+
all: bo_training.html
4+
5+
# for the suse theme I'm currently using a custom theme
6+
# custom themes need to reside in the home directory an we can't pass an
7+
# alternative location to asciidoc it seems
8+
# therefore we "make" the theme via symlinks
9+
$(HOME)/.asciidoc/themes/suse/suse.css: ./themes/suse/suse.css ./themes/install.sh
10+
./themes/install.sh
11+
12+
theme: $(HOME)/.asciidoc/themes/suse/suse.css
13+
14+
# slidy backend is part of the standard asciidoc
15+
bo_training.html: bo_training.adoc $(IMAGES) $(HOME)/.asciidoc/themes/suse/suse.css
16+
/usr/bin/asciidoc --backend slidy -a theme=suse bo_training.adoc
17+
18+
clean:
19+
rm bo_training.html
20+
21+
show: bo_training.html
22+
xdg-open bo_training.html

README.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
Training Material "Anatomy of Buffer Overflows and Low Level Security"
2+
======================================================================
3+
4+
Overview
5+
--------
6+
7+
This repository contains presentation slides and training examples for
8+
learning about exploitation of stack buffer overflows on Linux systems. The
9+
target audience is beginners with existing basic knowledge about C programming
10+
and Linux. The training covers the following topics:
11+
12+
- Using `gdb` for debugging, inspecting buffer overflows during runtime and
13+
interacting with the program also on assembler level.
14+
- A basic introduction to assembler programming on `i386` / `x86_64`
15+
processors.
16+
- Explanation of a computer's address space, the function and management of
17+
stack and heap memory, how function calls are setup, how system calls are
18+
setup and related topics.
19+
- Typical techniques to exploit a stack buffer overflow with the aim of
20+
arbitrary code execution. Various examples of growing complexity help to get
21+
in touch with the topic step by step.
22+
- Modern protection measures to prevent stack buffer exploits are discussed.
23+
24+
The examples are all tailored towards running them on current openSUSE Linux
25+
distributions.
26+
27+
The material is used for a 3 to 4 day training for trainees in computer
28+
science. Due to the advanced nature of the topics also more experienced
29+
engineers that aren't familiar with low level programming and buffer overflows
30+
can profit at least from parts of the training.
31+
32+
How to Build
33+
------------
34+
35+
This presentation is based on `asciidoc`. Installing it should be enough to
36+
successfully run `make`. The result will be a single HTML file containing also
37+
embedded images. The presentation can be opened in a regular web browser.
38+
39+
Licensing
40+
---------
41+
42+
The content of this repository (the presentation slides, PNG images and their
43+
SVG sources as well as all example code and its documentation) are available
44+
under the Creative Commons license BY-NC-SA 4.0. See the `LICENSE` file in the
45+
repository or [online][1].
46+
47+
[1]: https://creativecommons.org/licenses/by-nc-sa/4.0
48+
49+
This basically means you can use it, share it, adapt it for non-commercial
50+
uses if you mention the original author and source and grant the same rights
51+
defined in the license to others.

0 commit comments

Comments
 (0)