Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
it-security:blog:buffer_overflow_x64 [2024/02/22 21:57] – law notice psycore | it-security:blog:buffer_overflow_x64 [2024/08/02 11:52] (aktuell) – psycore | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
{{tag> | {{tag> | ||
- | ====== Buffer Overflow im 64-Bit Stack ====== | + | ====== Buffer Overflow im 64-Bit Stack - Teil 1 ====== |
- | + | ||
- | <callout type=" | + | |
- | === Achtung! | + | |
- | + | ||
- | Die Techniken und Methoden in diesem Artikel sind ausschließlich für Lernzwecke. Ein Missbrauch ist strafbar!((https:// | + | |
- | </ | + | |
- | + | ||
- | ^ Projektdateien | {{ : | + | |
- | ^ Größe | 5,76 KB | | + | |
- | ^ Prüfsumme (SHA256) | 191e6f1811018970776e3bf035ff460033a47da62335fe5c9475a460b02a10d3 | | + | |
In diesem Tutorial erzeugen wir einen Buffer Overflow auf dem 64-Bit Stack, um root Rechte zu erlangen.((https:// | In diesem Tutorial erzeugen wir einen Buffer Overflow auf dem 64-Bit Stack, um root Rechte zu erlangen.((https:// | ||
Technische Einzelheiten zu Buffer-Overflows, | Technische Einzelheiten zu Buffer-Overflows, | ||
- | \\ | ||
- | \\ | ||
- | < | ||
- | classDiagram | ||
- | note for Buffer " | ||
- | note for RBP " | ||
- | note for RIP "place return address" | ||
- | Buffer --> RBP | ||
- | RBP --> RIP | ||
- | RIP --> 0x00007FFFFFFFC19F | ||
- | Buffer: AAAAAAAAAAAA | ||
- | RBP: BBBBBBBBBBBB | ||
- | RIP: 0x00007FFFFFFFC19F | ||
- | class 0x00007FFFFFFFC19F{ | ||
- | Shellcode() | ||
- | root-Shell | ||
- | } | ||
- | </ | ||
\\ | \\ | ||
\\ | \\ | ||
===== Abhängigkeiten ===== | ===== Abhängigkeiten ===== | ||
+ | |||
+ | {{page> | ||
+ | |||
+ | {{page> | ||
+ | {{: | ||
Was wird benötigt? | Was wird benötigt? | ||
Zeile 51: | Zeile 28: | ||
<code bash> | <code bash> | ||
- | wget http://ropshell.com/peda/peda.tar.gz | + | git clone https://github.com/longld/peda.git ~/peda |
- | tar zxvf peda.tar.gz | + | |
echo " | echo " | ||
</ | </ | ||
Zeile 67: | Zeile 43: | ||
\\ | \\ | ||
==== Programm ==== | ==== Programm ==== | ||
+ | |||
+ | Quellcode und kompilierte Binaries findet Ihr auch auf meinem [[gh> | ||
<code c> | <code c> | ||
Zeile 102: | Zeile 80: | ||
Interessant für uns ist das Register '' | Interessant für uns ist das Register '' | ||
- | Wir startebn | + | Wir starten |
<code bash> | <code bash> | ||
Zeile 229: | Zeile 207: | ||
\\ | \\ | ||
\\ | \\ | ||
+ | < | ||
+ | classDiagram | ||
+ | note for Buffer " | ||
+ | note for RBP " | ||
+ | note for RIP "place return address" | ||
+ | Buffer --> RBP | ||
+ | RBP --> RIP | ||
+ | RIP --> 0x00007FFFFFFFC19F | ||
+ | Buffer: AAAAAAAAAAAA | ||
+ | RBP: BBBBBBBBBBBB | ||
+ | RIP: 0x00007FFFFFFFC19F | ||
+ | class 0x00007FFFFFFFC19F{ | ||
+ | Shellcode() | ||
+ | root-Shell | ||
+ | } | ||
+ | </ | ||
+ | \\ | ||
+ | \\ | ||
+ | ===== Repository ===== | ||
+ | |||
+ | ^ Projektdateien | {{ : | ||
+ | ^ Größe | 5,76 KB | | ||
+ | ^ Prüfsumme (SHA256) | 191e6f1811018970776e3bf035ff460033a47da62335fe5c9475a460b02a10d3 | | ||
+ | |||
+ | ~~DISCUSSION~~ |