mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 13:13:41 +00:00
215 lines
6.6 KiB
Markdown
215 lines
6.6 KiB
Markdown
|
<details>
|
||
|
|
||
|
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
|
||
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
||
|
|
||
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
||
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
||
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
|
||
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
|
||
|
|
||
|
</details>
|
||
|
```
|
||
|
pip3 install pwntools
|
||
|
```
|
||
|
# Pwn asm
|
||
|
|
||
|
Holen Sie Opcodes von einer Zeile oder einer Datei.
|
||
|
```
|
||
|
pwn asm "jmp esp"
|
||
|
pwn asm -i <filepath>
|
||
|
```
|
||
|
**Kann auswählen:**
|
||
|
|
||
|
* Ausgabetyp (roh, hexadezimal, Zeichenkette, ELF)
|
||
|
* Ausgabedatei-Kontext (16, 32, 64, Linux, Windows...)
|
||
|
* Bytes vermeiden (Zeilenumbrüche, Null, eine Liste)
|
||
|
* Encoder für Debugging des Shellcodes auswählen und mit gdb die Ausgabe ausführen
|
||
|
|
||
|
# **Pwn checksec**
|
||
|
|
||
|
Checksec-Skript
|
||
|
```
|
||
|
pwn checksec <executable>
|
||
|
```
|
||
|
# Pwn constgrep
|
||
|
|
||
|
`constgrep` ist ein nützliches Werkzeug, um Konstanten in ausführbaren Dateien zu finden. Es kann verwendet werden, um nach bestimmten Werten in Speicheradressen zu suchen und diese zu extrahieren.
|
||
|
|
||
|
## Verwendung
|
||
|
|
||
|
Die Syntax für die Verwendung von `constgrep` lautet:
|
||
|
|
||
|
```bash
|
||
|
constgrep <pattern> <binary>
|
||
|
```
|
||
|
|
||
|
`<pattern>` ist der Wert, nach dem gesucht werden soll, und `<binary>` ist die ausführbare Datei, in der gesucht werden soll.
|
||
|
|
||
|
## Beispiel
|
||
|
|
||
|
Angenommen, wir haben eine ausführbare Datei namens `program`, in der wir nach der Konstante `0xdeadbeef` suchen möchten. Wir können `constgrep` wie folgt verwenden:
|
||
|
|
||
|
```bash
|
||
|
constgrep 0xdeadbeef program
|
||
|
```
|
||
|
|
||
|
Dies wird alle Vorkommen von `0xdeadbeef` in der Datei `program` finden und anzeigen.
|
||
|
|
||
|
# Pwn cyclic
|
||
|
|
||
|
Erzeugen eines Musters
|
||
|
|
||
|
`cyclic` ist ein nützliches Werkzeug, um Muster zu generieren, die bei der Ausnutzung von Pufferüberläufen und ähnlichen Angriffen hilfreich sein können. Es erzeugt eine sich wiederholende Sequenz von Zeichen, die verwendet werden kann, um die Position von Speicherüberläufen zu ermitteln.
|
||
|
|
||
|
## Verwendung
|
||
|
|
||
|
Die Syntax für die Verwendung von `cyclic` lautet:
|
||
|
|
||
|
```bash
|
||
|
cyclic <length>
|
||
|
```
|
||
|
|
||
|
`<length>` ist die Länge des zu generierenden Musters.
|
||
|
|
||
|
## Beispiel
|
||
|
|
||
|
Angenommen, wir möchten ein Muster mit einer Länge von 100 generieren. Wir können `cyclic` wie folgt verwenden:
|
||
|
|
||
|
```bash
|
||
|
cyclic 100
|
||
|
```
|
||
|
|
||
|
Dies erzeugt ein Muster mit einer Länge von 100 Zeichen, das zur Analyse von Pufferüberläufen verwendet werden kann.
|
||
|
```
|
||
|
pwn cyclic 3000
|
||
|
pwn cyclic -l faad
|
||
|
```
|
||
|
**Kann auswählen:**
|
||
|
|
||
|
* Das verwendete Alphabet (Standardmäßig Kleinbuchstaben)
|
||
|
* Länge des eindeutigen Musters (Standardmäßig 4)
|
||
|
* Kontext (16,32,64,linux,windows...)
|
||
|
* Offset übernehmen (-l)
|
||
|
|
||
|
# Pwn Debug
|
||
|
|
||
|
GDB an einen Prozess anhängen
|
||
|
```
|
||
|
pwn debug --exec /bin/bash
|
||
|
pwn debug --pid 1234
|
||
|
pwn debug --process bash
|
||
|
```
|
||
|
**Kann auswählen:**
|
||
|
|
||
|
* Nach ausführbarer Datei, nach Namen oder nach PID-Kontext (16,32,64,linux,windows...)
|
||
|
* gdbscript zum Ausführen
|
||
|
* sysrootpath
|
||
|
|
||
|
# Pwn disablenx
|
||
|
|
||
|
Deaktiviert NX für eine ausführbare Datei
|
||
|
```
|
||
|
pwn disablenx <filepath>
|
||
|
```
|
||
|
# Pwn disasm
|
||
|
|
||
|
Disassembliere hexadezimale Opcodes
|
||
|
```
|
||
|
pwn disasm ffe4
|
||
|
```
|
||
|
**Kann auswählen:**
|
||
|
|
||
|
* Kontext (16,32,64,linux,windows...)
|
||
|
* Basisadresse
|
||
|
* Farbe (Standard)/keine Farbe
|
||
|
|
||
|
# Pwn elfdiff
|
||
|
|
||
|
Drucke Unterschiede zwischen 2 Dateien
|
||
|
```
|
||
|
pwn elfdiff <file1> <file2>
|
||
|
```
|
||
|
# Pwn hex
|
||
|
|
||
|
Erhalte die hexadezimale Darstellung
|
||
|
```bash
|
||
|
pwn hex hola #Get hex of "hola" ascii
|
||
|
```
|
||
|
# Pwn phd
|
||
|
|
||
|
Holen Sie sich den Hexdump
|
||
|
```
|
||
|
pwn phd <file>
|
||
|
```
|
||
|
**Kann auswählen:**
|
||
|
|
||
|
* Anzahl der anzuzeigenden Bytes
|
||
|
* Anzahl der Bytes pro Zeile, um Byte hervorzuheben
|
||
|
* Bytes am Anfang überspringen
|
||
|
|
||
|
# Pwn pwnstrip
|
||
|
|
||
|
# Pwn scrable
|
||
|
|
||
|
# Pwn shellcraft
|
||
|
|
||
|
Shellcodes erhalten
|
||
|
```
|
||
|
pwn shellcraft -l #List shellcodes
|
||
|
pwn shellcraft -l amd #Shellcode with amd in the name
|
||
|
pwn shellcraft -f hex amd64.linux.sh #Create in C and run
|
||
|
pwn shellcraft -r amd64.linux.sh #Run to test. Get shell
|
||
|
pwn shellcraft .r amd64.linux.bindsh 9095 #Bind SH to port
|
||
|
```
|
||
|
**Kann auswählen:**
|
||
|
|
||
|
* Shellcode und Argumente für den Shellcode
|
||
|
* Ausgabedatei
|
||
|
* Ausgabeformat
|
||
|
* Debuggen (dbg an Shellcode anhängen)
|
||
|
* Vorher (Debuggen-Falle vor dem Code)
|
||
|
* Nachher
|
||
|
* Vermeiden von Opcodes (Standard: nicht null und neue Zeile)
|
||
|
* Shellcode ausführen
|
||
|
* Farbe/keine Farbe
|
||
|
* Liste der Systemaufrufe anzeigen
|
||
|
* Liste möglicher Shellcodes anzeigen
|
||
|
* ELF als gemeinsam genutzte Bibliothek generieren
|
||
|
|
||
|
# Pwn-Vorlage
|
||
|
|
||
|
Holen Sie sich eine Python-Vorlage
|
||
|
```
|
||
|
pwn template
|
||
|
```
|
||
|
**Kann auswählen:** Host, Port, Benutzer, Passwort, Pfad und Quiet
|
||
|
|
||
|
# Pwn unhex
|
||
|
|
||
|
Von Hexadezimal zu String
|
||
|
```
|
||
|
pwn unhex 686f6c61
|
||
|
```
|
||
|
# Pwn-Update
|
||
|
|
||
|
Um pwntools zu aktualisieren, führen Sie den folgenden Befehl aus:
|
||
|
```
|
||
|
pwn update
|
||
|
```
|
||
|
<details>
|
||
|
|
||
|
<summary><strong>Lernen Sie AWS-Hacking von Null auf Held mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
||
|
|
||
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
||
|
|
||
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
||
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
||
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
||
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
|
||
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
|
||
|
|
||
|
</details>
|