Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
it-security:blog:buffer_overflow_x64 [2024/02/22 21:42] – zip label psycoreit-security:blog:buffer_overflow_x64 [2024/08/02 11:52] (aktuell) psycore
Zeile 1: Zeile 1:
 {{tag>deutsch linux kali it-security pentest blog}} {{tag>deutsch linux kali it-security pentest blog}}
-====== Buffer Overflow im 64-Bit Stack ====== 
  
-^ Projektdateien | {{ :it-security:nosoc-repo-bof64.zip |}} <label type="info" icon="glyphicon glyphicon-compressed">ZIP</label>+====== Buffer Overflow im 64-Bit Stack Teil 1 ======
-^ 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://www.ired.team/offensive-security/code-injection-process-injection/binary-exploitation/64-bit-stack-based-buffer-overflow)) In diesem Tutorial erzeugen wir einen Buffer Overflow auf dem 64-Bit Stack, um root Rechte zu erlangen.((https://www.ired.team/offensive-security/code-injection-process-injection/binary-exploitation/64-bit-stack-based-buffer-overflow))
  
 Technische Einzelheiten zu Buffer-Overflows, Stack etc. gibt es hier((https://medium.com/@buff3r/basic-buffer-overflow-on-64-bit-architecture-3fb74bab3558)) Technische Einzelheiten zu Buffer-Overflows, Stack etc. gibt es hier((https://medium.com/@buff3r/basic-buffer-overflow-on-64-bit-architecture-3fb74bab3558))
-\\ 
-\\ 
-<mermaid> 
-classDiagram 
-    note for Buffer "Overwrite Buffer" 
-    note for RBP "Overwrite RBP" 
-    note for RIP "place return address" 
-    Buffer --> RBP 
-    RBP --> RIP 
-    RIP --> 0x00007FFFFFFFC19F 
-    Buffer: AAAAAAAAAAAA 
-    RBP: BBBBBBBBBBBB 
-    RIP: 0x00007FFFFFFFC19F 
-    class 0x00007FFFFFFFC19F{ 
-      Shellcode() 
-      root-Shell 
-    } 
-</mermaid> 
 \\ \\
 \\ \\
 ===== Abhängigkeiten ===== ===== Abhängigkeiten =====
 +
 +{{page>vorlagen:64_bit_stack_nav}}
 +
 +{{page>vorlagen:attention}}
 +{{:it-security:blog:bof-64-1.jpg|}}
  
 Was wird benötigt? Was wird benötigt?
Zeile 44: 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 "source ~/peda/peda.py" >> ~/.gdbinit echo "source ~/peda/peda.py" >> ~/.gdbinit
 </code> </code>
Zeile 60: Zeile 43:
 \\ \\
 ==== Programm ==== ==== Programm ====
 +
 +Quellcode und kompilierte Binaries findet Ihr auch auf meinem [[gh>psycore8/nosoc-bof/tree/main/part-1|github repository]]
  
 <code c> <code c>
Zeile 95: Zeile 80:
 Interessant für uns ist das Register ''RIP''. Dieses enthält eine Rücksprungadresse, welche auf einen anderen Bereich im Code zeigt. Durch den Buffer-Overflow überschreiben wir diese Rücksprungadresse. Aber erst müssen wir herausfinden, wie wir dies machen können. Interessant für uns ist das Register ''RIP''. Dieses enthält eine Rücksprungadresse, welche auf einen anderen Bereich im Code zeigt. Durch den Buffer-Overflow überschreiben wir diese Rücksprungadresse. Aber erst müssen wir herausfinden, wie wir dies machen können.
  
-Wir startebn unser Programm im Debugger und generieren einen 200 Zeichen langen String:+Wir starten unser Programm im Debugger und generieren einen 200 Zeichen langen String:
  
 <code bash> <code bash>
Zeile 222: Zeile 207:
 \\ \\
 \\ \\
 +<mermaid>
 +classDiagram
 +    note for Buffer "Overwrite Buffer"
 +    note for RBP "Overwrite RBP"
 +    note for RIP "place return address"
 +    Buffer --> RBP
 +    RBP --> RIP
 +    RIP --> 0x00007FFFFFFFC19F
 +    Buffer: AAAAAAAAAAAA
 +    RBP: BBBBBBBBBBBB
 +    RIP: 0x00007FFFFFFFC19F
 +    class 0x00007FFFFFFFC19F{
 +      Shellcode()
 +      root-Shell
 +    }
 +</mermaid>
 +\\
 +\\
 +===== Repository =====
 +
 +^ Projektdateien | {{ :it-security:nosoc-repo-bof64.zip |}} <label type="info" icon="glyphicon glyphicon-compressed">ZIP</label> |
 +^ Größe | 5,76 KB |
 +^ Prüfsumme (SHA256) | 191e6f1811018970776e3bf035ff460033a47da62335fe5c9475a460b02a10d3 |
 +
 +~~DISCUSSION~~