Vous êtes sur la page 1sur 21

Les outils

d’investigation
-FFUF-

ECOLE
ECOLE IT
IT –– 5SOA
5SOA -- Année
Année Académique
Académique 2023-2024
2023-2024 –– ©
© Tous
Tous droits
droits réservés
réservés
Résumé
• La reconnaissance
• Le fuzzing Web
• Présentation de l’outil FFUF
• Utilisations de FFUF

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


FFUF
La reconnaissance

ECOLE IT – 5SOA- Année Académique 2023-2024 – © Tous droits réservés


Le web fuzzing dans le processus de pentesting

Reco
Scan
Exploit
Post
Exploit

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


La reconnaissance

• Définition: dans le contexte de la cybersécurité, la


reconnaissance est la pratique consistant à découvrir et à recueillir
des informations sur un système, une organisation et des
utilisateurs ;

• Le Web Fuzzing est une technique de reconnaissance active afin


de découvrir des URLs, cachées ou non protégées, d’une webapp
ou de manière générale mettre en évidence un comportement
inattendu à partir d’injections dans une requête HTTP.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


FFUF
Le fuzzing Web

ECOLE IT – 5SOA- Année Académique 2023-2024 – © Tous droits réservés


Le fuzzing Web

• Détecter, à partir d’injections de directories web et de manière automatisée, des


URLs pouvant aider un hacker à identifier des fuites d’information, des interfaces
d’administration, des ressources cachées…;

• Révéler un problème applicatif, un souci de paramétrage d’un PLI (serveur


Apache httpd par exemple), une négligence etc….

• Vérifier si un projet contrôle l’ensemble des ressources web exposées


volontairement ou non aux utilisateurs.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Principaux Web Fuzzer

Dirb Dirbuster Dirsearch Ffuf Gobuster Wfuzz


Langage C Java Python3 Go Gobuster Python3
First release 2005 2007 2014 2018 2015 2014

Maintenance      
GUI/CLI CLI GUI CLI CLI CLI CLI
Format de text xml,csv,txt json,xml,csv,t json,ejsonhtml, text json,csv,html,r
sortie xt,md md,csv,ecsv aw
Multithread      
Proxy      
Auth Basic Basic/Digest/ Basic avec Basic avec Basic Basic/Digest/N
NTLM headers headers TLM
WL fournies      
Multiple WL      
Multiple urls      
Choix
méthode      
Post data
fuzzing      
Header fuzzing      
Method
fuzzing      
Filtre des
réponses     Limité 

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


FFUF
Présentation de l’outil

ECOLE IT – 5SOA- Année Académique 2023-2024 – © Tous droits réservés


FFUF

• Fuzz Faster U Fool (v 1.5.0 au 4 Mai 2022);


• Ecrit en Go (≥1.16) - Open Source - https://github.com/ffuf/ffuf

• Utilisé en reconnaissance active pour forger des requêtes HTTP;


• Il existe une foule de tuto sur Internet;
• N’est pas un crawler à l’instar de hakrawler, gau…;
• Nécessite des wordlists ;

• Présent dans le repo Kali: sponsorisé par Offensive Security ce qui nous
permet d'avoir les nouvelles versions plus rapidement sous Kali -
https://www.kali.org/tools/ffuf/

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


FFUF: principales options intéressantes

• -V: version de l’outil


• -h: aide en ligne
• -b: passage de cookie
• -u: url cible à fuzzer
• -H: passage de header
• -X: verbe HTTP
• -d: data POST d’une requête
• -r: redirection vers l’URL définie dans Location
• -sa, -se, -sf: conditions d’arrêt du fuzzing en cours
• -mc, -ms, -mr,...: conserver les réponses en fonction d’indicateurs
• -fc, -fs, -fr,…: exclure les réponses en fonction d’indicateurs
• -t: nombre de threads
• -p: temps d’attente entre 2 requêtes http

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


FFUF
Utilisations

ECOLE IT – 5SOA- Année Académique 2023-2024 – © Tous droits réservés


Le fuzzing Web « découverte »

$ ffuf -u FUZZ1://FUZZ2:FUZZ3/ \
-X FUZZ4 \
-H "Host: "FUZZ5 \
-w ./httphttps.txt:FUZZ1 \
-w ./ipsrv.txt:FUZZ2 \
-w ./ports.txt:FUZZ3 \
-w ./getpost.txt:FUZZ4 \
-w ./hosts.txt:FUZZ5 \
-v
Exemples de valeurs:
• FUZZ1 = http|https
• FUZZ2 = alias dns|ip
• FUZZ3 = 80|443|8443|8080
• FUZZ4 = GET|POST
• FUZZ5 = |127.0.0.1|dumy

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Nommage des variables

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Le mode intéractif de FFUF

• En appuyant sur ENTER pendant l'exécution de FFUF, le processus est mis en


pause et l'utilisateur passe dans un mode interactif de type shell ;

• Dans ce mode, les filtres peuvent être reconfigurés, les files d'attente gérées et
l'état actuel sauvegardé sur disque.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Sans oublier...

1) Découvrir par brute force les pages et répertoires:


$ ffuf -u https://target.org /FUZZ -w ./wordlist_rep.txt:FUZZ

2) Fuzzer les headers:


$ ffuf -u https://target.org/ -w ./wordlist_ua.txt:FUZZ –H « User-Agent: FUZZ »

3) Filtrer sur la taille des réponses:


• conserver les réponses de 500 octets:
$ ffuf -u https://target.org/FUZZ -w ./wordlist_rep.txt:FUZZ -ms 500
• conserver les réponses entre 0 et 3500 octets:
$ ffuf -u https://target.org /FUZZ -w ./wordlist_rep.txt:FUZZ -ms 0-3500
• exclure les réponses entre 0 et 3500 octets:
$ ffuf -u https://target.org/FUZZ -w ./wordlist_rep.txt:FUZZ -fs 0-3500

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Sans oublier... (suite)

4) Filtrer sur le code retour des réponses


• conserver les réponses 200 et 302:
$ ffuf -u https://target.org/FUZZ -w ./wordlist_rep.txt:FUZZ –mc 200,302
• exclure les réponses 404 et 500:
$ ffuf -u https://target.org/FUZZ -w ./wordlist_rep.txt:FUZZ –fc 404,500

5) Fuzzer les data POST:


$ ffuf -u https://target.org/ -X POST -w ./wordlist_data.txt:FUZZ -d
'{"name": "FUZZ", "anotherkey": "anothervalue"}'

6) Déterminer le mode d’attaque: clusterbomb (défaut) et pitchfork


$ ffuf -u https://target.org/FUZZ -w ./wordlist_rep.txt:FUZZ –mode
pitchfork

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Redirection vers Burp Suite

• FFUF est très rapide…

• Dans la version Burp Suite Community, l’utilisation du web fuzzer Intruder est
bridée en vitesse d’exécution;

• Avec Burp Suite, on peut visualiser le contenu des réponses retournées par
FFUF et basculer sur Intruder ou Repeater en fonction de l’intérêt de la requête.

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Redirection vers Burp Suite: principe

Ajouter l’option: -x

$ ffuf -u FUZZ1://FUZZ2:FUZZ3/ \
-X FUZZ4 \
-H "Host: "FUZZ5 \
-w ./httphttps.txt:FUZZ1 \
-w ./ipsrv.txt:FUZZ2 \
-w ./ports.txt:FUZZ3 \
-w ./getpost.txt:FUZZ4 \
-w ./hosts.txt:FUZZ5 \
-v \
-x http://127.0.0.1:8080

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


A vous de jouer

Mise en pratique : Ffuf

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés


Avenue Alan Turing - 59410 Anzin – France
+33 3 74 01 09 84 - contact@ecole-it.com

www.ecole-it.com

ECOLE IT – 5SOA - Année Académique 2023-2024 – © Tous droits réservés

Vous aimerez peut-être aussi